CN116781390A - 数据传输方法、装置、设备及存储介质 - Google Patents

数据传输方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116781390A
CN116781390A CN202310883684.3A CN202310883684A CN116781390A CN 116781390 A CN116781390 A CN 116781390A CN 202310883684 A CN202310883684 A CN 202310883684A CN 116781390 A CN116781390 A CN 116781390A
Authority
CN
China
Prior art keywords
message
data
key
public key
ciphertext
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.)
Pending
Application number
CN202310883684.3A
Other languages
English (en)
Inventor
黄梦芝
赵思远
张晓京
叶可可
方有轩
曹树鹏
代玉星
刘舒婷
朱昊然
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Information Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Information Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202310883684.3A priority Critical patent/CN116781390A/zh
Publication of CN116781390A publication Critical patent/CN116781390A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本发明公开了一种数据传输方法、装置、设备及存储介质,包括:在接收到数据上传方提交的消息明文时,通过加密密钥将消息明文加密为数据密文;根据与消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;通过链账户公钥对加密密钥进行加密,生成密钥密文;根据数据密文、密钥密文和接收账户信息生成加密消息报文,并将加密消息报文上传至目标区块链。通过加密密钥和链账户公钥对传输的数据进行加密,提高了数据传输的安全性。

Description

数据传输方法、装置、设备及存储介质
技术领域
本发明涉及数据隐私保护技术领域,尤其涉及一种数据传输方法、装置、设备及存储介质。
背景技术
目前,一般使用局部随机化的方法对传输的数据进行加密,该方法虽然可以减少信息损失量,但是因为采用局部随机化方法,无法对隐私数据进行全面保护,数据传输过程中的安全性较低。
发明内容
本发明的主要目的在于提供了一种数据传输方法、装置、设备及存储介质,旨在解决现有技术中数据传输的安全性低的技术问题。
为实现上述目的,本发明提供了一种数据传输方法,所述方法包括以下步骤:
在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文;
根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;
通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文;
根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。
可选地,所述在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文,包括:
在接收到数据上传方提交的消息明文时,随机生成对称加密密钥;
通过所述对称加密密钥对所述消息明文加密,生成数据密文。
可选地,所述通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文,包括:
将所述链账户公钥转换为非对称加密公钥;
通过所述非对称加密公钥对所述加密密钥进行加密,生成密钥密文。
可选地,所述将所述链账户公钥转换为非对称加密公钥,包括:
对所述链账户公钥进行解析,获得所述链账户公钥的公钥数据;
根据所述公钥数据和预设公钥标识生成所述链账户公钥对应的非对称加密公钥。
可选地,所述根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链,包括:
根据所述密钥密文和所述接收账户信息生成报文表头,并将所述报文表头上传至所述目标区块链的智能合约;
根据所述数据密文生成报文主体,并将所述报文主体存储至所述目标区块链的交易日志。
可选地,所述根据所述数据密文生成报文主体,并将所述报文主体存储至所述目标区块链的交易日志之后,还包括:
通过数据协同模块将所述报文表头和所述报文主体整合为加密消息报文后同步至链下数据库存储;
在接收到所述数据接收方的报文查询请求时,根据所述接收账户信息在所述链下数据库中查询加密消息报文;
对所述加密消息报文进行解密生成消息明文,并将所述消息明文返回至所述数据接收方。
可选地,所述对所述加密消息报文进行解密生成消息明文,并将所述消息明文返回至所述数据接收方,包括:
通过所述数据接收方的预置私钥对所述加密消息报文中的报文表头进行解密,获得解密密钥;
通过所述解密密钥对所述加密消息报文中的报文主体解密,获得消息明文,并将所述消息明文返回至所述数据接收方。
此外,为实现上述目的,本发明还提出一种数据传输装置,所述装置包括:
第一加密模块,用于在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文;
获取模块,用于根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;
第二加密模块,用于通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文;
生成模块,用于根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。
此外,为实现上述目的,本发明还提出一种数据传输设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据传输程序,所述数据传输程序配置为实现如上文所述的数据传输方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有数据传输程序,所述数据传输程序被处理器执行时实现如上文所述的数据传输方法的步骤。
本发明在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文;根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文;根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。本发明通过加密密钥将消息明文加密为数据密文,通过数据接收方的链账户公钥将加密密钥加密为密钥密文,将根据数据密文、密钥密文和加密密钥生成的加密消息报文上传至区块链,通过加密密钥和链账户公钥对传输的数据进行加密,提高了数据传输的安全性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的数据传输设备的结构示意图;
图2为本发明数据传输方法第一实施例的流程示意图;
图3为本发明数据传输方法第二实施例的流程示意图;
图4为本发明数据传输方法第三实施例的流程示意图;
图5为本发明数据传输方法一实施例中数据发送系统的框架示意图;
图6为本发明数据传输方法一实施例中数据传输的示意图;
图7为本发明数据传输装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的数据传输设备结构示意图。
如图1所示,该数据传输设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对数据传输设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据传输程序。
在图1所示的数据传输设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;处理器1001、存储器1005可以设置在数据传输设备中,所述数据传输设备通过处理器1001调用存储器1005中存储的数据传输程序,并执行本发明实施例提供的数据传输方法。
本发明实施例提供了一种数据传输方法,参照图2,图2为本发明数据传输方法第一实施例的流程示意图。
本实施例中,所述数据传输方法包括以下步骤:
步骤S10:在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文。
需要说明的是,本实施例的执行主体可以是一种具有数据处理、网络通信以及程序运行功能的计算服务设备,例如平板电脑、个人电脑、手机等,或者是一种能够实现上述功能的电子设备、数据传输设备、软件开发工具包等。以下以软件开发工具包为例,对本实施例及下述各实施例进行举例说明。
可以理解的是,数据上传方可以是需要发送数据的一方;消息明文可以是需要发送的数据的明文;加密密钥可以是系统生成的用于对消息明文加密的密钥;数据密文可以是将消息明文加密后生成的密文。
步骤S20:根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥。
可以理解的是,接收账户信息可以是接收消息明文账户的信息,接收账户信息可以是数据上传方提交的;目标区块链可以是EOS区块链或其他具有相同或相似功能的区块链,EOS区块链相比于其他区块链系统,提供了一个可读且容易记忆的账户名,作为区块链系统使用者的账户地址;EOS区块链的账户体系实现了一个去中心化的类PKI体系;使用者通过账户名查询到对应的公钥用于验证签名;同时账户持有者可以通过EOS区块链系统随时更新自己的公钥,降低了公钥维护成本;链账户公钥可以是目标区块链上存储的与接收方账户信息对应的公钥。
步骤S30:通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文。
可以理解的是,密钥密文可以是对加密密钥加密后生成的密文。
在具体实施中,通过链账户公钥对加密密钥进行非对称加密,生成密钥密文。
步骤S40:根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。
在具体实施中,数据上传方提交消息明文和接收账户信息,软件开发工具包生成加密密钥将消息明文加密成数据密文,根据接收账户信息在EOS区块链上查询数据接收方的链账户公钥,通过链账户公钥将加密密钥加密成密钥密文,根据数据密文、密钥密文和接收账户信息生成加密消息报文,将加密消息报文上传至EOS区块链。
进一步地,为了提高数据传输的安全性,所述步骤S10包括:在接收到数据上传方提交的消息明文时,随机生成对称加密密钥;通过所述对称加密密钥对所述消息明文加密,生成数据密文。
可以理解的是,对消息明文进行对称加密,对称加密的方式包括但不限于:AES(Advanced Encryption Standard)对称加密和SM4对称加密。
在具体实施中,数据上传方提交消息明文和数据接收方的用户名,软件开发工具包随机生成AES或SM4的对称加密密钥,使用对称加密密钥对消息明文加密为数据密文,根据用户名在目标区块链获取对应的链账户公钥,使用链账户公钥将对称加密密钥加密为密钥密文,将接收方的用户名和密钥密文作为报文表头,将数据密文作为报文主体,组成加密消息报文后上传至区块链。
本实施例在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文;根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文;根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。本实施例通过加密密钥将消息明文加密为数据密文,通过数据接收方的链账户公钥将加密密钥加密为密钥密文,将根据数据密文、密钥密文和加密密钥生成的加密消息报文上传至区块链,通过加密密钥和链账户公钥对传输的数据进行加密,提高了数据传输的安全性。
参考图3,图3为本发明数据传输方法第二实施例的流程示意图。
基于上述第一实施例,在本实施例中,所述步骤S30包括:
步骤S301:将所述链账户公钥转换为非对称加密公钥。
作为一种实现方式,非对称加密的方式可以是ECC(Elliptic CurveCryptography)加密。
步骤S302:通过所述非对称加密公钥对所述加密密钥进行加密,生成密钥密文。
在具体实施中,先将链账户公钥转换为非对称加密公钥,通过非对称加密公钥对对称加密的加密密钥进行加密,生成密钥密文。
进一步地,为了将链账户公钥转换为用于进行非对称加密的公钥,以提高数据传输的安全性,所述步骤S301包括:对所述链账户公钥进行解析,获得所述链账户公钥的公钥数据;根据所述公钥数据和预设公钥标识生成所述链账户公钥对应的非对称加密公钥。
可以理解的是,公钥数据可以是链账户公钥的数据;预设公钥标识包括:公钥类型标识和公钥算法标识。
在具体实施中,对链账户公钥进行解析,获得链账户公钥的公钥数据,将该公钥数据添加至非对称加密公钥的公钥数据中,并为非对称加密公钥添加公钥类型标识和公钥算法标识,生成链账户公钥对应的非对称加密公钥。
需要说明的是,本实施例提供对称加密和非对称加密,能够向上链方提供不同的数据加密选项,提高了数据传输的安全性。
在一个例子中,链账户公钥可以是EOS公钥,非对称加密可以是ECC加密,在使用EOS公钥进行加密时,需要将EOS公钥转换为ECC公钥,EOS公钥的格式为WIF(wallet importformat)格式,WIF格式的公钥是一个对椭圆曲线点(x,y)中y值进行BASE58编码后获得的值,而ECC公钥的格式一般为PEM格式,PEM格式的公钥包含类型标识(Type Identifier)、公钥算法标识(Public Key Algorithm Identifier)、参数信息(Parameters)、公钥数据(Public Key Data)等信息,在使用EOS公钥进行非对称加密时,需要将WIF格式的公钥转换为PEM格式的公钥,具体的,公钥转换的过程包括:1.BASE58解码:将WIF格式的EOS公钥进行BASE58解码,得到椭圆曲线点的y值;2.填充参数信息:EOS公钥使用了Secp256k1格式,需要将基点G、曲线系数a、b,曲线阶数n放入参数信息中;3.获得椭圆曲线点信息:通过参数信息和y值,获得椭圆曲线点的x值,将(x,y)放入ECC公钥的公钥数据中;4.添加类型标识:在PEM格式的ECC公钥中添加类型标识,指示该公钥是ECC公钥;5.添加公钥算法标识:在PEM格式的ECC公钥中添加公钥算法标识,指示使用的是Secp256k1曲线;6.格式转换:将构建好的公钥数据结构转换为PEM格式,形成完整的PEM格式ECC公钥。
需要说明的是,ECC非对称加密在核心加密算法的基础之上,实现了动态隐私加密策略,动态隐私加密策略基于对称加密算法和非对称加密算法实现,动态隐私加密策略可满足单用户对单用户和单用户对多用户的数据分发场景,在单用户对多用户的场景下:在数据上传方提交消息明文并添加多个接收方账号的情况下,软件开发工具包随机生成对称加密的加密密钥,并使用加密密钥将消息明文加密为数据密文,根据各接收方账号在EOS区块链上获取对应的链账户公钥,将各接收方账号对应的链账户公钥转换为对应的对称加密公钥,通过各对称加密公钥对加密密钥进行加密,获得接收方账号对应的密钥密文,将接收方账号、数据密文和对应的密钥密文组成各数据接收方对应的加密消息报文,并将各加密消息报文上传至EOS区块链。
本实施例将所述链账户公钥转换为非对称加密公钥;通过所述非对称加密公钥对所述加密密钥进行加密,生成密钥密文。本实施例将链账户公钥转换为进行非对称加密的非对称加密公钥,使用非对称加密公钥将对称加密的加密密钥加密成密钥密文,通过对称加密和非对称加密提高了数据传输的安全性,并且能够适用于多种数据分发场景。
参考图4,图4为本发明数据传输方法第三实施例的流程示意图。
基于上述各实施例,在本实施例中,所述步骤S40,包括:
步骤S401:根据所述密钥密文和所述接收账户信息生成报文表头,并将所述报文表头上传至所述目标区块链的智能合约。
可以理解的是,智能合约可以用于存储报文;报文表头可以是记录报文信息的数据头。
步骤S402:根据所述数据密文生成报文主体,并将所述报文主体存储至所述目标区块链的交易日志。
可以理解的是,报文主体可以是记录传输数据的主体。
在具体实施中,软件开发工具包根据密钥密文和接收账户信息生成报文表头,将报文表头存储至EOS区块链的智能合约中,将数据密文作为报文主体,并将报文主体存储至EOS区块链的交易日志中。
需要说明的是,EOS区块链是基于EOS的账户和密钥算法来实现,一般情况下,平台方需要为报文存储开发对应的智能合约,所有使用者的加密消息报文都会上传到该智能合约中,但是加密消息报文所需要的存储空间较大,若在智能合约表中全量存储加密消息报文,会导致智能合约的合约状态表占用较大的存储空间,导致智能合约难以维护,为了降低智能合约的存储空间占用量,以降低智能合约的维护难度,本实施例在智能合约中只存储报文表头,以记录报文的收发记录,而报文主体将存在EOS交易日志中,具体的,完整的加密消息报文中包含了from(发送者账号)、receiver(接收者账号)、receiver_key(接收者EOS公钥)、encrypted_key(加密密钥)、encrypted_data(数据密文),其中encrypted_data(数据密文)是加密消息报文的主体,会占据大量的存储空间,为减少链上智能合约的数据表存储空间的占用,只会将报文表头的数据:from(发送者账号)、receiver(接收者账号)、receiver_key(接收者EOS公钥)和encrypted_key(加密密钥)提交到智能合约接口,从而将报文表头存储到智能合约中,而encrypted_data(数据密文)只会存储在交易日志中,最后再将报文表头和报文主体组成完整的加密消息报文后进行链下持久化存储。
进一步地,为了提高数据传输的安全性,所述步骤S402之后,还包括:通过数据协同模块将所述报文表头和所述报文主体整合为加密消息报文后同步至链下数据库存储;在接收到所述数据接收方的报文查询请求时,根据所述接收账户信息在所述链下数据库中查询加密消息报文;对所述加密消息报文进行解密生成消息明文,并将所述消息明文返回至所述数据接收方。
可以理解的是,数据协同模块可以是用于将报文表头和报文主体组成完整的加密消息报文进行链下持久化存储的模块;报文查询请求可以是查询加密消息报文的请求。
在具体实施中,通过数据协同模块将智能合约中的存储的报文表头和交易日志中存储的报文主体组成完整的加密消息报文,通过数据协同模块将加密消息报文同步到链下进行持久化存储,并构建链下持久化数据API,用于使用户查询获取对应的密文,根据接收账户信息在链下数据库中查询对应的加密消息报文,将加密消息报文加密为消息明文后返回至数据接收方。
进一步地,为了提高数据传输的安全性,所述对所述加密消息报文进行解密生成消息明文,并将所述消息明文返回至所述数据接收方,包括:通过所述数据接收方的预置私钥对所述加密消息报文中的报文表头进行解密,获得解密密钥;通过所述解密密钥对所述加密消息报文中的报文主体解密,获得消息明文,并将所述消息明文返回至所述数据接收方。
可以理解的是,预设私钥可以是数据接收方的与非对称加密公钥对应的私钥。
在一个例子中,参照图5,图5为数据发送系统的框架示意图,该系统包括JAVASDK(Software Development Kit)、EOS区块链和监控系统,JAVA SDK在接收到用户提交的消息明文和接收者账号的情况下,软件开发工具包随机生成AES或SM4的加密密钥,对消息明文进行AES对称加密或SM4对称加密,生成数据密文,根据接收者账号在EOS区块链的账户中查询获取对应的EOS公钥,将EOS公钥转换为进行非对称加密的ECC公钥,使用ECC公钥将加密密钥加密为密钥密文,将接收者账号和密钥密文作为报文表头上传至EOS区块链的智能合约,将数据密文作为报文主体存储至EOS区块链的交易日志中,通过数据协同模块将报文表头和报文主体组成完整的加密消息报文进行链下持久化存储,并提供链下存储API,在接收到报文查询请求的情况下,根据接收账户信息通过链下存储API查询对应的加密消息报文,使用预置私钥对密钥密文进行解密获得解密密钥,使用解密密钥对数据密文进行解密获得消息明文,并将消息明文返回至数据接收方,监控系统可以根据报文表头监控用户的信息收发记录。
在另一个例子中,参照图6,图6为数据传输的示意图,假设A为数据上传方,B为数据接收方,A通过SDK提交消息明文和接收用户B的用户名,SDK中随机生成AES或SM4对称加密密钥,使用对称加密密钥对消息明文进行AES或SM4对称加密获得数据密文,根据用户B的用户名在EOS区块链的账户模块查找对应EOS公钥,将EOS公钥转换为ECC公钥,使用ECC公钥将对称加密密钥加密为密钥密文,将用户B账户名、密钥密文和数据密文封装成加密消息报文,将加密消息报文上链存储至EOS区块链的智能合约,并将智能合约的数据同步到链下存储,对链下存储的数据进行加密消息监听,根据用户B的用户名查询获取对应的加密消息报文,使用用户B的预置私钥对密钥密文进行解密,获得对称加密的解密密钥,使用解密密钥将数据密文解密为消息明文后返回至用户B。
本实施例根据所述密钥密文和所述接收账户信息生成报文表头,并将所述报文表头上传至所述目标区块链的智能合约;根据所述数据密文生成报文主体,并将所述报文主体存储至所述目标区块链的交易日志。本实施例将报文表头存储到智能合约,将报文主体存储到交易日志,减少了链下存储的压力,降低了智能合约的维护难度。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有数据传输程序,所述数据传输程序被处理器执行时实现如上文所述的数据传输方法的步骤。
参照图7,图7为本发明数据传输装置第一实施例的结构框图。
如图7所示,本发明实施例提出的数据传输装置包括:
第一加密模块10,用于在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文;
获取模块20,用于根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;
第二加密模块30,用于通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文;
生成模块40,用于根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。
本实施例在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文;根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文;根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。本实施例通过加密密钥将消息明文加密为数据密文,通过数据接收方的链账户公钥将加密密钥加密为密钥密文,将根据数据密文、密钥密文和加密密钥生成的加密消息报文上传至区块链,通过加密密钥和链账户公钥对传输的数据进行加密,提高了数据传输的安全性。
基于本发明上述数据传输装置第一实施例,提出本发明数据传输装置的第二实施例。
在本实施例中,第一加密模块10,还用于在接收到数据上传方提交的消息明文时,随机生成对称加密密钥;通过所述对称加密密钥对所述消息明文加密,生成数据密文。
第二加密模块30,还用于将所述链账户公钥转换为非对称加密公钥;通过所述非对称加密公钥对所述加密密钥进行加密,生成密钥密文。
第二加密模块30,还用于对所述链账户公钥进行解析,获得所述链账户公钥的公钥数据;根据所述公钥数据和预设公钥标识生成所述链账户公钥对应的非对称加密公钥。
所述生成模块40,还用于根据所述密钥密文和所述接收账户信息生成报文表头,并将所述报文表头上传至所述目标区块链的智能合约;根据所述数据密文生成报文主体,并将所述报文主体存储至所述目标区块链的交易日志。
所述生成模块40,还用于通过数据协同模块将所述报文表头和所述报文主体整合为加密消息报文后同步至链下数据库存储;在接收到所述数据接收方的报文查询请求时,根据所述接收账户信息在所述链下数据库中查询加密消息报文;对所述加密消息报文进行解密生成消息明文,并将所述消息明文返回至所述数据接收方。
所述生成模块40,还用于通过所述数据接收方的预置私钥对所述加密消息报文中的报文表头进行解密,获得解密密钥;通过所述解密密钥对所述加密消息报文中的报文主体解密,获得消息明文,并将所述消息明文返回至所述数据接收方。
本发明数据传输装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种数据传输方法,其特征在于,所述方法包括:
在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文;
根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;
通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文;
根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。
2.如权利要求1所述的方法,其特征在于,所述在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文,包括:
在接收到数据上传方提交的消息明文时,随机生成对称加密密钥;
通过所述对称加密密钥对所述消息明文加密,生成数据密文。
3.如权利要求1所述的方法,其特征在于,所述通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文,包括:
将所述链账户公钥转换为非对称加密公钥;
通过所述非对称加密公钥对所述加密密钥进行加密,生成密钥密文。
4.如权利要求3所述的方法,其特征在于,所述将所述链账户公钥转换为非对称加密公钥,包括:
对所述链账户公钥进行解析,获得所述链账户公钥的公钥数据;
根据所述公钥数据和预设公钥标识生成所述链账户公钥对应的非对称加密公钥。
5.如权利要求1-4任一项所述的方法,其特征在于,所述根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链,包括:
根据所述密钥密文和所述接收账户信息生成报文表头,并将所述报文表头上传至所述目标区块链的智能合约;
根据所述数据密文生成报文主体,并将所述报文主体存储至所述目标区块链的交易日志。
6.如权利要求5所述的方法,其特征在于,所述根据所述数据密文生成报文主体,并将所述报文主体存储至所述目标区块链的交易日志之后,还包括:
通过数据协同模块将所述报文表头和所述报文主体整合为加密消息报文后同步至链下数据库存储;
在接收到所述数据接收方的报文查询请求时,根据所述接收账户信息在所述链下数据库中查询加密消息报文;
对所述加密消息报文进行解密生成消息明文,并将所述消息明文返回至所述数据接收方。
7.如权利要求6所述的方法,其特征在于,所述对所述加密消息报文进行解密生成消息明文,并将所述消息明文返回至所述数据接收方,包括:
通过所述数据接收方的预置私钥对所述加密消息报文中的报文表头进行解密,获得解密密钥;
通过所述解密密钥对所述加密消息报文中的报文主体解密,获得消息明文,并将所述消息明文返回至所述数据接收方。
8.一种数据传输装置,其特征在于,所述装置包括:
第一加密模块,用于在接收到数据上传方提交的消息明文时,通过加密密钥将所述消息明文加密为数据密文;
获取模块,用于根据与所述消息明文对应的接收账户信息在目标区块链获取数据接收方的链账户公钥;
第二加密模块,用于通过所述链账户公钥对所述加密密钥进行加密,生成密钥密文;
生成模块,用于根据所述数据密文、所述密钥密文和所述接收账户信息生成加密消息报文,并将所述加密消息报文上传至所述目标区块链。
9.一种数据传输设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据传输程序,所述数据传输程序配置为实现如权利要求1至7中任一项所述的数据传输方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有数据传输程序,所述数据传输程序被处理器执行时实现如权利要求1至7任一项所述的数据传输方法的步骤。
CN202310883684.3A 2023-07-18 2023-07-18 数据传输方法、装置、设备及存储介质 Pending CN116781390A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310883684.3A CN116781390A (zh) 2023-07-18 2023-07-18 数据传输方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310883684.3A CN116781390A (zh) 2023-07-18 2023-07-18 数据传输方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116781390A true CN116781390A (zh) 2023-09-19

