CN113312643A - 基于sm2和sm3算法的关键字匹配方法 - Google Patents
基于sm2和sm3算法的关键字匹配方法 Download PDFInfo
- Publication number
- CN113312643A CN113312643A CN202110641297.XA CN202110641297A CN113312643A CN 113312643 A CN113312643 A CN 113312643A CN 202110641297 A CN202110641297 A CN 202110641297A CN 113312643 A CN113312643 A CN 113312643A
- Authority
- CN
- China
- Prior art keywords
- data
- service provider
- storage service
- data storage
- trapdoor
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Mathematical Analysis (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Power Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于SM2和SM3算法的关键字匹配方法。本发明首先,数据接收方把想要查询的关键字发送到数据存储服务提供方。然后,数据发送方将加密的数据以及相应的关键字的密文发送到数据存储服务提供方。最后,数据存储服务提供方会根据数据接收方的要求对接收到数据发送方的加密的数据、以及相应的关键字的密文解密进行关键字匹配。匹配成功,则数据接收方可以到数据存储服务提供方下载所要查询的关键字对应的数据。本发明所涉及的关键字对于数据存储服务提供方来说是能够抵抗数据存储服务提供方所发起的暴力破解攻击,在数据发送方发送符合条件的数据之前,即使数据存储服务提供方发起暴力破解攻击,也不能获得对应的关键字。
Description
技术领域
本发明涉及一种数据安全查询方法,具体是一种基于SM2和SM3算法的关键字匹配方法。
背景技术
近年来,随着网络的快速发展,大数据时代已然到来,人们日常产生的数据越来越多。随着云技术的发展,人们发现,当把数据外包到云服务器时,也就无法对数据进行控制,使数据发送方以及数据接收方的隐私安全面临巨大的挑战。
常规的解决办法是数据加密后上传,但是又会遇到如何对密文进行匹配的难题,最简单的方法是将文件下载解密后进行匹配。这种操作由于下载了不需要的文件而浪费了大量网络开销,且进行解密和匹配,以及双线性配对需要浪费大量的计算开销,这种方法并不适用。由于数据存储服务器具有强大的计算能力,人们希望由服务器进行检索功能,可以把密钥发送给云服务器,之后由服务器解密并匹配。然而现有的关键字匹配算法不能抵抗暴力破解攻击,即数据存储服务提供方可以通过不断地尝试,获取关键字信息,另外需要使用配对等高功耗的密码操作。
发明内容
本发明针对现有技术的不足,提供了一种基于SM2和SM3算法的关键字匹配方法。
本发明的具体技术方案为:
步骤1、数据接收方将陷门td发送到数据存储服务提供方,所述的陷门td中加密有数据接收方想要查询的关键字;
步骤2、数据发送方将加密的数据以及相应的关键字的密文发送到数据存储服务提供方;
步骤3、数据存储服务提供方根据数据接收方想要查询的关键字,对接收到数据发送方的加密的数据、以及相应的关键字的密文解密进行关键字匹配,具体是:
当数据存储提供方收到数据发送方的密文后,数据存储服务提供方基于SM2椭圆曲线公钥密码算法用数据存储服务提供方的私钥对密文进行解密获得数据发送方的陷门m;
对比数据发送方的陷门m和数据接收方的陷门td,如果相等,则进行允许数据接收方下载所要查询的关键字对应的数据;如果不相等,则继续比对其它陷门td。
进一步说,步骤1中的陷门td通过以下方式得到:
td=SM3(SM3([skr]·pks)||kw)
kw是数据接收方需要的数据所对应的关键字,SM3表示SM3密码杂凑算法,skr表示数据接收方的私钥,pks表示数据接收方的公钥。
进一步说,所述的陷门td通过安全信道传给数据存储服务提供方。
进一步说,步骤2具体是:
数据发送方计算陷门m;
基于SM2椭圆曲线公钥密码算法,用数据存储服务提供方的公钥pkc对所述陷门m进行加密,获得密文C;
将加密的数据以及密文C发送给数据存储服务提供方。
进一步说,所述的陷门m通过以下方式得到:
m=SM3(SM3([sks]·pkr)||kw’)
其中kw’是数据发送方所发送的数据对应的关键字,sks是数据发送方的私钥,pkr是数据接收方的公钥,SM3表示SM3密码杂凑算法。
本发明的有益效果:
本发明基于椭圆曲线的离散对数难题,即使敌手获得了数据发送方发送的密文,也不能获得相应的关键字。基于SM2算法有公钥、私钥之分,公钥给别人,可以在一定范围内公开,私钥留给自己,必须保密。由私钥可以计算公钥;由公钥计算私钥,是相当困难的,现阶段是不可能。数据发送方用数据存储服务提供方的公钥pkc对m进行加密获得SM2密文C,只有数据存储服务提供方才能用自己的私钥skc进行解密得到m。
本发明所涉及的关键字对于数据存储服务提供方来说是能够抵抗数据存储服务提供方所发起的暴力破解攻击,在数据发送方发送符合条件的数据之前,即使数据存储服务提供方发起暴力破解攻击,也不能获得对应的关键字。
附图说明
图1为本发明方法示意图。
具体实施方式
如图1所示,在该系统中,存在三种类型的参与者,分别是数据接收方、数据发送方、以及数据存储服务提供方。
首先,数据接收方把想要查询的关键字发送到数据存储服务提供方。
然后,数据发送方将加密的数据以及相应的关键字的密文发送到数据存储服务提供方。
最后,数据存储服务提供方会根据数据接收方的要求(数据接收方想要查询的关键字)对接收到数据发送方的加密的数据、以及相应的关键字的密文解密进行关键字匹配。匹配成功,则数据接收方可以到数据存储服务提供方下载所要查询的关键字对应的数据。
为了描述方便,在以下实施例中,每个数据都对应相应的关键字,仅对关键字匹配进行描述。对于数据的加密可以直接使用其它加密算法进行。在本系统中,可以有多个数据发送方,也可以有多个数据接收方、以及多个数据存储服务提供方。
实施例:如图1所示,设系统中的所有参与者都依据SM2标准生成各自的公私钥对,并按SM2标准对其进行验证。假设所生成对应的群记为其阶为q,其中的一个生成元为G。对于数据发送方的公钥pks和私钥 代表1到q-1内的整数。有pks=[sks]·G。类似地,数据接收方的公私钥对(pkr,skr)和数据存储服务提供方的公私钥对(pkc,skc)也有一样的关系。
1、数据接收方将查询关键字发送到数据存储提供方。假设目前的关键字是kw,kw是数据接收方需要的数据所对应的关键字。则数据接收方计算td=SM3(SM3([skr]·pks)||kw),td是根据关键字kw所产生的陷门,并将td及相关操作规定通过安全信道传给数据存储服务提供方。
2、数据发送方产生密文。将如前所述,在这里省去关于数据本身的加密过程,仅对关键字处理进行描述。假设数据发送方所发送的数据对应的关键字是kw’,则数据发送方首先计算m=SM3(SM3([sks]·pkr)||kw’),其次基于SM2加密算法用数据存储服务提供方的公钥pkc对m进行加密获得SM2密文C,最后将密文C以及加密的数据发送给数据存储服务提供方。
3、数据存储提供方进行关键字匹配。当数据存储提供方收到数据发送方产生的密文C后,数据存储服务提供方基于SM2解密算法用其私钥skc对密文C进行解密,获得m。对比m和td,如果相等,则进行相应的规定操作;如果不相等,则继续比对其它td(数据发送方会发来很多不同的数据及对应的关键字,每个数据都有其对应的关键字)。
Claims (5)
1.基于SM2和SM3算法的关键字匹配方法,其特征在于该方法具体是:
步骤1、数据接收方将陷门td发送到数据存储服务提供方,所述的陷门td中加密有数据接收方想要查询的关键字;
步骤2、数据发送方将加密的数据以及相应的关键字的密文发送到数据存储服务提供方;
步骤3、数据存储服务提供方根据数据接收方想要查询的关键字,对接收到数据发送方的加密的数据、以及相应的关键字的密文解密进行关键字匹配,具体是:
当数据存储提供方收到数据发送方的密文后,数据存储服务提供方基于SM2椭圆曲线公钥密码算法用数据存储服务提供方的私钥对密文进行解密获得数据发送方的陷门m;
对比数据发送方的陷门m和数据接收方的陷门td,如果相等,则进行允许数据接收方下载所要查询的关键字对应的数据;如果不相等,则继续比对其它陷门td。
2.根据权利要求1所述的基于SM2和SM3算法的关键字匹配方法,其特征在于:步骤1中的陷门td通过以下方式得到:
td=SM3(SM3([skr]·pks)||kw)
kw是数据接收方需要的数据所对应的关键字,SM3表示SM3密码杂凑算法,skr表示数据接收方的私钥,pks表示数据接收方的公钥。
3.根据权利要求2所述的基于SM2和SM3算法的关键字匹配方法,其特征在于:所述的陷门td通过安全信道传给数据存储服务提供方。
4.根据权利要求1所述的基于SM2和SM3算法的关键字匹配方法,其特征在于:步骤2具体是:
数据发送方计算陷门m;
基于SM2椭圆曲线公钥密码算法,用数据存储服务提供方的公钥pkc对所述陷门m进行加密,获得密文C;
将加密的数据以及密文C发送给数据存储服务提供方。
5.根据权利要求4所述的基于SM2和SM3算法的关键字匹配方法,其特征在于:所述的陷门m通过以下方式得到:
m=SM3(SM3([sks]·pkr)||kw’)
其中kw’是数据发送方所发送的数据对应的关键字,sks是数据发送方的私钥,pkr是数据接收方的公钥,SM3表示SM3密码杂凑算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110641297.XA CN113312643B (zh) | 2021-06-09 | 2021-06-09 | 基于sm2和sm3算法的关键字匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110641297.XA CN113312643B (zh) | 2021-06-09 | 2021-06-09 | 基于sm2和sm3算法的关键字匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113312643A true CN113312643A (zh) | 2021-08-27 |
CN113312643B CN113312643B (zh) | 2022-09-27 |
Family
ID=77377888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110641297.XA Active CN113312643B (zh) | 2021-06-09 | 2021-06-09 | 基于sm2和sm3算法的关键字匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113312643B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120069387A (ko) * | 2010-12-20 | 2012-06-28 | 고려대학교 산학협력단 | 공개키 기반의 키워드 검색 방법 |
CN105743888A (zh) * | 2016-01-22 | 2016-07-06 | 河南理工大学 | 一种基于关键字搜索的代理重加密方案 |
CN108243000A (zh) * | 2018-01-12 | 2018-07-03 | 哈尔滨工业大学深圳研究生院 | 云存储系统中的密文搜索方法 |
CN108390760A (zh) * | 2018-01-12 | 2018-08-10 | 电子科技大学 | 一种云数据传输中端到端的公钥关键字可搜索加密方法 |
CN112800088A (zh) * | 2021-01-19 | 2021-05-14 | 东北大学 | 基于双向安全索引的数据库密文检索系统及方法 |
CN112861153A (zh) * | 2021-02-10 | 2021-05-28 | 华中科技大学 | 一种关键字可搜索延迟加密方法及系统 |
-
2021
- 2021-06-09 CN CN202110641297.XA patent/CN113312643B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120069387A (ko) * | 2010-12-20 | 2012-06-28 | 고려대학교 산학협력단 | 공개키 기반의 키워드 검색 방법 |
CN105743888A (zh) * | 2016-01-22 | 2016-07-06 | 河南理工大学 | 一种基于关键字搜索的代理重加密方案 |
CN108243000A (zh) * | 2018-01-12 | 2018-07-03 | 哈尔滨工业大学深圳研究生院 | 云存储系统中的密文搜索方法 |
CN108390760A (zh) * | 2018-01-12 | 2018-08-10 | 电子科技大学 | 一种云数据传输中端到端的公钥关键字可搜索加密方法 |
CN112800088A (zh) * | 2021-01-19 | 2021-05-14 | 东北大学 | 基于双向安全索引的数据库密文检索系统及方法 |
CN112861153A (zh) * | 2021-02-10 | 2021-05-28 | 华中科技大学 | 一种关键字可搜索延迟加密方法及系统 |
Non-Patent Citations (4)
Title |
---|
TSU-YANG WU等: "Comments on Islam Et Al.’s Certificateless Designated Server Based Public Key Encryption with Keyword Search Scheme", 《SPRINGER》 * |
TSU-YANG WU等: "On the Security of a Certificateless Public Key Encryption with Keyword Search", 《SPRINGER》 * |
张泽钥: "带关键词检索的公钥加密系统的研究与实现", 《中国优秀硕士学位论文全文数据库》 * |
秦志光: "云存储中一种模糊关键字搜索加密方案", 《信息网络安全》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113312643B (zh) | 2022-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021208690A1 (zh) | 数据加解密方法、装置、设备及存储介质 | |
CN109559122B (zh) | 区块链数据传输方法及区块链数据传输系统 | |
US11323247B2 (en) | Methods and systems for secure data communication | |
US9379891B2 (en) | Method and system for ID-based encryption and decryption | |
KR100506076B1 (ko) | 패스워드를 기반으로 한 상호 인증 및 키 교환방법과 그장치 | |
US11018866B2 (en) | Dynamic second factor authentication for cookie-based authentication | |
CN110048849B (zh) | 一种多层保护的会话密钥协商方法 | |
KR100944769B1 (ko) | 프라이버시를 보장하는 암호화와 복호화를 이용한 파일공유 방법 및 시스템 | |
CN112311537B (zh) | 基于区块链的设备接入认证系统及方法 | |
Wen et al. | Secure data deduplication with reliable key management for dynamic updates in CPSS | |
CN110999202B (zh) | 用于对数据进行高度安全、高速加密和传输的计算机实现的系统和方法 | |
US12021852B2 (en) | Methods of generating a key and a communication method | |
CN115632880B (zh) | 一种基于国密算法的可靠数据传输及存储的方法及系统 | |
Wang et al. | Provably secure and efficient identification and key agreement protocol with user anonymity | |
US20030037241A1 (en) | Single algorithm cipher suite for messaging | |
CN112738037B (zh) | 一种数据加密通信方法 | |
CN116709325B (zh) | 一种基于高速加密算法的移动设备安全认证方法 | |
US20050210247A1 (en) | Method of virtual challenge response authentication | |
CN113312643B (zh) | 基于sm2和sm3算法的关键字匹配方法 | |
KR20140033824A (ko) | 스마트 디바이스에서 해쉬값 기반 대칭키 암호화 시스템 및 방법 | |
CN116055136A (zh) | 一种基于秘密共享的多目标认证方法 | |
KR20020079044A (ko) | 네트워크 카메라, 홈 게이트웨이 및 홈 오토메이션장치에서의 데이터 보안 유지 방법 및 장치 | |
CN115550007A (zh) | 一种基于异构系统的具有等值测试功能的签密方法及系统 | |
CN111130796B (zh) | 即时通信中安全在线云存储方法 | |
CN114401102A (zh) | 一种基于国密算法的http请求参数加密方案 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |