主页 购物车 询价 关于我们
www.GB-GBT.com
收录标准: 223281 (2026-07-05) 搜索

[PDF] GB/T 47701-2026 - 英文版

标准搜索结果: 'GB/T 47701-2026'
标准号码美元购买PDF工期标准名称(英文版)
GB/T 47701-2026 359 GB/T 47701-2026 <=3 区块链和分布式记账技术 基础设施 系统存储技术要求
基本信息
标准编号 GB/T 47701-2026 (GB/T47701-2026)
中文名称 区块链和分布式记账技术 基础设施 系统存储技术要求
英文名称 Blockchain and distributed ledger technology - Infrastructure - Technology requirement for system storage
行业 国家标准 (推荐)
中标分类 L70
国际标准分类 35.100
字数估计 18,181
发布日期 2026-05-25
实施日期 2026-09-01
发布机构 国家市场监督管理总局、国家标准化管理委员会

GB/T 47701-2026: 区块链和分布式记账技术 基础设施 系统存储技术要求 GB/T 47701-2026 英文版: Blockchain and distributed ledger technology - Infrastructure - Technology requirement for system storage ICS 35.100 CCSL70 中华人民共和国国家标准 区块链和分布式记账技术 基础设施 系统存储技术要求 2026-05-25发布 2026-09-01实施 国 家 市 场 监 督 管 理 总 局 国 家 标 准 化 管 理 委 员 会 发 布 1 范围 本文件规定了区块链系统的存储技术要求,包括存储对象、存储数据类型、存储方式和存储流程。 本文件适用于区块链系统存储能力的设计与实现,指导区块链系统存储能力建设,为区块链存储建 设方和使用方提供参考。 4 缩略语 下列缩略语适用于本文件。 CIFS:通用互联网文件系统(CommonInternetFileSystem) FTP:文件传输协议(FileTransferProtocol) ID:标识符(Identification) MPT:默克尔压缩前缀树(MerklePatriciaTries) NFS:网络文件系统(NetworkFileSystem) RAID:独立磁盘冗余阵列(RedundantArraysofIndependentDisks) SMB:服务器消息块(ServerMessageBlock) 5 存储对象 5.1 概述 存储对象为区块链系统自身的数据,包括账本数据、扩展数据和系统运行辅助数据。 a) 账本数据是用户向区块链发送的消息记录构成的数据,具体包括交易数据和区块数据: 1) 交易数据是用户向区块链发送的对账本数据进行原子性变更的消息记录,是账本数据的 最小存储单元; 2) 区块数据是承载交易数据的数据包,通过共识协议对数据包中的交易执行结果达成一致。 b) 扩展数据是基于账本数据衍生的或通过在账本数据提供证明信息而扩展的数据,具体包括状 态数据和自定义数据: 1) 状态数据是通过交易执行衍生的数据,包括智能合约代码、智能合约账户状态以及交易或 智能合约执行衍生的数据等,可基于账本数据重建状态数据; 2) 自定义数据是提供证明信息到账本层而扩展的其他数据。 c) 系统运行辅助数据是指非直接存储记录在交易或区块中,也无法由交易和区块数据衍生的数 据,但有助于区块链系统运行或提供服务的其他数据,例如终端用户密钥、系统运行日志、事务 日志和配置参数等。 5.2 账本数据 5.2.1 交易数据 交易数据的技术要求如下: a) 应包含交易数据的唯一ID; b) 应包含交易发起方ID; c) 应包含交易发起方对交易内容的数字签名,以实现交易数据的不可否认性; d) 应包含交易内容,应以表示本次交易发起者所发起的具体活动内容,例如智能合约调用交易中 的被调用方法、参数等; e) 应包含时间戳防止重放攻击; f) 宜包含交易类型,例如转账交易或者合约调用交易等; g) 宜在一定范围内限制单条交易数据大小。 5.2.2 区块数据 区块数据的技术要求如下: a) 区块数据结构应至少包含区块头和区块体两部分; b) 每个区块应具有唯一且可验证其未被篡改ID; c) 非创世区块的区块头中应至少包含区块ID、区块生产者ID、共识算法对区块有效性的证明、区 块的前序区块ID、区块产生的时间戳等区块元数据; d) 非创世区块的区块体中应包含区块的交易序列; e) 宜限制单个区块数据的大小或单个区块中包含的交易数量; f) 宜记录跨链区块来源信息,实现跨链数据来源可溯,增强区块数据的关联性。 5.3 扩展数据 5.3.1 状态数据 状态数据由表示以下内容的数据构成:智能合约代码、智能合约账户状态以及交易或智能合约执行 衍生的数据等。状态数据的技术要求如下: a) 应以交易作为状态数据变更的依据; b) 应具备通过智能合约等方式定义状态数据的读写规则,并在交易执行时进行校验; c) 应采用具备数据完整性及一致性校验的数据组织方式,例如默克尔树、MPT等; d) 应通过共识协议对状态数据的变更达成一致; e) 应具备基于账本数据重建功能; f) 宜实现状态数据读写权限设置; g) 应在多个区块链节点一致性存储; h) 宜具备跨链状态同步机制,实现不同链间相关状态数据的及时更新,维持系统协同。 5.3.2 自定义数据 自定义数据的技术要求如下: a) 应具有唯一ID; b) 应对数据内容进行完整性验证和有效性验证后再存储; c) 宜将其证明信息存储在账本数据中,并实现一定期限内的验证; d) 宜在账本中声明其存储方式、存储位置、数据类型、数据生产者或数据来源等元数据信息; e) 宜提供跨链自定义数据索引,方便跨链场景下快速定位与引用该数据。 5.4 系统运行辅助数据 系统运行辅助数据由表示以下内容的数据等构成:密钥、日志(运行日志、事务日志)、配置参数及其 他系统运行必需的数据等。系统运行辅助数据的技术要求如下: a) 密钥等机密数据应进行加密保护; b) 日志数据中不应暴露账本数据和扩展数据的详细内容; c) 应具备关键数据的备份和恢复。 6 存储数据类型 6.1 概述 根据数据的用途,可将存储的数据分为持久存储数据和临时存储数据。 持久存储数据是指不能被修改或删除的数据。在全节点中,用于实现区块链的历史可追溯和数据 的不可篡改。在轻节点中,用于实现客户端可验证区块链节点返回业务数据的可信性。 临时存储数据是指可在一定时间后被修改或删除的数据。在全节点中,用于实现区块链的当前业 务功能。 6.2 持久存储数据 6.2.1 存储数据对象 6.2.1.1 全节点持久存储对象 全节点的持久存储对象包括区块数据、扩展数据和系统运行辅助数据。 6.2.1.2 轻节点持久存储对象 轻节点的持久存储对象如下: a) 至多为全部区块头数据,即5.2.2c)区块头在区块链全生存周期的序列; b) 至少为区块ID数据,即5.2.2c)区块头中的区块ID在区块链全生存周期的序列。 6.2.2 技术要求 6.2.2.1 全节点持久存储数据 全节点持久存储数据技术要求如下。 a) 完整性: 1) 区块链应为系统全生存周期的完整区块序列,不应有区块缺失; 2) 区块结构完整,区块内部不应有交易缺失; 3) 应能通过区块哈希值的完整性校验。 b) 一致性: 1) 快照的状态数据应与从创世区块追溯至该快照对应的区块所产生的状态数据一致; 2) 快照的系统运行辅助数据中密钥等密码学数据应能验证区块中的数字签名; 3) 不同节点的区块链中相同序号的区块应保持一致。 c) 扩展性: 1) 存储方案应具备弹性扩容,容纳区块链全生存周期的全量数据; 2) 宜建立多层级存储体系,在区块链数据随时间推移逐渐增长时将较为早期的数据从主存 储逐层级转储至存储体系的其他层级; 3) 宜实现兼容不同区块链的存储格式和数据结构,具备跨链数据的高效传输、存储和交互。 d) 账本数据、扩展数据、系统辅助运行数据应采用必要技术手段,预防数据丢失,实现数据随时 可用。 e) 持久存储数据应实现数据的可查询性与可追溯性。 f) 宜包含多个状态的数据快照以提高区块的追溯效率。 g) 宜具备冷热分层存储或离线存储。 6.2.2.2 轻节点持久存储数据 轻节点持久存储数据技术要求如下。 a) 完整性:应包含账本数据中所有区块头,不应有缺失。 b) 一致性: 1) 不同轻节点的区块头链中相同序号区块头的字段应保持一致; 2) 轻节点的区块链头链中区块头应与全节点区块链中系统序号区块头的字段保持一致。 c) 宜采用压缩存储方法。 6.3 临时存储数据 6.3.1 存储数据对象 临时性存储数据的目的是实现区块链的业务功能。仅全节点有临时存储;轻节点不执行业务交 易,不需要临时存储。临时存储对象应包括: a) 账本数据中的最新区块和尚未纳入区块的新接收交易; b) 最新的扩展数据和系统运行辅助数据。 6.3.2 技术要求 临时存储数据技术要求如下: a) 应实现最新活动记录和状态数据的完整性; b) 应实现数据与区块链网络中其他正常节点的一致性; c) 应定期将交易数据和区块数据转移至持久存储; d) 宜定期将临时存储的扩展数据和辅助数据的快照转移至持久存储; e) 宜在节点和系统运行状态发生重要变化时将辅助数据中的关键数据进行备份; f) 宜根据临时数据的数据量、活跃程度、读写情况来建立多层级、差异化的存储体系,以取得最佳 性能。 7 存储方式 7.1 概述 不同存储对象将根据其特性采用不同的存储方式。账本数据可存储于数据库中,而扩展数据和系 统运行辅助数据则可采用数据库存储、对象存储或文件存储。 数据库存储是将数据按照预定结构组织成数据集合的存储方式。 对象存储是以对象作为存储单位,并提供对象级访问接口的存储方式。 文件存储是将数据以文件的形式保存在计算机系统或其他存储设备中的一种分层存储方式。 其中,数据库存储和对象存储较适用于需要频繁访问的临时存储性数据,而文件存储则适用于需要 长期保存的持久存储性数据。 7.2 通用要求 数据库存储、对象存储、文件存储通用技术要求如下: a) 应符合GB/T 42571-2023,6.5.1.2c)、d)、f)以及6.5.2.1中的安全要求; b) 宜实现使用区块高度、区块时间戳、交易哈希值等标识快速检索数据; c) 宜具备弹性扩容。 7.3 数据库存储 数据库存储技术要求如下: a) 应实现将数据作为键值对存储; b) 宜具备数据分片技术,将键值数据分散到不同的分片中,提高并行处理能力; c) 宜具备状态通道或侧链技术,允许将频繁更新的键值数据卸载至链下存储; d) 宜实现读写分离机制,优化数据库的查询性能; e) 宜采用数据复制、主从架构或分布式数据库等技术,实现数据库服务的高可用性; f) 应提供数据备份和恢复机制,并要求数据库应具备容错机制; g) 宜具备基于共识机制的键值数据复制和同步,实现网络中数据的一致性; h) 宜采用高性能、高可靠性的存储媒体,如企业级固态盘或全固态存储阵列; i) 宜根据实际需求选择不同的RAID级别,如RAID10或RAID5。 7.4 对象存储 对象存储的技术要求如下: a) 宜采用去中心化内容寻址存储技术,如使用数据哈希作为标识,快速定位和访问存储的对象; b) 应具备对象版本控制,允许追踪和恢复对象的历史版本; c) 宜具备可扩展的命名空间,能动态扩展存储容量; d) 应实现对象元数据的高效索引和检索,以应对海量对象的管理; e) 应实现对象的多副本存储和自动同步,实现数据的可用性; f) 应具备容错机制和自我修复能力,自动从副本中恢复,实现数据的完整性。 7.5 文件存储 文件存储的技术要求如下: a) 宜实现区块链网络中的分布式文件存储,允许大文件分散存储在多个节点上; b) 宜具备区块链全节点和轻节点的灵活存储策略,允许轻节点仅存储区块头和自身相关的数据; c) 宜具备灵活的目录结构,如树形目录和扁平化目录; d) 宜实现文件版本控制,保留数据的历史版本; e) 宜具备不可变文件存储,如追加写文件系统,实现写入文件系统的数据无法被修改; f) 宜兼容常用的文件级协议,如FTP、SMB、CIFS、NFS等; g) 宜具备文件共享功能,网络上具有适当权限的计算机可访问存储在网络附加存储(NAS)设备 上的文件; h) 宜实现文件存储灾备。 8 存储流程 8.1 概述 区块链存储流程是指区块链上的数据配置、数据预处理、构造自定义数据、自定义数据验证、数据同 步、数据落盘和事后数据管理等一系列步骤和方法,旨在实现区块链系统的数据安全性和可扩展性,如 8.2 运行辅助数据配置 数据存储前对支持系统运行辅助数据进行配置,所涉及的内容包括但不限于: a) 应对系统运行的配置文件进行加载; b) 应对存储行为发起者的密钥进行托管或提示自行保存。 8.3 数据预处理 数据存储前对上链存储的数据进行预处理,所涉及的内容包括但不限于: a) 应检查数据的格式是否符合上链要求; b) 应对数据的相关信息进行数据完整性验证; c) 宜对数据的内容进行隐私保护处理; d) 宜对数据的合规性进行检查。 8.4 签发交易 数据进行预处理后,签发数据上链的交易,作为待打包交易广播到网络,所涉及的内容包括但不 限于: a) 应使用合法授权的私钥对上链的交易进行数字签名; b) 对于临时数据,应注明此数据的保存期限; c) 在对交易签名时使用的算法宜兼容国际或国内主流的商用密码算法; d) 交易数据宜明确其存储类型。 8.5 构造自定义数据 数据进行预处理后,依据业务需要构造自定义类型的上链数据,所涉及的内容包括但不限于: a) 应使用合法授权的私钥对上链的自定义数据进行数字签名; b) 对于临时数据,应注明此数据的保存期限; c) 在对自定义数据签名时使用的算法宜兼容国际或国内主流的商用密码算法; d) 宜在自定义数据中明确其存储类型。 8.6 交易数据验证与打包 出块节点在接收到待打包交易请求后,进行交易验证与打包,所涉及的内容包括但不限于: a) 应验证交易内容的完整性与数字签名的合法性; b) 积累符合要求数量的合法交易后,在构造新的区块时,应使用合法授权的私钥对区块的所有信 息进行签名; c) 应将新的区块广播到区块链网络中; d) 宜验证交易数据的存储大小是否符合区块链节点存储的要求。 8.7 自定义数据验证 自定义数据在落盘前进行验证,所涉及的内容包括但不限于: a) 应验证自定义数据内容的完整性与数字签名的合法性; b) 宜验证自定义数据的存储大小是否符合区块链节点存储的要求。 8.8 数据同步 账本数据和扩展数据除了通过自身节点生成并存储外,还可通过区块链节点网络进行数据同步,所 涉及的内容包括但不限于: a) 数据同步过程应避免依赖中心化的服务器或节点,而是通过对等网络实现数据的分发和更新; b) 区块链节点可根据实际需要选择全节点(同步所有区块数据)或轻节点(同步区块头数据)等不 同的同步模式,以减少存储负担、提高数据同步速度; c) 区块链节点宜根据实际需要选择只同步某个版本的状态数据集......

英文网页English: GB/T 47701-2026

相关标准: