区块链技术应用于数字金融、物联网、智能制造、供应链管理、数字资产交易等多个领域,在建设网络强国、发展数字经济、助力经济社会发展等方面发挥着积极作用。区块链中的节点认证、节点组网、交易背书、交易验证、节点间共识、区块生成、账本同步等功能的实现与安全保障依托于密码技术。为落实密码法精神,服务国家信息安全战略,由鼎铉公司牵头制定的深圳市商用密码行业协会团体标准《T/SCCIA 010-2020区块链密码应用验证规范》于2020年6月11日发布,该标准适用于具有完备区块链功能的联盟链平台,指导区块链的密码应用验证、设计和开发,保障密码在区块链中的合规、正确、有效应用。
区块链密码应用验证
区块链密码应用验证主要是通过工具验证、材料核查、模拟验证等方法对区块链中的信息加密、身份认证、隐私保护等功能展开测试,旨在验证区块链中密码应用的合规、正确、有效,保障区块链密码应用安全,支撑区块链应用稳步、安全、健康发展。
1、区块链密码应用技术架构
区块链密码应用验证根据区块链中密码应用技术特点,提炼出区块链密码应用技术架构,如图1所示。
图1区块链密码应用技术架构
a)密码设备层:
该层是包含密码算法,能实现一种或多种密码安全功能的芯片或密码模块的集合,可为密码功能层提供标准调用接口。主要包括密码机、加密卡、时间戳服务器、签名验签服务器、VPN、软件密码模块、智能密码钥匙等。
b)密码功能层:
该层通过调用密码设备层接口,实现密码功能并为密码应用层提供密码服务。主要包括密码算法、密码协议、公钥基础设施和密钥生命周期管理。
c)密码应用层:
该层通过密码功能层提供的密码服务确保区块链平台基本功能安全。主要包括用户和节点身份管理、通信安全、账本存储、交易安全、共识算法、智能合约、预言机、隐私保护、日志管理等。
2、测试内容
区块链密码应用验证重点测试密码功能层和密码应用层两大部分,包括13个测评项,102个测评指标。
a)密码功能层:
验证区块链平台密码功能层各种密码功能和服务接口实现和使用的正确性。
b)密码应用层:
验证区块链平台密码应用层各种密码应用使用密码技术或其他合法方式实现数据机密性、完整性、真实性保护的正确性和有效性。主要测试项见图2。
图2区块链密码应用测试项
3、测试流程
图3区块链密码应用验证流程
4、适用范围
区块链技术完全基于密码学技术,其核心技术使用了大量的传统的加密技术。如果要保障区块链技术应用的安全性,有必要对所有区块链产品的密码功能层和密码应用层进行严格测试。