发布网友 发布时间:2022-04-20 14:57
共4个回答
热心网友 时间:2023-07-08 19:46
在很多区块链商业应用的案例中,我们总能看到BaaS这个字眼,BaaS是Blockchain as a Service的缩写,中文译为“区块链即服务”。那么区块链即服务BaaS究竟是什么?我们就带着这个疑问跟随着人人链区块链技术团队的小王来仔细的探讨下。热心网友 时间:2023-07-08 19:46
一、确定目标和范围
首先我们要知道达成的目标,根据目标划定工作范围。考虑到我们无法搭建一个类似比特币的庞大 P2P 网络,也没有太多精力实现一个真正意义上的完整功能的全节点钱包,而且完整的全节点过于复杂,会让学习者迷失在细节中。所以我们的目标是:构建一个包含仅有基础功能的全节点客户端,它可能没有太炫酷的 UI 页面,也没有复杂的命令,它们可以提供下面的功能。
提供 P2P 节点发现和同步区块的功能;
提供创建公私钥对的功能;
提供发送交易的功能;
提供交易查询的功能;
提供余额查询的功能;
提供挖矿的功能,在任意地址上都可以发起单机挖矿;
提供基础日志,方便跟踪监视。
以上 7 个功能基本涵盖了一个区块链全节点的主要功能,但是,由于我的时间有限,代码不能全部实现,主要是讲解设计和实现思路。后续我会逐渐完善代码,你也可以一起参与。
二、技术选型
我们在深入区块链技术专题中说到过,区块链的四个核心技术概念:P2P 网络、账户模型与存储、共识、加密模块。
首先,P2P 网络模块是区块链的最底层模块之一,我们主要考虑方便实现和测试,可选的方案有轻量级消息队列和 WebSocket。考虑到集成的便利性,我们首选 WebSocket,因为至少需要一个 HTTP JSON-RPC Server,我们可以复用 Server 中的 Websocket 服务。
除了通讯协议之外,还要考虑数据交换格式,我们考虑采用易读通用的 JSON 格式,而不是像比特币一样的数据序列化格式,后期更改可以考虑升级到 Protobuf,后者优势主要体现在性能上。而在我们的例子中,性能永远不是首先考虑的,更多是它的易读和易调试性。
其次,我们来说说账户加密部分,由于 ECDSA 非对称加密模块过于复杂,我们选用 OpenSSL 库中的 RSA 算法作为加密模块。而交易模型上,我们考虑使用 UTXO 模型,因为状态模型需要维护状态,可能会带来额外的代码复杂度。
最后说说数据库存储,这个模块需要考虑到易用性和易读性,我们选用 SQLite 3 作为持久化存储。这是考虑到 PoW 实现起来十分简单,而且交易和区块的哈希计算会涉及 SHA-256,使用 PoW 算法我们就可以复用 SHA-256 的代码,使用 SHA-256 算法作为挖矿算法会降低我们的工作量。
三、区块数据结构设计
有了大致的顶层设计已经分类好,那么接下来我们考虑为每个模块填充一些数据结构。一个区块链最重要的是区块,所以我们从区块开始。一个区块包含两部分,分别是区块头和区块体,区块头是一个区块的元数据,区块体就是包含交易的列表,所以我们直接设计交易体。
四、区块头的设计
我们参照比特币的设计,区块头包含了前向区块哈希、默克尔根哈希、时间戳、难度目标、Nonce 值和版本号。
热心网友 时间:2023-07-08 19:47
添加wz1996117-热心网友 时间:2023-07-08 19:47
如何要打造区块链平台?
区块链给数字化经济时代的到来带来了巨变的曙光,区块链目前应用在银行、证券业、保险业的份额最高,未来区块链在技术指导下的娱乐、媒体行业的发展速度将持续加快,供应链行业中的应用将紧随其后,带来全新的供应链行业的跨越式发展。
利用区块链技术构建供应链信息技术平台,主要以区块链为底层技术,链接供应链联盟、金融机构及*监管部门,构建高度集成的自治化供应链信息平台,促使供应链各环节的商流、物流、资金流、信息流四流合一,保证供应链各环节的信息高效自主流转,提高供应链各环节信息的透明度,在不确定的环境中建立供应链互信共赢生态系统。
区块链类型选择
供应链信息系统是为供应链上的各参与主体提供服务的,因此需要根据供应链的结构特点选择合适的区块链。区块链的类型可分为公有链、私有链两种,私有链有能够进一步细分为全封闭私有链(也称为纯私有链)和半公开私有链(也称为联盟链)。
公有链是一个开放的系统,任何人都能自由地成为区块链上的一个节点,并平等地享有获取链上的全部信息、在链上进行交易、参与共识、参与记账、进行系统维护等权利。私有链具有一定的封闭性,通常需要依赖线下的实体组织,节点需要经过组织认可、系统认证才能加入该区块链。联盟链中的节点并不完全平等,只有按照规则筛选过的部分节点才能够获得验证新区块及记账的权利,参与链上的共识机制。因此,联盟链相对于公有链控制权更容易设定,扩展性也比较好。纯私有链又被称为内部链。在纯私有链中,网络通常围绕着一个中心组织建立,该区块链上的共识、验证、记账等权利被严格控制,只有特定的内部主体能够进行交易,其余节点通常只具备部分读取的权利。纯私有链具有容易部署,便于控制的特点。
然而,公有链交易速度过慢、节点加入门槛过低,纯私有链过于封闭,节点不具备平等性,相较而言联盟链的适用范围广泛,在保证交易速度的情况下能够实现网络的部分去中心化,保证数据的不可更改性。基于供应链组织的结构特点,供应链信息系统应该选择采用区块链技术的联盟链形式构建信息平台。
各类区块链特点
构建三位一体供应链信息平台概念模型
基于区块链技术的三位一体供应链信息平台概念模型如图所示。其中三位代表供应链联盟、金融机构及*监管机构,一体代表该信息平台具有集成化的特性能够将这三类组织连接在一起,平台上任意两个节点之间能够直接实现点对点信息交互以实现信息共享、协同共治,同时能够通过智能合约实现供应链上的产品供应智能化、金融服务智能化及*监管智能化,在不确定的外部环境下构建一个互信共赢的供应链生态体系。
三位一体供应链信息平台概念模型
供应链信息平台参与主体
(1)供应链联盟:供应链联盟通常包含供应商、制造商、分销商、零售商及回收商,是该信息平台的主要发起者,也是该平台的主要服务对象。联盟成员可以通过区块链信息平台与供应链上下游企业直接交易,交易信息记录打包为区块记录在平台中,并以分布式的方式进行存储。系统中的每位成员根据信息共享约定随时查看供应链中相应的数据,为供应链管理决策提供真实可靠的数据支持和依据。在产品流通层面,每个产品对应唯一的电子ID,从原材料获取到成品输出,包括产品分销、零售到回收等供应链环节的产品信息都能通过该产品的电子ID存储在该供应链信息平台上,成员和终端消费者能够根据约定的权限,查阅该产品的在供应链上的流转信息,从而保证了产品的可溯源性。在资金流通层面,嵌入到平台中的智能合约能够实现交易资金自动转账,赔付合约自动执行,能够显著提高支付效率,简化清算流程。区块链数字签名和非对称加密技术保证了供应链信息的可靠性,分布式存储的方式保证了信息无法被篡改,增强了供应链上的信息透明度,提高了供应链的整体信任度和竞争力。于此同时,区块链技术以加密算法为基础保证了运作流程的标准化,能够打破地域*,有效消除不同国家及组织在文化、货币上的隔阂,减少各节点之间不必要的摩擦,有效促进*家跨文化间信用体系的建立。
基于区块链技术的点对点信息交互
金融机构:在产品的生产和消费过程中,供应链上的企业和消费者会产生许多依附于供应链的金融需求,例如供应链上企业通常都有融资贷款、股票发行、众筹、保险、会计审计等需求,而消费者也会有购买和产品有关的保险、参与众筹及购买供应链上企业股票等需求。传统的金融机构在为供应链上的企业和消费者提供金融服务时,由于缺乏可靠的供应链交易信息,需要耗费大量的人力物力去实地调研,获取的信息也未必能够如实反映客户信用。为了控制风险,金融机构对供应链上真正需要资金支持的弱势企业往往视而不见,不仅给金融机构带来了相当大的损失,同时也阻碍了供应链上中小企业的发展。区块链信息平台能够真实完备地记录供应链上商流、物流、资金流的信息,有效解决金融机构与供应链企业信息不对称的问题,为金融企业的征信带来极大的便利。区块链技术在促进各类供应链金融服务的顺利开展的同时,也有助于形成创新型供应链金融业务。
(3)*监管:在当前的监管机制下,监管组织无法实时观测监管对象的情况,只能在特定的时间点或者供应链上某一环节出现问题之后,再组织人力进行调查,监管成本高、操作效率低、信息质量差等问题层出不穷。如果将工商管理局、税务管理局、交通管理局等*监管机构接入该信息平台,并向监管部门开放特定信息查阅权限,监管部门就能够通过智能合约技术,把监管条例直接写入区块链代码,动态地监管供应链上商流、物流、资金流的各个环节,将传统的*单一监管转变为供应链参与主体以及消费者的共同监管。如此,不仅能够提高法律的约束力,做到防范于未然,即使在供应链发生问题时,监管机构也能通过信息追溯,迅速查找到问题的源头,取证便捷,问责可靠。
(4)区块链维护企业:供应链信息平台的搭建虽由供应链联盟牵头,仍需要如Google、IBM等专业技术公司作为区块链维护企业提供技术支持、物理设施、系统建设和日常维护,而供应链联盟需要定期向维护企业缴纳相应的维护费用。区块链维护企业作为区块链信息系统的服务方,没有访问信息的权限,相应的也就没有打开信息的密钥,只能查看系统基本配置数据和处理加密之后供应链数据,大大降低了其泄露供应链相关信息的风险。
当区块链邂逅供应链,利用区块链技术打造出的供应链信息平台将使供应链变得更加透明,更加容易实现大规模的数据协同,信息化协同。有利于实现供应链的可追溯性和安全性,促进当前和未来经济的安全、可靠性,在数字化经济时代的到来快速的占据有利发展的机遇,将引领整个时代经济的发展。