CN115603891A - 自主可控的密文数据安全计算方法和系统 - Google Patents
自主可控的密文数据安全计算方法和系统 Download PDFInfo
- Publication number
- CN115603891A CN115603891A CN202211200150.8A CN202211200150A CN115603891A CN 115603891 A CN115603891 A CN 115603891A CN 202211200150 A CN202211200150 A CN 202211200150A CN 115603891 A CN115603891 A CN 115603891A
- Authority
- CN
- China
- Prior art keywords
- data
- result
- ciphertext
- decryption
- ver
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种自主可控的密文数据安全计算方法和系统及其电子设备,包括:令数据所有者对明文数据mi进行同态加密,得到密文数据ci;令数据使用方根据所述密文数据ci和选取的随机数,通过智能合约计算得到可验证秘钥结果的密文cver,并通过智能合约向所述数据所有者发起解密请求;令所述数据所有者根据所述可验证秘钥结果的密文cver,使用同态解密得到明文mver作为解密结果,并将所述解密结果发送给所述数据使用方;令所述数据使用方根据所述解密结果,对数据所有者是否正确解密进行判断。本发明通过由数据所有者完成结果数据解密的方式,保证数据所有者对于数据使用的监督权,并通过增加随机数的方式,解决了解密方伪造解密结果判断的问题。
Description
技术领域
本发明涉及加密技术领域,具体地,涉及自主可控的密文数据安全计算方法和系统及其电子设备。
背景技术
专利文献CN107592195A公开了一种准全同态密文数据操作方法和系统,部署在本地数据中心的私有云平台,建立本地数据中心与第三方公有云平台的连接;采用分类字段扩展模式,对数值型数据和字符型数据进行字段扩展,结合基于功能需求的密文服务策略实现对数值型数据的准全同态密文常规算术运算。
现有同态密文计算方案中,大多数计算使用可信第三方公钥进行加密,需要用户信任一个第三方。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种自主可控的密文数据安全计算方法和系统及其电子设备。
根据本发明提供的一种自主可控的密文数据安全计算方法,包括:
步骤S1:令数据所有者对明文数据mi进行同态加密,得到密文数据ci;
步骤S2:令数据使用方根据所述密文数据ci和选取的随机数,通过智能合约计算得到可验证秘钥结果的密文cver,并通过智能合约向所述数据所有者发起解密请求;
步骤S3:令所述数据所有者根据所述可验证秘钥结果的密文cver,使用同态解密得到明文mver作为解密结果,并将所述解密结果发送给所述数据使用方;
步骤S4:令所述数据使用方根据所述解密结果,对数据所有者是否正确解密进行判断。
优选地,所述步骤S1包括:
步骤S1.1:数据所有者生成对应的同态加密公私钥(PKA,SKA);其中,PKA表示数据所有者生成的公钥,SKA表示数据所有者生成的私钥;
优选地,所述步骤S2包括:
步骤S2.1:数据使用方选取计算函数f()与参与计算的密文数据ci;
步骤S2.2:数据使用方通过智能合约执行计算得到密文计算结果cresult,其中,cresult=f(ci);
步骤S2.3:数据使用方选取一个素数随机数a,与一个随机数b,通过智能合约计算,得到可验证密钥结果的密文cver,其中,cver=E(acresult+b);然后,通过智能合约向数据所有者发起解密请求。
优选地,在所述步骤S3中,数据所有者接收到解密请求,得到可验证密钥结果的密文cver,使用同态解密通过私钥解密得到明文mver,其中,将解密结果发送给数据使用方;其中,表示使用数据所有者生成的私钥SKA对密文数据进行解密;
在所述步骤S4中,数据使用方得到解密结果mver,验证mi=(mver-b)/a是否为整数;如果结果为整数,则认为数据所有者正确解密结果mi=(mver-b)/a;否则,则认为数据所有者未正确解密结果,数据使用方没有得到正确结果。
根据本发明提供的一种自主可控的密文数据安全计算系统,包括:
模块M1:令数据所有者对明文数据mi进行同态加密,得到密文数据ci;
模块M2:令数据使用方根据所述密文数据ci和选取的随机数,通过智能合约计算得到可验证秘钥结果的密文cver,并通过智能合约向所述数据所有者发起解密请求;
模块M3:令所述数据所有者根据所述可验证秘钥结果的密文cver,使用同态解密得到明文mver作为解密结果,并将所述解密结果发送给所述数据使用方;
模块M4:令所述数据使用方根据所述解密结果,对数据所有者是否正确解密进行判断。
优选地,所述模块M1包括:
模块M1.1:数据所有者生成对应的同态加密公私钥(PKA,SKA);其中,PKA表示数据所有者生成的公钥,SKA表示数据所有者生成的私钥;
优选地,所述模块M2包括:
模块M2.1:数据使用方选取计算函数f()与参与计算的密文数据ci;
模块M2.2:数据使用方通过智能合约执行计算得到密文计算结果cresult,其中,cresult=f(ci);
模块M2.3:数据使用方选取一个素数随机数a,与一个随机数b,通过智能合约计算,得到可验证密钥结果的密文cver,其中,cver=E(acresult+b);然后,通过智能合约向数据所有者发起解密请求。
优选地,在所述模块M3中,数据所有者接收到解密请求,得到可验证密钥结果的密文cver,使用同态解密通过私钥解密得到明文mver,其中,将解密结果发送给数据使用方;其中,表示使用数据所有者生成的私钥SKA对密文数据进行解密;
在所述模块M4中,数据使用方得到解密结果mver,验证mi=(mver-b)/a是否为整数;如果结果为整数,则认为数据所有者正确解密结果mi=(mver-b)/a;否则,则认为数据所有者未正确解密结果,数据使用方没有得到正确结果。
根据本发明提供的一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序被处理器执行时实现所述的自主可控的密文数据安全计算方法的步骤。
根据本发明提供的一种电子设备,包括所述的自主可控的密文数据安全计算系统,或者包括所述的存储有计算机程序的计算机可读存储介质。
与现有技术相比,本发明具有如下的有益效果:
1、本发明通过由数据所有者完成结果数据解密的方式,保证数据所有者对于数据使用的监督权。
2、本发明通过增加随机数的方式,解决了解密方伪造解密结果判断的问题。
3、本发明以智能合约的方式完成密文计算的方式,解决数据使用方伪造计算公式、滥用私用数据的问题。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的流程步骤示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
本发明在不需要可信第三方协助的情况下,令隐私数据在流转使用过程中保持密文状态,同时数据具备可计算性,通过协议算法赋予数据所有者对于数据的完全控制权。
根据本发明提供的一种自主可控的密文数据安全计算方法,包括:
步骤S1:令数据所有者对明文数据mi进行同态加密,得到密文数据ci;所述步骤S1包括如下步骤:
步骤S1.1:数据所有者生成对应的同态加密公私钥(PKA,SKA)。
PKA表示数据所有者生成的公钥;
SKA表示数据所有者生成的私钥;
步骤S2:令数据使用方根据所述密文数据ci和选取的随机数,通过智能合约计算得到可验证秘钥结果的密文cver,并通过智能合约向所述数据所有者发起解密请求;所述步骤S2包括如下步骤:
步骤S2.1:数据使用方选取计算函数f()与参与计算的密文数据ci。
步骤S2.2:数据使用方通过智能合约执行计算得到密文计算结果cresult,其中,cresult=f(ci)。
步骤S2.3:数据使用方选取一个素数随机数a,与一个随机数b,通过智能合约计算,得到可验证密钥结果的密文cver,其中,cver=E(acresult+b)。然后,通过智能合约向数据所有者发起解密请求。由于本发明通过增加随机数的方式,避免了解密方伪造解密结果的问题。
步骤S3:令所述数据所有者根据所述可验证秘钥结果的密文cver,使用同态解密得到明文mver作为解密结果,并将所述解密结果发送给所述数据使用方;在所述步骤S3中:数据所有者接收到解密请求,得到可验证密钥结果的密文cver,使用同态解密通过私钥解密得到明文mver,其中,将解密结果发送给数据使用方。表示使用数据所有者生成的私钥SKA对密文数据进行解密。
步骤S4:令所述数据使用方根据所述解密结果,对数据所有者是否正确解密进行验证。在所述步骤S4中:数据使用方得到解密结果mver,验证mi=(mver-b)/a是否为整数。
如果结果为整数,则认为数据所有者正确解密结果mi=(mver-b)/a,
否则,则认为数据所有者未正确解密结果,数据使用方没有得到正确结果。
由于随机数a与b的加入,数据所有者在不知道a和b的情况下无法正确的伪造解密结果;如果数据所有者以倍数n的形式伪造结果mver’=n*mver=anmi+bn,由于存在随机数b,则mi’=(mver’-b)/a=(anmi+bn-b)/a、其中mi’结果不为整数,无法通过验证;如果数据所有者将结果中加入其他数值k,得到mver’=k+mver=ami+b+k,由于随机数a与b的存在,则mi’=(mver’-b)/a=(ami+b+k-b)/a、其中mi’结果不为整数,无法通过验证。如果没有随机数a与b,则无法保证数据所有者正确的解密结果。
本发明中,数据所有者需要针对数据使用方进行数据的隐藏,也就是说数据使用方不能解密知道数据所有者提供的数据。为此,数据所有者将数据以密文形态公开,供数据使用方进行计算,数据的解密只能由数据所有者完成。如果数据使用方想获得解密结果,则需要向数据所有者发起请求。由数据所有者根据智能合约查看数据使用方的计算方式是否合规,然后决定是否解密,同时,数据使用方通过加入随机数的方式来认定数据所有者的正确解密。
本发明还提供一种自主可控的密文数据安全计算系统,本领域技术人员可以通过执行所述自主可控的密文数据安全计算方法的步骤流程实现所述自主可控的密文数据安全计算系统,即可以将所述自主可控的密文数据安全计算方法理解为所述自主可控的密文数据安全计算系统的优选实施方式。具体地,根据本发明提供的一种自主可控的密文数据安全计算系统,包括:
模块M1:令数据所有者对明文数据mi进行同态加密,得到密文数据ci;
模块M2:令数据使用方根据所述密文数据ci和选取的随机数,通过智能合约计算得到可验证秘钥结果的密文cver,并通过智能合约向所述数据所有者发起解密请求;
模块M3:令所述数据所有者根据所述可验证秘钥结果的密文cver,使用同态解密得到明文mver作为解密结果,并将所述解密结果发送给所述数据使用方;
模块M4:令所述数据使用方根据所述解密结果,对数据所有者是否正确解密进行判断。
所述模块M1包括:
模块M1.1:数据所有者生成对应的同态加密公私钥(PKA,SKA);其中,PKA表示数据所有者生成的公钥,SKA表示数据所有者生成的私钥;
所述模块M2包括:
模块M2.1:数据使用方选取计算函数f()与参与计算的密文数据ci;
模块M2.2:数据使用方通过智能合约执行计算得到密文计算结果cresult,其中,cresult=f(ci);
模块M2.3:数据使用方选取一个素数随机数a,与一个随机数b,通过智能合约计算,得到可验证密钥结果的密文cver,其中,cver=E(acresult+b);然后,通过智能合约向数据所有者发起解密请求。
在所述模块M3中,数据所有者接收到解密请求,得到可验证密钥结果的密文cver,使用同态解密通过私钥解密得到明文mver,其中,将解密结果发送给数据使用方;其中,表示使用数据所有者生成的私钥SKA对密文数据进行解密;
在所述模块M4中,数据使用方得到解密结果mver,验证mi=(mver-b)/a是否为整数;如果结果为整数,则认为数据所有者正确解密结果mi=(mver-b)/a;否则,则认为数据所有者未正确解密结果,数据使用方没有得到正确结果。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
根据本发明提供的一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序被处理器执行时实现所述的自主可控的密文数据安全计算方法的步骤。
根据本发明提供的一种电子设备,包括所述的自主可控的密文数据安全计算系统,或者包括所述的存储有计算机程序的计算机可读存储介质。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种自主可控的密文数据安全计算方法,其特征在于,包括:
步骤S1:令数据所有者对明文数据mi进行同态加密,得到密文数据ci;
步骤S2:令数据使用方根据所述密文数据ci和选取的随机数,通过智能合约计算得到可验证秘钥结果的密文cver,并通过智能合约向所述数据所有者发起解密请求;
步骤S3:令所述数据所有者根据所述可验证秘钥结果的密文cver,使用同态解密得到明文mver作为解密结果,并将所述解密结果发送给所述数据使用方;
步骤S4:令所述数据使用方根据所述解密结果,对数据所有者是否正确解密进行判断。
3.根据权利要求2所述的自主可控的密文数据安全计算方法,其特征在于,所述步骤S2包括:
步骤S2.1:数据使用方选取计算函数f()与参与计算的密文数据ci;
步骤S2.2:数据使用方通过智能合约执行计算得到密文计算结果cresult,其中,cresult=f(ci);
步骤S2.3:数据使用方选取一个素数随机数a,与一个随机数b,通过智能合约计算,得到可验证密钥结果的密文cver,其中,cver=E(acresult+b);然后,通过智能合约向数据所有者发起解密请求。
5.一种自主可控的密文数据安全计算系统,其特征在于,包括:
模块M1:令数据所有者对明文数据mi进行同态加密,得到密文数据ci;
模块M2:令数据使用方根据所述密文数据ci和选取的随机数,通过智能合约计算得到可验证秘钥结果的密文cver,并通过智能合约向所述数据所有者发起解密请求;
模块M3:令所述数据所有者根据所述可验证秘钥结果的密文cver,使用同态解密得到明文mver作为解密结果,并将所述解密结果发送给所述数据使用方;
模块M4:令所述数据使用方根据所述解密结果,对数据所有者是否正确解密进行判断。
7.根据权利要求6所述的自主可控的密文数据安全计算系统,其特征在于,所述模块M2包括:
模块M2.1:数据使用方选取计算函数f()与参与计算的密文数据ci;
模块M2.2:数据使用方通过智能合约执行计算得到密文计算结果cresult,其中,cresult=f(ci);
模块M2.3:数据使用方选取一个素数随机数a,与一个随机数b,通过智能合约计算,得到可验证密钥结果的密文cver,其中,cver=E(acresult+b);然后,通过智能合约向数据所有者发起解密请求。
9.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的自主可控的密文数据安全计算方法的步骤。
10.一种电子设备,其特征在于,包括权利要求5至8中任一项所述的自主可控的密文数据安全计算系统,或者包括权利要求9所述的存储有计算机程序的计算机可读存储介质。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211200150.8A CN115603891A (zh) | 2022-09-29 | 2022-09-29 | 自主可控的密文数据安全计算方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211200150.8A CN115603891A (zh) | 2022-09-29 | 2022-09-29 | 自主可控的密文数据安全计算方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115603891A true CN115603891A (zh) | 2023-01-13 |
Family
ID=84844562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211200150.8A Pending CN115603891A (zh) | 2022-09-29 | 2022-09-29 | 自主可控的密文数据安全计算方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115603891A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116886268A (zh) * | 2023-08-10 | 2023-10-13 | 云海链控股股份有限公司 | 数据传输验证方法、装置、设备及计算机可读存储介质 |
-
2022
- 2022-09-29 CN CN202211200150.8A patent/CN115603891A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116886268A (zh) * | 2023-08-10 | 2023-10-13 | 云海链控股股份有限公司 | 数据传输验证方法、装置、设备及计算机可读存储介质 |
CN116886268B (zh) * | 2023-08-10 | 2024-04-26 | 云海链控股股份有限公司 | 数据传输验证方法、装置、设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6230272B1 (en) | System and method for protecting a multipurpose data string used for both decrypting data and for authenticating a user | |
CN101005361B (zh) | 一种服务器端软件保护方法及系统 | |
CA2560570C (en) | Authentication between device and portable storage | |
US9577784B2 (en) | System, device, and method for securing voice authentication and end-to-end speech interaction | |
US7877604B2 (en) | Proof of execution using random function | |
US8806206B2 (en) | Cooperation method and system of hardware secure units, and application device | |
CN110958219B (zh) | 一种面向医疗云共享数据的sm2代理重加密方法与装置 | |
US20110314284A1 (en) | Method for securing transmission data and security system for implementing the same | |
JP5954609B1 (ja) | 電子署名トークンの私有鍵のバックアップ方法およびシステム | |
US9178881B2 (en) | Proof of device genuineness | |
CN101142599A (zh) | 基于硬件识别的数字权利管理系统 | |
WO2007125877A1 (ja) | 通信装置、及び通信システム | |
CN110198295A (zh) | 安全认证方法和装置及存储介质 | |
WO2018137225A1 (zh) | 指纹数据的处理方法及处理装置 | |
CN113704736A (zh) | 基于ibc体系的电力物联网设备轻量级接入认证方法及系统 | |
WO2021082222A1 (zh) | 通信方法、存储方法、运算方法及装置 | |
CN115603891A (zh) | 自主可控的密文数据安全计算方法和系统 | |
CN109768969A (zh) | 权限控制方法及物联网终端、电子设备 | |
CN113810178B (zh) | 密钥管理方法、装置、系统及存储介质 | |
TWI675578B (zh) | 加解密系統、加密裝置、解密裝置和加解密方法 | |
US7327845B1 (en) | Transmission of encrypted messages between a transmitter and a receiver utilizing a one-time cryptographic pad | |
KR20200048760A (ko) | 모바일 헬스케어를 위한 가상 물리 시스템에서 안전한 연산 위임 방법 | |
WO2024013925A1 (ja) | カーシェアリングシステム、シェア方法、車載サーバ装置及びプログラム | |
JP5792573B2 (ja) | 相互認証システム及び相互認証方法 | |
CN103546781A (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 |