Family

ID=87991364

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310883684.3A Pending CN116781390A (zh) 2023-07-18 2023-07-18 数据传输方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116781390A (zh)

Similar Documents

Publication Publication Date Title
US9485096B2 (en) Encryption / decryption of data with non-persistent, non-shared passkey
CN107801165B (zh) 业务短信推送方法、装置、计算机设备和存储介质
US8396218B2 (en) Cryptographic module distribution system, apparatus, and program
CN101247232B (zh) 数据交换传输中基于数字签名的加密技术方法
KR20180029695A (ko) 블록체인을 이용한 데이터 전송 시스템 및 방법
CN113067699B (zh) 基于量子密钥的数据共享方法、装置和计算机设备
EP1741224A1 (en) System and method for generating reproducible session keys
JP2009529714A (ja) 復号可能かつ検索可能な暗号化のための方法およびシステム
CN101720071A (zh) 基于安全sim卡的短消息两阶段加密传输和安全存储方法
CN102457561B (zh) 数据访问方法及使用该数据访问方法的设备
CN106453426B (zh) 基于密钥时空碎片化存储的对称加解密方法及系统
CN105450413A (zh) 一种密码的设置方法、装置和系统
KR102567737B1 (ko) 보안 메시지 서비스 제공 방법 및 이를 위한 장치
CN111192050B (zh) 一种数字资产私钥存储提取方法及装置
CN114257562B (zh) 即时通讯方法、装置、电子设备和计算机可读存储介质
CN102546597B (zh) 通讯终端消息加密传输的方法、通讯终端、服务器及系统
CN111416702B (zh) 数据传输方法及数据传输系统、计算机可读存储介质
KR101922965B1 (ko) 키 확장 방식을 적용한 묵시적 인증서 발급 방법 및 시스템
CN113672955B (zh) 一种数据处理方法、系统及装置
KR101329789B1 (ko) 모바일 디바이스의 데이터베이스 암호화 방법
CN116781390A (zh) 数据传输方法、装置、设备及存储介质
CN113569259A (zh) 一种数据共享方法、系统、设备及计算机可读存储介质
CN112954388A (zh) 一种数据文件的获取方法、装置、终端设备和存储介质
CN114258013A (zh) 数据加密方法、设备和存储介质
CN109274765B (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