本发明涉及一种区块链数据认证系统的方法,基于终端数据认证,利用区块链技术防篡改的特点,将权威数据添加到区块链块中,用户通过关键字查询认证信息并提供认证结果,解决数据信任问题。
缩略语及名词解释:
api:应用程序接口
pc:计算机(个人计算机)
rpc:远程过程调用
dpos:共识算法
背景技术:
随着互联网信息的发展,大部分权威数据保存在中心服务器。而这些数据可能被篡改,中心服务器被攻击、钓鱼网站的潜在威胁等等,数据信息认证的可靠性越来越低。
目前有各种数据链的应用,其主要解决的问题是数据入链。销售api接口,提供企业入链服务。其主要问题是,一、企业需要费用,提供接口任意数据都可以入链,不能保证数据的权威性。二、提供详细的查询信息,不能保证数据隐私性。
技术实现要素:
本发明提供了一种区块链数据认证系统的方法,利用区块链技术不可篡改性,权威机构数据入链,实现数据认证的可靠性。通过终端(pc终端、app)上应用时,关键字的查询认证,提供权威认证结果。
本发明所述一种区块链数据认证系统的方法,从三个层面保障数据可信:1.利用区块链防篡改特性,数据一旦入链,不能修改,保证数据的唯一可靠性。2.权威机构提供数据源,为数据提供真实保障。操作员直接记录到链上,防止操作员篡改数据。3.入链数据利用私钥加密、签名,利用公钥验证签名,保证数据的完整性和安全性。
图1为本发明所述的一种区块链数据认证系统的方法,其中包括
区块链网络节点模块、接口(api)模块、区块链账号注册模块、区块浏览器模块、区块链数据录入模块、区块链数据查询模块、钱包模块(app、客户端)管理。
区块链网络节点模块:实现数据认证系统的底层技术,利用密码学技术保证账户、数据安全;共识算法(如dpos等)保证数据打包生成区块的公平公正;利用p2p网络(点对点传输)、数据同步技术等将数据同步到区块链网络中各个节点,现实数据的分布式备份;同时提供rpc访问接口。
接口(api)模块:利用区块链节点模块提供的rpc接口,实现上层需要的各种api接口功能与链交互的功能。
区块链账号注册模块:实现用户在区块链上注册、生成用户密钥并备份密钥信息,用户信息在区块链上永久有效。
区块浏览器模块:实现在区块链任意节点上对区块链高度查询、区块链交易记录查询、区块信息查询、区块生成时间查询、账户交易信息查询等,提供公开透明的机制信息。
区块链数据录入模块:将权威数据(如:学校毕业数据、银行票据数据、医药生产数据等各行各业标准且必须公开透明的数据)由操作员账户添加到区块链中,形成唯一、不可篡改的数据链,解决数据信任问题。
区块链数据查询模块:查询关键字(如:毕业证号、生产批次、票据号等),认证关键字信息是否存在,同时提供权威认证结果证书。
钱包模块管理:保存备份密钥、设置钱包密码、查询交易信息、查询认证信息。
本发明提供一种区块链数据认证系统,它采用本发明所述在区块链钱包模块管理通过区块链注册模块生成的密钥文件、查询认证关键字数据的可靠性;区块链注册模块通过接口模块提供的api,在区块链节点模块中注册账户信息;接口(api)模块为应用层与链层提供承上启下的作用,应用层调用接口api函数,接口api调用区块链节点rpc功能实现数据交互;区块链网络节点模块提供底层技术(p2p、共识算法、同步算法)实现保证;区块链数据录入模块通过权威机构数据操作员,将权威数据录入区块链中;区块链数据查询模块通过关键字查询区块链上的数据,认证关键字数据信息是否存在;区块链浏览器模块展现、查询区块链上的记录信息。
具体实施方式:
服务器:节点服务器、api接口服务器、应用服务器。
客户端:app、浏览器
节点服务器:区块链节点服务器,实现保存交易信息、共识算法、数据同步等功能,包含区块链网络节点。
api接口服务器:提供中转数据服务,包含接口模块。
应用服务器:应用功能服务器,包括区块链账号注册模块、区块链浏览器模块、区块链数据录入模块、区块链数据查询模块。
app:终端设备(手机),包含钱包管理模块。