




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1DB31/TXXXX—XXXX区块链底层平台通用技术要求a)本标准提供了区块链底层平台通用技术要求,包括如下内容:1)区块链底层平台功能要求;2)区块链底层平台性能要求;3)区块链底层平台安全要求;4)区块链底层平台可靠性要求;5)区块链底层平台可扩展性要求;6)区块链底层平台互操作性要求。b)本标准适用于:1)为区块链底层技术企业的技术研发要求提供有效的参考和借鉴;2)为计划选择和使用区块链底层平台的组织和机构提供选型和评价参考;3)为区块链服务评估方的评估评测提供有效的参考和借鉴。2规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。IEEE2418.2-2020StandardforDataFormatforBlockchainSystemsGB/T11457-2006信息技术软件工程GB/T25069-2010信息安全技术术语GB/T5271.18-2008信息技术分布式数据处理CBD-Forum-001-2017区块链参考架构CBD-Forum-002-2019区块链跨链实施指南3术语、定义及缩略语3.1术语及定义GB/T5271.18-2008界定的以及下列术语和定义适用于本文件。3.1.1区块链blockchain一种在对等网络环境下,通过透明和可信规则,构建不可伪造、不可篡改和可追溯的块链式数据结构,实现和管理事务处理的模式。3.1.2对等网络peer-to-peernetwork一种仅包含对控制和操作能力等效的节点的计算机网络。[来源:GB/T5271.18-2008,定义2.18.04.05]2DB31/TXXXX—XXXX3.1.3共识算法consensusalgorithm区块链系统中各节点间为达成一致采用的计算方法。3.1.4加密encipherment/encryption对数据进行密码变换以产生密文的过程。一般包含一个变换集合,该变换使用一套算法和一套输入参量。输入参量通常被称为密钥。[来源:GB/T25069-2010,定义2.2.2.60]3.1.5数字签名DigitalSignature附加在数据单元上的数据,或是对数据单元所作的密码交换,这种数据或变换允许数据单元的接受者用以确认数据单元的来源和完整性,并保护数据防止被人(例如接受者)伪造或者抵赖。[来源:GB/T25069-2010,定义2.2.2.176]3.1.6摘要算法DigestAlgorithm又称摘要函数(或称Hash函数通常通过将任意长度的消息输入变成固定长度的短消息输出来保障数据的完整性。[来源:GB/T11457-2006,定义2.1334]3.1.7智能合约SmartContract以数字形式定义的能够自动执行条款的合约。[来源:T/CESA6001-2016,定义2.2.7]3.1.8互操作interoperability两个或多个系统或组件交换信息并相互使用已交换的信息的能力。[来源:GB/T11457-2006,定义2.807]3.1.9节点node提供分布式账本的所有功能或者部分功能的实体。3.1.10CA证书CA-certificate由一个CA颁发给另一个CA的证书。[来源:GB/T25069-2010,定义2.2.2.219]3.1.11跨链技术Cross-blockchainTechnology实现多个区块链或分布式账本之间信息交换的技术。[来源:CBD-Forum-002-2019,定义3.4]3.1.12分布式账本DistributedLedger可以在多个站点、不同地理位置或者多个机构组成的网络里实现共同治理及分享的资产数据库。[来源:CBD-Forum-002-2019,定义3.2]3.1.13区块链底层平台BlockchainUnderlyingPlatform3DB31/TXXXX—XXXX使用区块链技术提供一种或多种基础能力的软件服务平台。3.2缩略语下列缩略语适用于本文件。CA:认证机构(CertificateAuthority)SDK:软件开发工具包(SoftwareDevelopmentKit)TPS:每秒处理事务数(TransactionperSecond)P2P:对等网络(PeertoPeer)SM2:国密算法SM2(SM2CryptographicAlgorithm)SM3:国密算法SM3(SM3CryptographicAlgorithm)SM4:国密算法SM4(SM4CryptographicAlgorithm)DLT:分布式账本技术(DistributedLedgerTechnology)4总则本标准提供了一个通用要求,从功能、性能、安全等角度出发,遵循区块链技术理念和应用原则,提出了区块链功能要求、性能要求、安全要求、可靠性要求、可扩展性要求以及互操作性要求。本标准主要面向的角色是区块链服务开发方和区块链平台评估方,用以区块链技术企业研发对标以及评估机构对区块链技术企业的审核评估,为企业区块链底层技术的研发和评估提供有效参考和借鉴。图1区块链底层平台通用技术要求架构从顶层设计来看,区块链技术是一个开放式、扁平化、平等式的系统结构,不依赖第三方存在,也无须中心管制,即可实现信息的自证、传递和管理,是一种新型技术信任机制。从数据传输和安全加密4DB31/TXXXX—XXXX的角度来看,区块链的分布式数据存储、点对点传输、共识机制、加密算法等技术特点,可用于达成价值交换目的,构建一个创新型的价值交换体系。本标准依照图1,分模块提出以下区块链底层平台通用技术要求:——功能要求:基础层、核心层以及服务层各层模块的功能要求;——性能要求:交易确认时间、吞吐率、延迟性、容错性、资源利用率等性能要求;——安全要求:智能合约、数据、算法、隐私保护等安全要求;——可靠性要求:节点、事务执行、加密技术和智能合约的可靠性要求;——可扩展性要求:为保障安全运行所应支持的可扩展性要求;——互操作要求:可支持区块链底层平台跨链访问的互操作要求。5区块链底层平台功能要求5.1基础层功能5.1.1存储存储为区块链平台运行过程中产生的各种类型数据提供写入及查询功能,每个参与节点存储全量或部分区块链数据。存储选型包括但不限于关系型数据库、键值对数据库、文件数据库等。存储通常应具备以下功能:a)对等网络中,能够被每个节点部署并使用;b)能够高效、安全、稳定地提供数据写入及查询服务。c)节点CA证书及其私钥应私密管理。d)数据区块一般包含区块头(Header)和区块体(Body)两部分,区块头应当包含交易的Merkle树根信息及状态数据的Merkle树根信息,区块体中包含交易信息;e)区块链账本结构应具备防篡改及校验完整性的功能;5.1.2网络区块链平台运行的底层拓扑结构是分布式对等网络,采用对等网络协议组织区块链中的各个参与节点,各个参与节点间使用点对点通信协议完成信息交换以支撑上层功能。对等网络应具备以下功能:a)能够进行点对点之间的高效安全通信;b)能够提供点对点通信基础上的多播能力;c)应支持对节点的动态添加、减少的识别。d)按照节点存储数据的不同,可以分为全节点和轻量级节点。5.1.3计算计算功能为区块链系统运行提供计算能力支持,包括但不限于容器技术、虚拟机技术、云计算技术等,一般应满足以下要求:a)对区块链系统提供运行环境支持;b)对等网络中,能够被每个节点采用。5.2核心层功能5.2.1共识机制5DB31/TXXXX—XXXX共识机制是指在区块链系统中各参与共识节点对系统中进行事物的验证、存储、修改等行为达成一致确认的方法。针对不同的业务需求及网络组织形式,选择不同的共识算法来实现共识机制。共识机制应具备以下功能:a)支持多个节点参与共识和确认;b)支持独立节点对区块链网络提交的相关信息进行有效性验证;c)防止任何独立的共识节点未经其它共识节点确认而在区块链系统中进行信息记录或修改;d)应具备一定的容错性。区块链系统宜提供不同的共识算法供不同的业务需求及网络组织形式来实现共识机制。5.2.2加密加密功能是区块链底层安全机制的核心,一般包括加密和解密两个操作。根据加密密钥和解密密钥是否相同,加密算法分为对称加密和非对称加密。加密功能宜满足以下要求:a)支持我国商密算法,如SM4、SM7等对称加密算法和SM2、SM9等非对称加密算法;b)可选用国际主流加密算法,如AES256等对称加密算法和RSA、ECC等非对称加密算法;c)应具备明确的密钥管理方案,确保区块链底层安全机制正常运行;d)应具备抵御破解的能力,宜定期审核加密算法的安全性。5.2.3摘要摘要是指将任意长度的消息输入变成固定长度的短消息输出。摘要功能主要用在对数据的完整性提供保护,对于给定的数据明文和摘要,摘要功能可以验证该数据明文是否被篡改。摘要功能宜满足以下要求:a)支持我国商密算法,如SM3;b)可选用国际主流摘要算法,如SHA256等;c)摘要算法应具备抵御破解的能力,宜定期审核摘要算法的安全性。5.2.4数字签名数字签名用于被接受者确认数据单元的完整性以及不可伪造性,即确定消息确实是由签发方签署的。数字签名技术是非对称加密技术与数字摘要技术的结合,一般包括数字签名和签名验签两个具体操作。数字签名功能宜满足以下要求:a)支持我国商密的数字签名算法,如SM2等;b)可选用国际主流的数字签名算法,如RSA、ECC等;c)数字签名算法应具备抵御破解的能力,宜定期审核数字签名算法中使用的非对称加密算法和摘要算法的安全性。5.2.5智能合约智能合约是指以数字形式定义的能够自动执行条款的合约。区块链通过可编程的智能合约,自动执行多方间合约条款。智能合约由用户签名或其他的事件触发执行。合约管理功能应包括但不限于:a)智能合约上传:开发者线下将应用系统的业务逻辑编写成智能合约,编译成功后上传;b)智能合约验证:对合约进行静态验证等,验证通过进行后续操作;c)智能合约装载:部署智能合约,获得合约的区块链地址和合约的接口调用方式,包括变量事件和可以调用的方法等;6DB31/TXXXX—XXXXd)智能合约浏览:查询智能合约列表、当前的版本以及当前状态、区块链地址等;e)智能合约卸载:卸载不再使用的智能合约,如智能合约的版本升级等场景;f)智能合约升级:对于生产环境上的智能合约,需支持合约升级和回滚。5.2.6事件订阅事件订阅服务提供了近实时的消息通知机制,支持上层应用系统根据业务需求进行订阅,提供合约事件的异步推送机制。a)支持智能合约正常执行返回结果及异常事件订阅;b)事件分发应满足有效性、可靠性和完整性的要求。5.2.7身份验证区块链作为一个去中心化系统,很多功能必须进过身份验证才能使用。身份验证应具备以下几点要a)身份验证应当能很好地被识别,不能轻易被伪造。一般常用“拥有私钥”表示该身份;c)身份验证应当限制次数,防止暴露破解。5.3服务层功能5.3.1接入管理接入管理为外部业务系统及使用者提供核心层接入服务。接入管理功能应满足以下要求:a)提供区块链账户信息查询服务;b)提供区块链账本信息查询服务;c)提供区块链事务操作处理服务;d)提供区块链访问权限管理服务。5.3.2节点管理节点管理支持对区块链节点的部署、信息查询和管理控制,区块链节点通常至少包括共识节点和接入节点两种。共识节点参与区块链网络的共识过程,用于区块的生成。接入节点用于外部应用系统同步账本信息和提交事务处理。节点管理应满足以下要求:a)节点部署:公有链支持任意节点部署加入,联盟链及私有链具有节点部署准入机制;b)节点服务器信息查询:提供区块链节点服务器的节点状态信息查询服务;c)节点服务启动关闭控制:提供区块链节点服务器的启动与关闭服务;d)节点服务配置:提供区块链节点服务器的节点服务能力配置;e)节点网络状态监控:提供区块链节点服务器网络连接状态监控服务;f)节点授权管理:提供区块链节点准入准出配置和节点事务处理及账本查询授权配置。g)节点数据同步:提供区块链节点数据同步服务。5.3.3账本应用账本应用用于实现基于区块链账本记录,一般应满足以下要求:a)链上内容发行和交换;b)共识前的逻辑验证和共识后的结果验算;c)可对特定事务处理进行多签名权限控制设置;7DB31/TXXXX—XXXXd)可基于智能合约功能组件执行合约逻辑;e)“账本应用”应考虑提供隐私保护策略或方案的设计。5.3.4运维监管运维监管支持平台管理员对区块链底层平台运行状况进行运维和监控管理,一般应满足以下要求:a)提供或支持区块链部署、管理、监控和监管的功能;b)提供包含多种节点生成、扩容、组织结构划分、权限管理、证书相关操作的功能;c)支持根据业务需求定义监控采集项;d)可具备监管部门对区块链节点信息、用户身份及交易信息进行审查和披露的功能;e)具备紧急事件主动告警能力;f)可提供数据全览展示。6区块链底层平台性能要求6.1交易确认时间交易确认时间是指从用户发起一笔事务操作,到该事务经过节点共识并记录到区块链上的时间。交易确认时间与节点规模、区块链底层平台采用的共识算法等有关联。6.2吞吐率吞吐率是指单位时间区块链网络内能够完成交易的最高个数,吞吐率与区块链底层平台采用的共识算法、节点规模、加密算法等密切相关。吞吐量衡量可采用以下方式:a)针对单链的性能,使用较高配置机制和万兆网络进行吞吐率测试,取最高峰值;b)可模拟设置负责广域网的网络抖动情况进行吞吐率的衡量;6.3延迟性延迟性是指每个事物处理的反应时长。延迟性评测过程中通常采用最小值、最大值、平均值、百分比进行记录和衡量。区块链底层平台应保持低响应延迟,满足应用系统对于数据同步的时间要求。6.4容错性容错性是指在节点故障期间,吞吐率和延迟的变化。可通过模拟系统崩溃、网络延迟和随机的信息损毁来进行评测。满足系统容错性要求,包括但不仅限于:a)应具备节点存储可恢复、最大时失效和作恶节点容忍度等容错性要求;b)系统中恶意节点占比不超过共识协议的容错率时,系统应保持正常运作,且保持数据一致性;c)宜支持多节点投票回滚功能等。6.5资源利用率资源利用率是指在区块链系统运行中资源利用情况。包括CPU利用率、内存利用率以及带宽利用率。提高资源利用率应满足以下要求:a)在交易类应用中,CPU利用率应随着吞吐量的增加而增加;b)非必要区块数据可选择不进行存储;8DB31/TXXXX—XXXX7区块链底层平台安全要求7.1智能合约安全智能合约安全是指智能合约代码漏洞以及执行过程中的安全,应针对安全性开展智能合约审计,主要包括合约逻辑安全、合约代码安全性、智能合约虚拟机安全。7.1.1合约逻辑安全合约逻辑安全是指智能合约的业务流程和操作逻辑符合合约构建规范,即满足以下要求:a)对所有公共成员变量与函数的引用对象,进行对外暴露的风险分析;b)对所有条件选择语句和交易步骤进行完备性检查,满足条件动作描述的完备要求;c)避免已知的逻辑漏洞和低级的逻辑错误;d)宜利用包括但不限于规则验证、静态分析、模糊测试技术、形式化验证等技术在它的需求分析、设计、实现、测试、使用过程中进行安全审计,以保证业务逻辑安全,并保留审计记录。7.1.2合约代码安全针对合约代码漏洞,采用形式化验证等方式进行合约代码安全性分析,应在合约部署上线前尽可能消除漏洞,降低安全风险。智能合约代码安全性要求包括但不限于以下内容:a)合约代码应满足具有防止整数溢出的安全要求;b)合约代码应设置访问权限,避免出现越权访问,导致越权操作风险;c)合约代码应具备信息隐私保护功能,防止信息泄露;d)合约代码应避免逻辑错误出现,避免出现恶意转账等风险;e)合约代码应避免死循环,避免出现无限循环、递归栈耗尽等风险的安全要求;f)宜利用包括但不限于规则验证、静态分析、模糊测试技术、形式化验证等技术在它的需求分析、设计、实现、测试、使用过程中进行安全审计,以保证智能合约源代码安全,二进制代码安全等,并保留审计记录。7.1.3智能合约虚拟机安全区块链虚拟机是智能合约的运行环境,应为智能合约的顺利执行提供保障。智能合约虚拟化安全应满足但不限于以下内容:a)应实现虚拟机之间的CPU、内存和存储空间安全隔离,能检测到非授权管理虚拟机等情况并进行告警;b)应禁止虚拟机对宿主机物理资源的直接访问,应对异常访问进行告警;c)应监控虚拟机的运行状态,并提供接口供安全管理中心集中监管。7.1.3.1安全等级保护要求智能合约虚拟机安全分为四级安全保护要求,其分级安全保护要求包括以下内容:a)智能合约虚拟机第一级安全保护要求:智能合约用户账号保护:支持用户身份账号验证体系,实现主体对虚拟机的访问授权。智能合约恶意代码防范:虚拟机应安装经过安全加固的操作系统或进行主机恶意代码防范。智能合约镜像和快照安全:应支持镜像和快照提供对虚拟机镜像和快照文件的完整性保护;防止虚拟机镜像、快照中可能存在的敏感资源被非授权访问。9DB31/TXXXX—XXXXb)智能合约虚拟机第二级安全保护要求:智能合约入侵访问:应能检测到虚拟机对宿主物理资源的异常访问。智能合约虚拟化安全:应实现虚拟机之间的CPU、内存和存储空间安全隔离;应禁止虚拟机对宿主机物理资源的直接访问。c)智能合约虚拟机第三级安全保护要求:智能合约入侵访问:应能检测到虚拟机对宿主物理资源的异常访问,并对恶意攻击或恶意对外连接进行检测和告警。智能合约虚拟化安全:应实现虚拟机之间的CPU、内存和存储空间安全隔离,能检测到非授权管理虚拟机等情况并进行告警;应禁止虚拟机对宿主机物理资源的直接访问。d)智能合约虚拟机第四级安全保护要求:智能合约入侵访问:应能检测到虚拟机对宿主物理资源的异常访问,并对恶意攻击或恶意对外连接进行检测和告警。7.2数据安全7.2.1数据存储安全数据存储是指将区块链数据保存在节点中的过程,包括但不限于打包生成区块、广播区块至其他节点、获取密钥解密隐私数据等。数据存储安全应符合以下要求:a)采集隐私数据前应授权同意,并明确告知解密的隐私数据类型及用途;b)敏感数据以加密方式进行存储,并严格进行权限管理;c)数据存储应保证账本数据的冗余性,防止因单个节点失效而造成总账本数据的丢失;d)数据存储服务应保证存储空间可扩展,防止耗尽存储空间攻击,满足高可用性;e)数据存储服务应对账本数据、世界状态数据、以及其它重要的链外数据进行定期备份。7.2.2数据访问安全数据应用是指对解密后的隐私数据进行使用、修改、更新以及处置等操作的过程。数据应用安全应符合以下要求:a)默认采用密文展示隐私数据,除该客户端或应用系统已获取隐私数据的授权;b)使用隐私数据时,明确记录使用者、使用数据内容以及使用频率等信息;c)访问隐私数据时,明确记录访问者、访问数据内容以及访问时间等信息;d)针对账本数据和世界状态数据的查询和操作应采用认证授权等访问控制技术进行限制,确保数据不被未授权的第三方获取或破坏;e)应制定权限管理机制,不同的用户只能访问、操作应用层不同的资源。7.2.3数据一致性数据一致性是保障整个账本数据的一致性,以及链上与链下数据互相对应,是实现区块链服务互操作和可移植的前提。数据一致性宜满足以下要求:a)采用数据同步、数据安全算法等,包括共识机制、加密、数字签名等,降低数据同步延迟;b)采用防篡改机制,保障链上与链下数据的互为对应;c)对账本数据的写入和修改,须经各节点通过共识协议达成一致。7.3算法安全算法安全主要是指区块链密码算法安全、共识算法安全。区块链的签名与加密方式以及共识算法是信息完整性、真实性以及可信任的关键保障。共识算法是以去中心化的方式就网络的状态达成统一协议DB31/TXXXX—XXXX的过程,有助于验证和验证信息被添加到分类账簿,确保真实的信息记录在区块链上,同时在一定程度上具有对不可信节点的容错性。算法安全宜满足以下要求:a)加密算法应具备抗穷举攻击方式;b)散列函数应具备较高的防穷举攻击、抗碰撞攻击以及抗长度扩展攻击能力;c)开源加密算法应具备一定的防后门攻击能力;d)共识算法应具备抗攻击和识别恶意节点的能力。7.4隐私保护7.4.1隐私保护策略隐私保护功能通常通过数据加密和访问控制手段来实现,通常有以下四个隐私保护策略:a)减少用户资料和个人行为进入区块链;b)不宜采用全网广播方式,将数据的传输限制在正在相关的授权节点之间;c)对用户数据的访问采用权限控制,持有密钥的访问者才能解密和访问数据;d)采用例如零知识证明、环签名和同态加密等隐私保护算法,规避隐私暴露。7.4.2隐私监管对区块链底层平台隐私保护进行监管,在区块链结构上进行一系列设置:a)可提供具有特定功能的监管节点和角色;b)具备用户实名认证功能;c)提供监管类智能合约的运行环境和接口,支持在线系统监控,支持监管机构的接入、监管活动,支持监管机构访问最底层的数据;d)能够及时发现并处理系统或交易出现的问题,主动报警,及时采用适当纠正措施,并向监管机构、管理机构报送事件信息;e)能够及时进行交易干预,限制交易权限、冻结账户等,按照监管需求进行交易干预;f)实现在线智能合约监管,应能按需将监管要求编码写入智能合约强制执行,并且应能根据需要为监管机构提供交易行为统计数据。8区块链底层平台可靠性要求8.1节点可靠性满足节点可靠性要求包括但不仅限于:a)提供新增节点基础事务完备性服务;b)提供账本服务一致性服务;c)提供节点准入配置服务;d)提供多节点共识完备性服务。8.2事务执行可靠性满足事务执行可靠性要求包括但不仅限于:a)满足负载状态下账本、区块、交易执行、交易查询等事务成功率;b)满足负载状态下事务执行稳定性要求。DB31/TXXXX—XXXX8.3加密技术可靠性满足加密技术可靠性要求包括但不仅限于:a)提供密钥管理方案服务;b)提供数据隐私保护服务;c)提供交易信息加密服务;d)支持国密算法服务。8.4智能合约可靠性满足智能合约可靠性要求包括但不仅限于:a)应具备变更记录完备性的服务能力;b)应具备合约内容升级共识的服务能力;c)应具备合约内容防篡改等服务能力要求。9区块链底层平台可扩展性要求可扩展性是区块链底层平台适应变化的能力,当节点数量和并发工作负载数据增加时,吞吐率和延迟的变化。满足系统可扩展性要求,包括但不仅限于:a)支持节点动态加入或退出;b)支持计算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小班家园共育活动方案计划
- 特许投资分析中的技术应用试题及答案
- 2024年计算机二级重要策略试题及答案
- 2024年流程优化在投资中的应用试题及答案
- 生态保护区的选址与地理因素-试题及答案
- 电子商务职教市场的品牌建设与形象传播试题及答案
- 城市化进程对环境影响试题及答案
- 动物非感染性疾病新知试题及答案
- 2024互联网营销师效率提升试题及答案
- 2024年人力资源管理师考题解析试题及答案
- 2024年计算机二级WPS考试题库(共380题含答案)
- 汉字的奥秘探索
- 《海上风电设备运输规范》
- 2024年江苏省徐州市中考数学真题卷及答案解析
- 2025届云南省民族大学附属中学高三(最后冲刺)数学试卷含解析
- 湖北省七市2025届高三下学期第五次调研考试数学试题含解析
- 2024年太阳能电池片产业海外专利预警分析报告
- 2023河南专升本英语真题及答案
- 河流沿岸护栏安装工程协议
- 前庭阵发症-讲稿
- 第十三届全国交通运输行业城市轨道交通列车司机(学生组)职业技能大赛技术方案
评论
0/150
提交评论