1.一种基于云计算的多区块链的链上数据存储系统,该系统包括多个区块链网络、多个区块链客户端及云存储,一个或多个所述区块链客户端构成区块链的计算节点;
所述云存储包括区块数据模块、用户数字证书模块、密码引擎模块、键值数据库及API接口;
所述区块链客户端设置有一个或多个云存储,所述区块链客户端用于对多个区块链的链上数据通过所述区块数据模块、所述用户数字证书模块、所述密码引擎模块、所述键值数据库及所述API接口集中存储于所述云存储;
所述区块链客户端设置有云存储接口,所述云存储接口与所述API接口进行通信;
其中,所述区块数据模块用于存储多个区块链的链上数据;所述用户数字证书模块用于存储用户在多个区块链上的数字证书;所述密码引擎模块包括非对称密码器、随机数生成器和数字摘要计算器;所述键值数据库用于对多个区块链的链上数据建立键‑值数据库记录,以及对多个区块链的用户数字证书建立键‑值数据库记录,多个区块链的链上数据共用一个数据库引擎;所述API接口用于向区块链客户端提供链上数据、用户数字证书的访问、管理与维护功能,所述API接口包括初始化功能模块、注销功能模块、更新功能模块、写区块功能模块、检索功能模块和同步功能模块;
其中,所述初始化功能模块用于提供申请分配云存储空间的功能;所述注销功能模块用于提供删除指定区块链的链上数据的功能,如果删除最后一个区块链的链上数据,则释放云存储空间;所述更新功能模块用于提供更新用户数字证书的功能;所述写区块功能模块用于向区块链客户端提供写入链上数据的功能;所述检索功能模块用于向区块链客户端提供检索链上数据的功能;所述同步功能模块用于单用户独占使用多个云存储系统的场景,在多个云存储系统之间同步指定区块链的链上数据及用户在该区块链的数字证书,其中被同步的云存储系统标以主标识,同步到的云存储系统标以从标识。
2.根据权利要求1所述的基于云计算的多区块链的链上数据存储系统,其特征在于,所述区块数据模块用于对所述区块链客户端产生原始区块数据时,将所述原始区块数据及对应的编号、起始地址、长度及用户数字签名合并为所述区块数据。
3.根据权利要求1所述的基于云计算的多区块链的链上数据存储系统,其特征在于,所述用户数字证书模块用于对原始数字证书进行封装,封装之后的所述用户数字证书至少包括原始数字证书、签发机构、签发时间、有效期、用户数字签名及有效状态。
4.根据权利要求3所述的基于云计算的多区块链的链上数据存储系统,其特征在于,所述用户数字签名被配置为通过云存储传递数字证书时,通过自身私钥对原始数字证书、签发机构、签发时间、有效期的Hash值进行数字签名。
5.根据权利要求1所述的基于云计算的多区块链的链上数据存储系统,其特征在于,所述密码引擎模块包括非对称密码器、随机数生成器、数字摘要计算器,用于对所述区块链客户端与所述云存储的交互进行加密验证,所述随机数生成器产生一次性的随机数以及唯一性标识编号;所述非对称密码器用于验证数字签名;所述数字摘要计算器用于计算Hash值。
6.根据权利要求1所述的基于云计算的多区块链的链上数据存储系统,其特征在于,所述键值数据库用于对多个区块链的链上数据建立键‑值数据库记录,对多个区块链的用户数字证书建立键‑值数据库记录,其中多个区块链的链上数据共用一个数据库引擎。
7.根据权利要求1所述的基于云计算的多区块链的链上数据存储系统,其特征在于,所述API接口用于向所述区块链客户端提供链上数据、用户数字证书的访问、管理与维护功能,其中维护功能至少包括区块的初始化、注销、更新、写区块、检索及同步之一。
8.根据权利要求7所述的基于云计算的多区块链的链上数据存储系统,其特征在于,所述API接口通过对应的通讯协议完成区块的初始化、注销、更新、写区块、检索及同步。
9.根据权利要求1所述的基于云计算的多区块链的链上数据存储系统,其特征在于,该系统还包括用户客户端,所述用户客户端用于通过一个或多个所述计算节点部署相同、部分相同、不同的所述区块链客户端,通过区块链客户端访问云存储的链上数据。
10.一种基于云计算的多区块链的链上数据存储方法,根据权利要求1‑9任一所述的基于云计算的多区块链的链上数据存储系统,其特征在于:设置一个或多个云存储,通过所述云存储对多个区块链的链上数据进行存储;
对区块链的原始区块数据及原始数字证书进行封装并存储至所述云存储的对应空间;
通过所述密码引擎模块完成所述区块链客户端与云存储的加密交互;
通过所述键值数据库中对用户数字证书、区块数据建立键值数据库记录;
通过所述API接口对区块链客户端至少提供区块链的初始化、更新、写区块、检索、同步、注销功能,以及,对链上数据、用户数字证书的管理与维护;
以及,通过所述区块链客户端的云存储接口与所述云存储的API接口进行对接通信。