CN113722749A - 基于加密算法的区块链baas服务的数据处理方法及装置 - Google Patents
基于加密算法的区块链baas服务的数据处理方法及装置 Download PDFInfo
- Publication number
- CN113722749A CN113722749A CN202010452112.6A CN202010452112A CN113722749A CN 113722749 A CN113722749 A CN 113722749A CN 202010452112 A CN202010452112 A CN 202010452112A CN 113722749 A CN113722749 A CN 113722749A
- Authority
- CN
- China
- Prior art keywords
- file
- information
- client
- block
- public key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及了一种基于加密算法的区块链BAAS服务的数据处理方法及装置,其中方法包括:获取第一客户端上传的文件特征信息以及公钥;将文件特征信息存储在对应的第一区块中;获取第二客户端发起的用于获取待传输文件的文件获取请求;根据文件获取请求将文件特征信息发送至第二客户端,以使第二客户端按照第二私钥对存储位置加密信息进行解密得到存储位置信息,并根据存储位置信息得到实际传输文件;所述第二私钥与所述公钥对应设置。本申请通过在平台上只存储有公钥,因此用户私钥可加密存储在本地客户端,即使攻击者获得用户公钥,推算出相关信息的区块地址,查询得到的信息仍是密文状态,无法破解用户信息,可以有效保障信息的安全。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种基于加密算法的区块链BAAS服务的数据处理方法及装置。
背景技术
区块链是一个分布式的应用,去中心化多节点,即使有spv认证模式,还是要求有一部分节点下载完整的数据记录,以比特币为例,目前几百G的数据,随着数据量的不断增长,对本地计算资源和存储资源都是一种挑战。通过区块链结合云计算存储平台而形成存量较大的BAAS服务平台。
区块链服务:广义理解,把区块链的应用,比如比特币、以太坊等这类型公链,节点直接部署在云平台,节点提供查询,交易、区块生成等操作,底层使用云计算资源和云存储空间,这种简单理解为区块链服务,公链的延伸应用-存证型-Factom,数字身份型-uPort等,云平台的容错、网络的多链路负载、计算资源的动态调整,其实针对区块链中的节点能够更好的实现他的服务,从一定角度来讲也节省了节点的运行成本,提高了整个系统之间交互的效率。当然从区块链服务这个词汇来理解就是云平台上搭建区块应用,业务直接访问在云平台之上的区块链应用平台,结合图上,区块链浏览器、数字货币交易平台以及一些现有的区块链系统提供开放的服务。
对于区块链技术服务:区块链技术通俗来说就是:加密技术、共识机制、P2P的网络、分布式系统等一些技术的结合,那么在云平台的区块链技术多指这些技术的结合后区块链架构框架或者区块链操作系统,主要是HyperLedger,multichain,以太坊私有链等多个框架,使用这些框架去结合应用业务需求,开发出适合业务的应用,甚至这些应用要求优于现有的互联网技术,这种方式称为区块链技术服务。
BAAS(Blockchain as a Service),“区块链即服务”,是指将区块链框架嵌入云计算平台,利用云服务基础设施的部署和管理优势,为开发者提供便捷、高性能的区块链生态环境和生态配套服务,支持开发者的业务拓展及运营支持的区块链开放平台。通常情况下,一套完整的 BAAS 解决方案包括设备接入、访问控制、服务监控和区块链平台四个主要环节。
目前,区块链服务系统在多个行业应用,比如,信息共享、版权保护、物流链、供应链金融、跨境支付、资产数字化、代币等等。在诸多重要应用领域中,区块链BAAS服务平台需要有高度的安全性和可信性来保障BAAS服务平台的实用性。
国产密码算法(国密算法)是指国家密码局认定的国产商用密码算法,目前主要使用公开的SM2、SM3、SM4三类算法,分别是非对称算法、哈希算法和对称算法,密钥长度和分组长度均为128位。
国密算法是国家密码局制定标准的一系列算法。其中包括了对称加密算法,椭圆曲线非对称加密算法,杂凑算法。具体包括SM1,SM2,SM3等,其中:
SM2为国家密码管理局公布的公钥算法,其加密强度为256位。其它几个重要的商用密码算法包括:
SM1,对称加密算法,加密强度为128位,采用硬件实现;
SM3,密码杂凑算法,杂凑值长度为32字节,和SM2算法同期公布,参见《国家密码管理局公告(第 22 号)》;
SM4,对称加密算法,随WAPI标准一起公布,可使用软件实现,加密强度为128位。
商用密码,是指能够实现商用密码算法的加密、解密和认证等功能的技术。(包括密码算法编程技术和密码算法芯片、加密卡等的实现技术)。商用密码技术是商用密码的核心,国家将商用密码技术列入国家秘密,任何单位和个人都有责任和义务保护商用密码技术的秘密。
商用密码的应用领域十分广泛,主要用于对不涉及国家秘密内容但又具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护。比如:商用密码可用于企业门禁管理、企业内部的各类敏感信息的传输加密、存储加密,防止非法第三方获取信息内容;也可用于各种安全认证、网上银行、数字签名等。
例如:在门禁应用中,采用SM1算法进行身份鉴别和数据加密通讯,实现卡片合法性的验证,保证身份识别的真实性。安全是关系国家、城市信息、行业用户、百姓利益的关键问题。国家密码管理局针对现有重要门禁系统建设和升级改造应用也提出指导意见,加强芯片、卡片、系统的标准化建设。截止目前,国密门禁系统的升级的案例也逐渐增多,基于自主国产知识产权的CPU卡、CPU卡读写设备及密钥管理系统广泛受到关注。一些厂商如同方锐安在2009年推出CPU卡安全门禁系列产品,在2010年北京安博会上,该公司再次向业界展示出“御”系列CPU卡门禁系统、TF-DF6000系列安全门禁读卡器以及基于CPU卡技术的一卡通系统等主流产品和系统。这些厂商是全国推广的国密门禁产品的先驱者,使“御”系列CPU卡门禁系统广泛应用于政府、监狱、司法、军工企业和大型公共智能建筑等高安全领域。
安全是智能卡的核心,而算法是安全的基础。
国密算法由国家密码局发布,包含SM1\ SM2\ SM3\ SM4\ SSF33算法;国际算法由美国的安全局发布,是现今最通用的商用算法。我们就以分组密码算法(DES和SM4)、公钥密码算法(RSA和SM2)、摘要算法(SM3)为例,和大家谈谈国际算法和国密算法的区别。
分组密码算法:国际DES、国产SM4。
分组密码就是将明文数据按固定长度进行分组,然后在同一密钥控制下逐组进行加密,从而将各个明文分组变换成一个等长的密文分组的密码。其中二进制明文分组的长度称为该分组密码的分组规模。
分组密码的实现原则如下:
(1)必须实现起来比较简单,知道密钥时加密和脱密都十分容易,适合硬件和(或)软件实现。
(2)加脱密速度和所消耗的资源和成本较低,能满足具体应用范围的需要。
分组密码的设计基本遵循混淆原则和扩散原则。
混淆原则就是将密文、明文、密钥三者之间的统计关系和代数关系变得尽可能复杂,使得敌手即使获得了密文和明文,也无法求出密钥的任何信息;即使获得了密文和明文的统计规律,也无法求出明文的任何信息。
扩散原则就是应将明文的统计规律和结构规律散射到相当长的一段统计中去。也就是说让明文中的每一位影响密文中的尽可能多的位,或者说让密文中的每一位都受到明文中的尽可能多位的影响。
针对相关技术中存在的诸多技术问题,目前尚未提供有效的解决方案。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种基于加密算法的区块链BAAS服务的数据处理方法及装置。
第一方面,本申请提供了一种基于加密算法的区块链BAAS服务的数据处理方法,包括:
获取第一客户端上传的文件特征信息以及公钥;所述文件特征信息包括:文件哈希值以及待传输文件对应的存储位置加密信息;所述存储位置加密信息是通过所述公钥对所述待传输文件在第一客户端对应的第一本地端中的存储位置信息进行加密得到;
将所述文件特征信息存储在对应的第一区块中;
获取第二客户端发起的用于获取所述待传输文件的文件获取请求;
根据所述文件获取请求将所述文件特征信息发送至第二客户端,以使所述第二客户端按照第二私钥对存储位置加密信息进行解密得到所述存储位置信息,并根据所述存储位置信息得到实际传输文件;所述第二私钥与所述公钥对应设置。
可选的,如前述的数据处理方法,在将所述文件特征信息存储在对应的第一区块中,包括:
接收得到所述第一客户端发送的所述公钥、文件哈希值、时间戳以及数据签名值;所述公钥为所述第一客户端生成得到,所述文件哈希值为所述第一客户端通过预设的哈希算法对所述待传输文件进行哈希运算得到,所述时间戳为所述第一客户端根据获取所述待传输文件时间信息得到,所述数据签名值为所述第一客户端通过预设的公钥算法对所述文件哈希值和所述时间戳进行签名得到;
根据所述公钥得到对应的区块地址;
根据所述区块地址得到所述第一区块,所述第一区块的区块体中存储有所述文件哈希值、时间戳以及数据签名值。
可选的,如前述的数据处理方法,还包括:
获取所述第一客户端发送的注册请求以及注册信息;所述注册信息包括账号信息以及登录密码;
在按照所述注册请求对所述注册信息验证通过之后,生成与所述注册信息对应的公钥和第一私钥;所述公钥和第一私钥相互对应设置;
将所述私钥发送至所述第一客户端。
可选的,如前述的数据处理方法,在获取第一客户端上传的文件特征信息以及公钥之前,还包括:
获取所述第一客户端发送的账号登录信息;所述账号登录信息包括账号信息以及登录密码;
在预设的数据库中查询得到所述账号信息以及与所述账号信息对应的登录密码时,接收所述第一客户端的访问请求。
可选的,如前述的数据处理方法,将所述文件特征信息存储在对应的区块中,包括:
确定将所述文件哈希值以及存储位置加密信息存储至至少一个第二区块中的区块存储位置信息;
通过公钥对所述区块存储位置信息进行进行加密,得到加密区块存储位置信息;
根据所述加密区块存储位置信息生成与所述待传输文件对应的第三区块,并将所述加密区块存储位置信息存储于所述第三区块中。
可选的,如前述的数据处理方法,所述根据所述文件获取请求将所述文件特征信息发送至第二客户端,包括:
在区块链中查询得到与所述待传输文件对应的所述第三区块;
获取所述第三区块中的所述加密区块存储位置信息;
将所述加密区块存储位置信息发送至所述第二客户端;以使所述第二客户端根据所述第二私钥对所述加密区块存储位置信息进行解密后得到所述区块存储位置信息,并根据所述区块存储位置信息从所述第二区块中获取所述文件特征信息。
可选的,如前述的数据处理方法,还包括:
获取所述第二客户端的文件哈希值获取请求,以使所述第二客户端根据所述文件哈希值以及所述实际传输文件的哈希值判断所述实际传输文件与所述待传输文件是否为同一文件。
第二方面,本申请提供了一种基于加密算法的区块链BAAS服务的数据处理装置,包括:
第一获取模块,用于获取第一客户端上传的文件特征信息以及公钥;所述文件特征信息包括:文件哈希值以及待传输文件对应的存储位置加密信息;所述存储位置加密信息是通过所述公钥对所述待传输文件在第一客户端对应的第一本地端中的存储位置信息进行加密得到;
存储模块,用于将所述文件特征信息存储在对应的第一区块中;
第二获取模块,用于获取第二客户端发起的用于获取所述待传输文件的文件获取请求;
传输模块,用于根据所述文件获取请求将所述文件特征信息发送至第二客户端,以使所述第二客户端按照第二私钥对存储位置加密信息进行解密得到所述存储位置信息,并根据所述存储位置信息得到实际传输文件;所述第二私钥与所述公钥对应设置。
第三方面,本申请提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,所述处理器、通信接口和存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述计算机程序时,实现如前述任一项所述的处理方法。
第四方面,本申请提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如前述任一项所述的处理方法。
本申请实施例提供了一种基于加密算法的区块链BAAS服务的数据处理方法及装置,其中方法包括:获取第一客户端上传的文件特征信息以及公钥;所述文件特征信息包括:文件哈希值以及待传输文件对应的存储位置加密信息;所述存储位置加密信息是通过所述公钥对所述待传输文件在第一客户端对应的第一本地端中的存储位置信息进行加密得到;将所述文件特征信息存储在对应的第一区块中;获取第二客户端发起的用于获取所述待传输文件的文件获取请求;根据所述文件获取请求将所述文件特征信息发送至第二客户端,以使所述第二客户端按照第二私钥对存储位置加密信息进行解密得到所述存储位置信息,并根据所述存储位置信息得到实际传输文件;所述第二私钥与所述公钥对应设置。本申请实施例提供的上述技术方案与现有技术相比具有如下优点:平台上只存储有公钥,因此用户私钥可加密存储在本地客户端, 即使攻击者获得用户公钥, 推算出相关信息的区块地址, 查询得到的信息仍是密文状态, 无法破解用户信息,可以有效保障信息的安全。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于加密算法的区块链BAAS服务的数据处理方法的流程图;
图2为本申请实施例提供的一种基于加密算法的区块链BAAS服务的数据处理装置的框图;。
图3为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的一种基于加密算法的区块链BAAS服务的数据处理方法,包括如下所述步骤S1至S4:
步骤S1. 获取第一客户端上传的文件特征信息以及公钥;文件特征信息包括:文件哈希值以及待传输文件对应的存储位置加密信息;存储位置加密信息是通过公钥对待传输文件在第一客户端对应的第一本地端中的存储位置信息进行加密得到;
步骤S2. 将文件特征信息存储在对应的第一区块中;
步骤S3. 获取第二客户端发起的用于获取待传输文件的文件获取请求;
步骤S4. 根据文件获取请求将文件特征信息发送至第二客户端,以使第二客户端按照第二私钥对存储位置加密信息进行解密得到存储位置信息,并根据存储位置信息得到实际传输文件;第二私钥与公钥对应设置。
采用本实施例中的方法,可以使平台上只存储有公钥,因此用户私钥可加密存储在本地客户端, 即使攻击者获得用户公钥, 推算出相关信息的区块地址, 查询得到的信息仍是密文状态, 无法破解用户信息,可以有效保障信息的安全。
在一些实施例中,如前述的数据处理方法,在将文件特征信息存储在对应的第一区块中,包括:
接收得到第一客户端发送的公钥、文件哈希值、时间戳以及数据签名值;公钥为第一客户端生成得到,文件哈希值为第一客户端通过预设的哈希算法对待传输文件进行哈希运算得到,时间戳为第一客户端根据获取待传输文件时间信息得到,数据签名值为第一客户端通过预设的公钥算法对文件哈希值和时间戳进行签名得到;
根据公钥得到对应的区块地址;
根据区块地址得到第一区块,第一区块的区块体中存储有文件哈希值、时间戳以及数据签名值。
具体的,可以通过SM2算法产生私钥Sa和公钥Pa,将Sa加密存储于本地。通过SM3算法对用户上传的数据进行哈希运算得到信息哈希值H。利用SM2签名算法对H和时间戳Tr进行签名, 置M={H,Tr}, 之后得到数据签名值SIGr。将消息M={Pa,M,SIGr}发送至服务器端。
服务器系统计算数据的哈希值H,通过计算验证SIGr。若验证通过, 则通过SM3、RIPEMD160、BASE5等算法对Pa进行计算,获得区块地址Add,作为该数据的区块标识,在该区块体中记录用户的H、Tr和SIGr。每个数据块拥有唯一对应的区块。服务系统内部计算资源通过共识机制完成区块的生成。
在一些实施例中,如前述的数据处理方法,还包括:
获取第一客户端发送的注册请求以及注册信息;注册信息包括账号信息以及登录密码;
在按照注册请求对注册信息验证通过之后,生成与注册信息对应的公钥和第一私钥;公钥和第一私钥相互对应设置;
将私钥发送至第一客户端。
具体的,在实现本实施例方法的平台中,用户a进行身份认证首先需要进行注册,注册时需通过动态验证码验证手机号的真实性和有效性;然后填写基本身份信息,并设置登录用户名IDa和登录密码PWa。
通过SM2算法产生私钥Sa和公钥Pa,将Sa加密存储于本地。
在一些实施例中,如前述的数据处理方法,在获取第一客户端上传的文件特征信息以及公钥之前,还包括:
获取第一客户端发送的账号登录信息;账号登录信息包括账号信息以及登录密码;
在预设的数据库中查询得到账号信息以及与账号信息对应的登录密码时,接收第一客户端的访问请求。
在一些实施例中,如前述的数据处理方法,将文件特征信息存储在对应的区块中,包括:
确定将文件哈希值以及存储位置加密信息存储至至少一个第二区块中的区块存储位置信息;
通过公钥对区块存储位置信息进行进行加密,得到加密区块存储位置信息;
根据加密区块存储位置信息生成与待传输文件对应的第三区块,并将加密区块存储位置信息存储于第三区块中。
在一些实施例中,如前述的数据处理方法,根据文件获取请求将文件特征信息发送至第二客户端,包括:
在区块链中查询得到与待传输文件对应的第三区块;
获取第三区块中的加密区块存储位置信息;
将加密区块存储位置信息发送至第二客户端;以使第二客户端根据第二私钥对加密区块存储位置信息进行解密后得到区块存储位置信息,并根据区块存储位置信息从第二区块中获取文件特征信息。
在一些实施例中,如前述的数据处理方法,还包括:
获取第二客户端的文件哈希值获取请求,以使第二客户端根据文件哈希值以及实际传输文件的哈希值判断实际传输文件与待传输文件是否为同一文件。
应用例:
采用如前述的方法,其中一种具体的应用方式可以是:提供一种基于SM2算法和区块链的BAAS服务平台,主要为信息交互的系统或者信息保存的系统提供信息保密服务。传统服务平台的系统框架中包含用户注册登录、信息的增删改查、信息交互、信息的上传下载。
可以将户注册登录进行了优化, 用户还有一份私钥,解决了以往数据库被攻击导致用户名和密码被盗的问题,将信息的增删改查进行了优化,解决了以往数据易被篡改,不安全可靠的问题。利用区块链的去中心化、匿名化优势, 替代传统服务平台。同时,使用国产加密算法为政府部门、商户等提供安全可控服务应用系统, 防止重要信息被泄露。
采用本申请实现的支持国密算法的区块链BAAS服务平台框架可以包括区块链、服务器端的信息系统、客户端的服务系统。
1 注册阶段
在本平台中,用户a进行身份认证首先需要进行注册,注册时需通过动态验证码验证手机号的真实性和有效性;然后填写基本身份信息,并设置登录用户名IDa和登录密码PWa。
2 登录阶段
注册成功后,用户通过用户名IDa和登录密码PWa进行登录,获得使用BAAS服务平台的权利。
3 使用阶段
用户进入服务平台后,可根据自己的项目内容与他人进行交互,例如互发消息,互传文件。
4 区块生成阶段
通过SM2算法产生私钥Sa和公钥Pa,将Sa加密存储于本地。通过SM3算法对用户上传的数据进行哈希运算得到信息哈希值H。利用SM2签名算法对H和时间戳Tr进行签名, 置M={H,Tr}, 之后得到数据签名值SIGr。将消息M={Pa,M,SIGr}发送至服务器端。
服务器系统计算数据的哈希值H,通过计算验证SIGr。若验证通过, 则通过SM3、RIPEMD160、BASE5等算法对Pa进行计算,获得区块地址Add,作为该数据的区块标识,在该区块体中记录用户的H、Tr和SIGr。每个数据块拥有唯一对应的区块。服务系统内部计算资源通过共识机制完成区块的生成。
5 数据上传下载阶段
5.1 数据上传
将用户I的公钥、加密文件序列和哈希文件序列一并上传到服务器端的信息系统。
服务器端的信息系统将哈希文件及对应的加密文件存储在多个不同的节点中,并使用用户公钥对存储地址进行加密,加密之后的地址只有与该公钥对应的私钥(例如:用户I的私钥)才可以解密,确保数据文件的绝对安全。
平台中存储节点使用加密后的存储节点的地址构造成区块体,并按照时间戳顺序将该区块链接到创始区块之后,形成数据对应的区块链。
5.2 数据下载
当存在一用户II需要获取用户I的文件时,其在登录信息系统后,从系统中获取需要下载的数据的加密地址序列。用户II用自己的私钥解析出加密地址序列,获得加密数据对应的存储节点。
用户II用公钥对节点地址进行加密并传给信息系统。然后用私钥解密该组数据,获得加密数据对应的节点地址,根据该地址信息,取回数据,并构造数据对象。
平台用用户I的公钥对数据对象进行加密,并将所有对象信息返回给用户II。用户端将获得的数据进行哈希处理,与一并返回的数据对象进行对比,如果一致,则说明文件未被篡改,否则返回错误数据给信息系统。如果数据被证明未被篡改,用户使用私钥对加密数据进行解密,并按照时间戳的顺序将解密后的数据还原成原始数据。
本实施例中的方法采用SM2算法生成公私钥对以及对信息进行签名, 并且用SM3算法对消息进行哈希运算,使得区块链BAAS服务平台运算速度更快, 运算效率更高。本发明的优势体现在如下几点中:
(1) 去中心化密态存储
本发明将可查询的信息通过国密算法加密后, 密态地存储在身份认证区块链上, 区块链去中心化的存储方式有效避免了中心化认证方式中存在的单点失败和多CA信任难的问题。
(2) 用户认证
本发明采取使用平台前先注册和登录的方式,减少无关人员对系统的干扰,使得BAAS服务平台比传统平台更安全。
(3) 抗重放攻击
每个区块的区块头包含的时间戳和随机数可以有效防止创建区块过程中的重放攻击。在认证过程中, 每次传送的消息中都加入了时间戳, 因此截获的消息不可重用。
(4) 防止攻击者离线破解信息
用户私钥加密存储在本地客户端, 即使攻击者获得用户公钥, 推算出相关信息的区块地址, 查询得到的信息仍是密文状态, 无法破解用户信息。
(5) 有效保护信息
采用动态二维码和区块链的认证方式, 用信息不会在网上直接传送。密态的二维码不会泄露个人隐私, 相比明文的信息具有更强的隐私保护功能。根据最小信息暴露原则,平台上传信息通过区块链上传的是信息存在的IP地址而非信息本身, 较传统信息传输方式有更好的信息保护性。
如图2所示,根据本申请另一方面的一个实施例,还提供了一种基于加密算法的区块链BAAS服务的数据处理装置,包括:
第一获取模块1,用于获取第一客户端上传的文件特征信息以及公钥;文件特征信息包括:文件哈希值以及待传输文件对应的存储位置加密信息;存储位置加密信息是通过公钥对待传输文件在第一客户端对应的第一本地端中的存储位置信息进行加密得到;
存储模块2,用于将文件特征信息存储在对应的第一区块中;
第二获取模块3,用于获取第二客户端发起的用于获取待传输文件的文件获取请求;
传输模块4,用于根据文件获取请求将文件特征信息发送至第二客户端,以使第二客户端按照第二私钥对存储位置加密信息进行解密得到存储位置信息,并根据存储位置信息得到实际传输文件;第二私钥与公钥对应设置。
具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
根据本申请的另一个实施例,还提供一种电子设备,包括:如图3所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的程序时,实现上述方法实施例的步骤。
上述电子设备提到的总线可以是外设部件互连标准(Peripheral ComponentInterconnect ,PCI) 总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行上述方法实施例的步骤。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于加密算法的区块链BAAS服务的数据处理方法,其特征在于,包括:
获取第一客户端上传的文件特征信息以及公钥;所述文件特征信息包括:文件哈希值以及待传输文件对应的存储位置加密信息;所述存储位置加密信息是通过所述公钥对所述待传输文件在第一客户端对应的第一本地端中的存储位置信息进行加密得到;
将所述文件特征信息存储在对应的第一区块中;
获取第二客户端发起的用于获取所述待传输文件的文件获取请求;
根据所述文件获取请求将所述文件特征信息发送至第二客户端,以使所述第二客户端按照第二私钥对存储位置加密信息进行解密得到所述存储位置信息,并根据所述存储位置信息得到实际传输文件;所述第二私钥与所述公钥对应设置。
2.根据权利要求1所述的数据处理方法,其特征在于,在将所述文件特征信息存储在对应的第一区块中,包括:
接收得到所述第一客户端发送的所述公钥、文件哈希值、时间戳以及数据签名值;所述公钥为所述第一客户端生成得到,所述文件哈希值为所述第一客户端通过预设的哈希算法对所述待传输文件进行哈希运算得到,所述时间戳为所述第一客户端根据获取所述待传输文件时间信息得到,所述数据签名值为所述第一客户端通过预设的公钥算法对所述文件哈希值和所述时间戳进行签名得到;
根据所述公钥得到对应的区块地址;
根据所述区块地址得到所述第一区块,所述第一区块的区块体中存储有所述文件哈希值、时间戳以及数据签名值。
3.根据权利要求1所述的数据处理方法,其特征在于,还包括:
获取所述第一客户端发送的注册请求以及注册信息;所述注册信息包括账号信息以及登录密码;
在按照所述注册请求对所述注册信息验证通过之后,生成与所述注册信息对应的公钥和第一私钥;所述公钥和第一私钥相互对应设置;
将所述私钥发送至所述第一客户端。
4.根据权利要求1所述的数据处理方法,其特征在于,在获取第一客户端上传的文件特征信息以及公钥之前,还包括:
获取所述第一客户端发送的账号登录信息;所述账号登录信息包括账号信息以及登录密码;
在预设的数据库中查询得到所述账号信息以及与所述账号信息对应的登录密码时,接收所述第一客户端的访问请求。
5.根据权利要求1所述的数据处理方法,其特征在于,将所述文件特征信息存储在对应的区块中,包括:
确定将所述文件哈希值以及存储位置加密信息存储至至少一个第二区块中的区块存储位置信息;
通过公钥对所述区块存储位置信息进行进行加密,得到加密区块存储位置信息;
根据所述加密区块存储位置信息生成与所述待传输文件对应的第三区块,并将所述加密区块存储位置信息存储于所述第三区块中。
6.根据权利要求5所述的数据处理方法,其特征在于,所述根据所述文件获取请求将所述文件特征信息发送至第二客户端,包括:
在区块链中查询得到与所述待传输文件对应的所述第三区块;
获取所述第三区块中的所述加密区块存储位置信息;
将所述加密区块存储位置信息发送至所述第二客户端;以使所述第二客户端根据所述第二私钥对所述加密区块存储位置信息进行解密后得到所述区块存储位置信息,并根据所述区块存储位置信息从所述第二区块中获取所述文件特征信息。
7.根据权利要求1所述的数据处理方法,其特征在于,还包括:
获取所述第二客户端的文件哈希值获取请求,以使所述第二客户端根据所述文件哈希值以及所述实际传输文件的哈希值判断所述实际传输文件与所述待传输文件是否为同一文件。
8.一种基于加密算法的区块链BAAS服务的数据处理装置,其特征在于,包括:
第一获取模块,用于获取第一客户端上传的文件特征信息以及公钥;所述文件特征信息包括:文件哈希值以及待传输文件对应的存储位置加密信息;所述存储位置加密信息是通过所述公钥对所述待传输文件在第一客户端对应的第一本地端中的存储位置信息进行加密得到;
存储模块,用于将所述文件特征信息存储在对应的第一区块中;
第二获取模块,用于获取第二客户端发起的用于获取所述待传输文件的文件获取请求;
传输模块,用于根据所述文件获取请求将所述文件特征信息发送至第二客户端,以使所述第二客户端按照第二私钥对存储位置加密信息进行解密得到所述存储位置信息,并根据所述存储位置信息得到实际传输文件;所述第二私钥与所述公钥对应设置。
9.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,所述处理器、通信接口和存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述计算机程序时,实现权利要求1-7任一项所述的数据处理方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行权利要求1-7任一项所述的数据处理方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010452112.6A CN113722749A (zh) | 2020-05-26 | 2020-05-26 | 基于加密算法的区块链baas服务的数据处理方法及装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010452112.6A CN113722749A (zh) | 2020-05-26 | 2020-05-26 | 基于加密算法的区块链baas服务的数据处理方法及装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN113722749A true CN113722749A (zh) | 2021-11-30 |
Family
ID=78671213
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010452112.6A Withdrawn CN113722749A (zh) | 2020-05-26 | 2020-05-26 | 基于加密算法的区块链baas服务的数据处理方法及装置 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN113722749A (zh) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114422237A (zh) * | 2022-01-18 | 2022-04-29 | 百度在线网络技术(北京)有限公司 | 数据传输方法及装置、电子设备和介质 |
| CN114417391A (zh) * | 2022-03-31 | 2022-04-29 | 浙江数秦科技有限公司 | 基于区块链的实验室论文存证系统 |
| CN114707166A (zh) * | 2022-04-11 | 2022-07-05 | 平安国际智慧城市科技股份有限公司 | 数据存储和读取方法、装置、设备及存储介质 |
| CN114945170A (zh) * | 2022-05-24 | 2022-08-26 | 福建金密网络安全测评技术有限公司 | 一种基于商用密码算法的移动端文件传输方法 |
| CN114707166B (zh) * | 2022-04-11 | 2025-10-10 | 平安国际智慧城市科技股份有限公司 | 数据存储和读取方法、装置、设备及存储介质 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109447631A (zh) * | 2018-09-19 | 2019-03-08 | 平安科技(深圳)有限公司 | 客户端、服务器、基于区块链的交易方法和存储介质 |
| CN109978543A (zh) * | 2019-04-03 | 2019-07-05 | 浙江鲸腾网络科技有限公司 | 一种合同签署的方法、装置、电子设备及存储介质 |
| CN110414203A (zh) * | 2019-07-26 | 2019-11-05 | 郑州大学 | 一种基于区块链技术的互联网医疗身份认证方法 |
-
2020
- 2020-05-26 CN CN202010452112.6A patent/CN113722749A/zh not_active Withdrawn
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109447631A (zh) * | 2018-09-19 | 2019-03-08 | 平安科技(深圳)有限公司 | 客户端、服务器、基于区块链的交易方法和存储介质 |
| CN109978543A (zh) * | 2019-04-03 | 2019-07-05 | 浙江鲸腾网络科技有限公司 | 一种合同签署的方法、装置、电子设备及存储介质 |
| CN110414203A (zh) * | 2019-07-26 | 2019-11-05 | 郑州大学 | 一种基于区块链技术的互联网医疗身份认证方法 |
Non-Patent Citations (1)
| Title |
|---|
| 吴邱涵 等: "基于SM2算法和区块链的移动端身份认证协议设计", 网络与信息安全学报, vol. 4, no. 9, 30 September 2018 (2018-09-30), pages 61 - 65 * |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114422237A (zh) * | 2022-01-18 | 2022-04-29 | 百度在线网络技术(北京)有限公司 | 数据传输方法及装置、电子设备和介质 |
| CN114422237B (zh) * | 2022-01-18 | 2023-08-18 | 百度在线网络技术(北京)有限公司 | 数据传输方法及装置、电子设备和介质 |
| CN114417391A (zh) * | 2022-03-31 | 2022-04-29 | 浙江数秦科技有限公司 | 基于区块链的实验室论文存证系统 |
| CN114417391B (zh) * | 2022-03-31 | 2022-07-15 | 浙江数秦科技有限公司 | 基于区块链的实验室论文存证系统 |
| CN114707166A (zh) * | 2022-04-11 | 2022-07-05 | 平安国际智慧城市科技股份有限公司 | 数据存储和读取方法、装置、设备及存储介质 |
| CN114707166B (zh) * | 2022-04-11 | 2025-10-10 | 平安国际智慧城市科技股份有限公司 | 数据存储和读取方法、装置、设备及存储介质 |
| CN114945170A (zh) * | 2022-05-24 | 2022-08-26 | 福建金密网络安全测评技术有限公司 | 一种基于商用密码算法的移动端文件传输方法 |
| CN114945170B (zh) * | 2022-05-24 | 2024-10-22 | 福建金密网络安全测评技术有限公司 | 基于商用密码算法的移动端文件传输方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11088850B2 (en) | Retrieving public data for blockchain networks using highly available trusted execution environments | |
| JP6547079B1 (ja) | 登録・認可方法、装置及びシステム | |
| JP6528008B2 (ja) | 秘密共有のための楕円曲線暗号化を利用したパーソナルデバイスセキュリティ | |
| CN109492424B (zh) | 数据资产管理方法、数据资产管理装置及计算机可读介质 | |
| CN115811412B (zh) | 一种通信方法、装置、sim卡、电子设备和终端设备 | |
| CN109450843B (zh) | 一种基于区块链的ssl证书管理方法及系统 | |
| JP2009529832A (ja) | 発見不可能、即ち、ブラック・データを使用するセキュアなデータ通信 | |
| JP2020530726A (ja) | サプライチェーン資産管理を保護するアプリケーションを有する遠隔サーバへのnfcタグ認証 | |
| JP5944437B2 (ja) | 耐タンパ性トークンを用いてセキュアなトランザクションを達成するための効率的な技術 | |
| CN106302312A (zh) | 获取电子文件的方法及装置 | |
| CN107920052B (zh) | 一种加密方法及智能装置 | |
| CN114091045B (zh) | 保护隐私的信息查询方法、装置、系统、设备及存储介质 | |
| CN109286490A (zh) | 支持密态数据去重和完整性验证方法及系统 | |
| CN105610872B (zh) | 物联网终端加密方法和物联网终端加密装置 | |
| CN115883154B (zh) | 访问凭证的颁发方法、基于区块链的数据访问方法及装置 | |
| CN114697048B (zh) | 基于区块链的碳排放数据共享方法和系统 | |
| CN113722749A (zh) | 基于加密算法的区块链baas服务的数据处理方法及装置 | |
| US10015143B1 (en) | Methods for securing one or more license entitlement grants and devices thereof | |
| CN114268447B (zh) | 一种文件传输方法、装置、电子设备和计算机可读介质 | |
| JP6533542B2 (ja) | 秘密鍵複製システム、端末および秘密鍵複製方法 | |
| US10764260B2 (en) | Distributed processing of a product on the basis of centrally encrypted stored data | |
| CN115865320A (zh) | 一种基于区块链的安全服务管理方法及系统 | |
| CN104811421A (zh) | 基于数字版权管理的安全通信方法及装置 | |
| CN106257859A (zh) | 一种密码使用方法 | |
| CN104780049B (zh) | 一种安全读写数据的方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| WW01 | Invention patent application withdrawn after publication |
Application publication date: 20211130 |
|
| WW01 | Invention patent application withdrawn after publication |