CN111654365B - 一种条件分布转化编码方法及加密方法 - Google Patents
一种条件分布转化编码方法及加密方法 Download PDFInfo
- Publication number
- CN111654365B CN111654365B CN201910160643.5A CN201910160643A CN111654365B CN 111654365 B CN111654365 B CN 111654365B CN 201910160643 A CN201910160643 A CN 201910160643A CN 111654365 B CN111654365 B CN 111654365B
- Authority
- CN
- China
- Prior art keywords
- seed
- message
- condition
- conditional distribution
- 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.)
- Active
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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- 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/002—Countermeasures against attacks on cryptographic mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公布了一种条件分布转化编码方法及低熵密钥下的加密方法,通过构建条件分布转化编码器,计算并存储种子区间表,对与条件X相关的消息M进行编码;然后利用传统方法进行加密;能够实现对与某些已知信息相关的消息进行编码并加密,从而抵抗已知信息的攻击者,提高加密的安全性。
Description
技术领域
本发明涉及计算机信息安全技术领域,具体涉及一种条件分布转化编码方法及在低熵密钥(如口令)下的消息加密方法。
背景技术
由于人类记忆的限制,由用户生成和记忆的口令呈现低熵性质。与一般加密算法的随机长密钥不同,用户的口令通常是一串有意义的字符,容易被猜测攻击。因此,传统的基于口令加密算法(PKCS#5),一旦密文泄漏,攻击者可以通过对密钥(即口令)进行暴力猜测来获得消息/明文。
2014年,Ari Juels和Thomas Ristenpart提出一种全新的加密方法HoneyEncryption,可以保证密文在任意密钥下解密都能得到一个似真的消息,从而使得攻击者无法判断攻击是否成功。该方法在传统的加密方法之前,引入了一个新的概率编码器——分布转化编码器DTE。加密时,消息先被概率编码器编码成均匀分布的种子,然后进行传统加密。解密过程则相反,先进行传统解密得到种子,然后使用解码器得到消息。
但是Ari Juels和Thomas Ristenpart提出的DTE无法编码与某些信息相关的消息,这会导致获得这些信息的攻击者能通过相关性排除大量错误的密钥,严重降低HoneyEncryption的安全性。这类信息包括但不限于历史密文、密钥。以口令管理器为例,消息为用户在多个网站上的口令,密钥为用户需要生成和记忆的主口令。用户在使用过程中,可能会更新口令,包括增加、删除、修改口令。2015年Rahul Chatterjee等人和2016年Maximilian Golla等人基于Honey Encryption设计的口令管理器,在用户每次更新口令时,会舍弃原始密文,重新生成新消息的密文。然而攻击者可能窃取到同一用户在一次口令更新前后的两个密文(即密文和历史密文),对这两个密文进行暴力猜测,并观察对应消息的相似性,即可判断密钥或消息的正确性,从而导致Honey Encryption失效。另外,口令管理器,其主口令(即密钥)与其内存储的网站口令(即消息)可能会有很大的相似性,攻击者可以通过观察解密得到的网站口令与对应主口令的相似性,来判断密钥或消息的真假。另外,用户的口令与用户的姓名、生日等个人信息有关,掌握用户个人信息的攻击者也可以通过观察其相关性区分真假密钥或消息。
综上,基于现有编码器的Honey Encryption方法无法抵抗已知相关消息的攻击者,安全性低。
发明内容
为了克服上述现有技术的不足,本发明改进Honey Encryption中的分布转化编码器,提供一种条件分布转化编码器(方法),能够实现对与某些已知信息相关的消息进行编码,提高Honey Encryption的安全性。
为方便起见,这里定义相关记号及相应的含义。
记消息空间为条件空间为(条件可以是密钥或其他与消息相关的已知信息),其条件概率函数Pr(Mi|X)表示在条件为X时消息为Mi的条件概率,为对应的累积条件分布函数;Mi为消息空间中按某种顺序(例如,字典序)的第i个消息。roundl(x)=round(2lx),round(x)表示离x最近的整数(x为任意实数),l为存储参数,二进制数的长度(例如128)。种子空间为所有l比特串(即l长的二进制数,也是区间[0,2l)上的整数。种子区间表表示消息与种子空间中种子的对应关系。
本发明提供的技术方案是:
A.首先计算并存储种子区间表,构建得到条件分布转化编码器;
通过种子区间表可以进行编码和解码;
如图1所示,执行如下操作:
A1.对任意条件X,利用条件概率函数依次计算得到每个消息Mi的在条件X下的条件概率Pr(Mi|X);
A2.然后依次计算每个消息Mi的累积条件分布函数值F(Mi|X);所有消息对应的累积条件分布函数值构成累积条件分布函数表;
A3.对累积条件分布函数表进行离散化,得到种子区间表并存储,作为条件分布转化编码器;
对累积条件分布函数表进行离散化是指,将表中的浮点数x(即累积条件分布函数值)利用函数roundl转化为二进制数roundl(x),该二进制数即为每个消息对应的种子区间上界。注意,种子区间表中只需存储每个消息对应的种子区间上界,该消息的种子区间下界为前一消息的种子区间上界加1,如果没有前一消息(即该消息为第一个消息),其种子区间下界为0。
B.在条件X下,采用步骤A得到的条件分布转化编码器编码消息M,得到对应的种子S;
过程如下(如图2所示):
B1.依据条件X查找对应的种子区间表;
B2.查找种子区间表中M对应的种子区间,在该区间内随机生成一个二进制数S,作为种子;
C.在条件X下,条件分布转化编码器解码步骤B的种子S,得到对应的消息M;过程如下(如图3所示):
C1.依据条件X查找对应的种子区间表;
C2.在种子区间表中查找种子S所对应的种子区间,由此找到该种子区间对应的消息M。
通过上述步骤,实现基于条件分布转化编码器的消息编码和解码。
对于历史密文,条件X为历史明文,因为用户可以使用正确的密钥对历史密文进行解密得到历史明文;对于与密钥相关的消息,条件X为密钥;对于其他信息,条件X为该信息。
利用上述本发明提供的基于条件分布转化的编码方法,在低熵密钥(口令)下进行加密,加密方法的流程为:
1)加密:
a)输入明文消息M和条件X,以及密钥K,先利用条件分布转化编码器在条件X下编码消息M,得到种子S。
b)利用密钥K对种子S利用传统加密方法进行加密,得到密文C。
这里的传统加密方法可以为一般的基于口令加密,只需保证该加密方法对任意密钥都能解密成功即可。例如,采用PBKDF2(Password-Based Key Derivation Function 2)对密钥K进行扩展得到长密钥,再用AES(高级加密标准,Advanced Encryption Standard)在CTR模式(计数器模式,Counter mode)下使用长密钥对S进行加密。
2)解密:
a)对输入的密文C、密钥K和条件X,先利用密钥K对密文C利用传统加密方法进行解密,得到种子S。
b)再利用条件分布转化编码器对种子S在条件X下进行解码,得到消息M。
本发明上述Honey Encryption的加密方法首先进行编码,然后利用传统加密方法加密。Honey Encryption的解密则反过来,先利用传统加密方法解密,然后解码。相比传统加密方法,Honey Encryption增加了编码解码的步骤。
与现有技术相比,本发明的有益效果是:
本发明提供一种条件分布转化编码方法及低熵密钥下的加密方法,能够实现对与某些已知信息相关的消息进行编码,提高加密的安全性利用。本发明提供的技术方案,可以编码与某些信息相关的消息,通过构建条件分布转化编码器,实现对与某些已知信息相关的消息进行编码及解码,从而进一步实现加密;能够抵抗事先已知信息的攻击者,提高计算机消息传输的可靠性和安全性。
附图说明
图1是采用本发明提供的条件分布转化编码器计算种子区间表的流程框图。
图2是本发明的条件分布转化编码器进行编码的流程框图。
图3是本发明的条件分布转化编码器进行解码的流程框图。
具体实施方式
下面结合附图,通过实施例进一步描述本发明,但不以任何方式限制本发明的范围。
本发明提供一种条件分布转化编码器及低熵密钥下的加密方法,能够实现对与某些已知信息相关的消息进行编码,提高加密的精确性和可靠性。
本发明方法包括:构建条件分布转化编码器、计算种子区间表、编码和解码的过程。图1所示是采用本发明提供的条件分布转化编码器计算种子区间表的流程。图2和图3所示分别为采用本发明的条件分布转化编码器进行编码及解码的流程。
以下实施例中,消息为爆米花的口味,共两种甜、咸,成人更偏好咸口味,儿童更偏好甜口味。假设成人选择甜口味的概率为1/4,而儿童选择甜口味的概率为3/4。
首先为两个条件(成人、儿童),分别生成对应的种子区间表,如表1(l=2)。
表1条件为儿童的种子区间表
消息 | 种子区间上界 |
甜 | 10 |
咸 | 11 |
表1中,每个消息的种子区间上界为表中数值,下界为前一消息的表中数值加1(第一条消息的种子区间下界为0)。
表2所示是本实施例中爆米花口味编码器对应的条件概率函数表;
表2条件为儿童对应的条件概率函数表
消息 | 条件概率 |
甜 | 3/4 |
咸 | 1/4 |
表3是爆米花口味编码器对应的累积条件分布函数表。
表3条件为儿童对应的累积条件概率函数表
消息 | 累积条件概率 |
甜 | 3/4 |
咸 | 1 |
以条件为儿童并且消息是甜为例说明编码流程,查找条件为儿童对应的种子区间表,查找甜对应的种子区间为[00,10],随机选一个种子,例如01,作为种子。
同样以条件为儿童并且种子是01为例说明解码流程,查找条件儿童对应的累积条件分布函数表,查找01所在的种子区间[00,10],其对应的消息为甜。
在密钥K和条件X下加密消息M的流程为:
1)先利用上述编码器在条件X下对消息M进行编码,得到种子S;
2)然后利用PBKDF2方法对密钥K进行扩展,得到长密钥;
3)再用AES在CTR模式下使用长密钥对种子S进行加密,得到密文C。
在密钥K和条件X下解密密文C的流程为:
1)利用PBKDF2对密钥K进行扩展,得到长密钥;
2)用AES在CTR模式下使用长密钥对密文C进行解密,得到种子S;
3)利用上述编码器在条件X下对种子S进行解码,得到消息M。
需要注意的是,公布实施例的目的在于帮助进一步理解本发明,但是本领域的技术人员可以理解:在不脱离本发明及所附权利要求的精神和范围内,各种替换和修改都是可能的。因此,本发明不应局限于实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
Claims (7)
包括如下步骤:
A.计算并存储种子区间表,构建得到条件分布转化编码器;具体执行如下操作:
A1.对任意条件X,利用条件概率函数依次计算得到每个消息Mi的在条件X下的条件概率Pr(Mi|X);条件概率Pr(Mi|X)表示在条件为X时消息为Mi的条件概率;
A2.利用累积条件分布函数依次计算每个消息Mi的累积条件分布函数值F(Mi|X);所有消息的累积条件分布函数值构成累积条件分布函数表;累积条件分布函数值表示为:
A3.对累积条件分布函数表进行离散化,得到种子区间表,作为条件分布转化编码器,用于进行编码和解码;
通过离散化得到种子区间表,具体执行如下操作:
将累积条件分布函数表中的累积条件分布函数值利用函数roundl转化为二进制数;该二进制数即为每个消息对应的种子区间上界;函数roundl表示为:
roundl(x)=round(2lx)
每个消息的种子区间下界为前一消息的种子区间上界加1;第一个消息的种子区间下界为0;
种子区间表只需存储每个消息对应的种子区间上界;
由此得到种子区间表;
B.在条件X下,采用步骤A得到的条件分布转化编码器对消息M进行编码,得到对应的种子S;具体过程如下:
B1.依据条件X查找对应的种子区间表;
B2.查找种子区间表中M对应的种子区间,在该种子区间内随机生成一个二进制数S,作为种子;
C.在条件X下,条件分布转化编码器对步骤B得到的种子S进行解码,得到对应的消息M;过程如下:
c1.依据条件X查找对应的种子区间表;
C2.在种子区间表中查找种子S所对应的种子区间,由此找到该种子区间对应的消息M;通过上述步骤,实现基于条件分布转化编码器的消息编码和解码。
2.如权利要求1所述基于条件分布转化编码器的编码方法,其特征是,对于历史密文,所述条件X为历史明文,通过使用正确的密钥对历史密文进行解密得到历史明文;对于与密钥相关的消息,所述条件X为密钥。
3.一种基于条件分布转化编码器的低熵密钥加密方法,利用基于条件分布转化编码器的编码方法,在低熵密钥下进行加密;包括如下步骤:
1)加密过程:
1a)输入明文消息M、条件X及密钥K,先利用条件分布转化编码方法在条件X下编码消息M,得到种子S;所述条件为与消息M相关的已知信息;
所述条件分布转化编码方法首先计算并存储种子区间表,构建得到条件分布转化编码器;然后,在条件X下,采用条件分布转化编码器对消息M进行编码,得到对应的种子S;
所述条件分布转化编码方法首先计算并存储种子区间表,构建得到条件分布转化编码器;具体执行如下操作:
A1.对任意条件X,利用条件概率函数依次计算得到每个消息Mi的在条件X下的条件概率Pr(Mi|X);条件概率Pr(Mi|X)表示在条件为X时消息为Mi的条件概率;
A2.利用累积条件分布函数依次计算每个消息Mi的累积条件分布函数值F(Mi|X);所有消息的累积条件分布函数值构成累积条件分布函数表;累积条件分布函数表示为:
A3.对累积条件分布函数表进行离散化,得到种子区间表,作为条件分布转化编码器,用于进行编码和解码;通过离散化得到种子区间表,具体执行如下操作:
将累积条件分布函数表中的累积条件分布函数值利用函数roundl转化为二进制数;该二进制数即为每个消息对应的种子区间上界;函数roundl表示为:
roundl(x)=round(2lx)
每个消息的种子区间下界为前一消息的种子区间上界加1;第一个消息的种子区间下界为0;
种子区间表只需存储每个消息对应的种子区间上界;
由此得到种子区间表;
1b)利用密钥K对种子S利用加密方法进行加密,得到密文C;
2)解密过程:
2a)对输入的密文C、密钥K和条件X,先利用密钥K对密文C利用加密方法进行解密,得到种子S;
2b)再利用条件分布转化编码器对种子S在条件X下进行解码,得到消息M。
4.如权利要求3所述的低熵密钥加密方法,其特征是,采用条件分布转化编码器对消息M进行编码,具体过程如下:
B1.依据条件X查找对应的种子区间表;
B2.查找种子区间表中M对应的种子区间,在该种子区间内随机生成一个二进制数S,作为种子。
5.如权利要求3所述的低熵密钥加密方法,其特征是,采用条件分布转化编码器对种子S进行解码,具体过程如下:
c1.依据条件X查找对应的种子区间表;
C2.在种子区间表中查找种子S所对应的种子区间,由此找到该种子区间对应的消息M。
6.如权利要求3所述的低熵密钥加密方法,其特征是,步骤1)和步骤2)所述加密方法为基于口令加密,只需加密方法对任意密钥均能解密成功即可。
7.如权利要求3所述的低熵密钥加密方法,其特征是,步骤1)和步骤2)所述加密方法具体采用PBKDF2对密钥K进行扩展,得到长密钥,再采用AES在CTR模式下使用长密钥对S进行加密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910160643.5A CN111654365B (zh) | 2019-03-04 | 2019-03-04 | 一种条件分布转化编码方法及加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910160643.5A CN111654365B (zh) | 2019-03-04 | 2019-03-04 | 一种条件分布转化编码方法及加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111654365A CN111654365A (zh) | 2020-09-11 |
CN111654365B true CN111654365B (zh) | 2021-04-30 |
Family
ID=72349103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910160643.5A Active CN111654365B (zh) | 2019-03-04 | 2019-03-04 | 一种条件分布转化编码方法及加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111654365B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104270240A (zh) * | 2014-06-23 | 2015-01-07 | 广东技术师范学院 | 多载波调制的信息隐藏通信方法及其装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9325499B1 (en) * | 2013-06-24 | 2016-04-26 | Emc Corporation | Message encryption and decryption utilizing low-entropy keys |
FR3054905B1 (fr) * | 2016-08-04 | 2019-10-18 | Safran Identity & Security | Procede de generation de cle et procede de controle d'acces |
US10608999B2 (en) * | 2016-12-08 | 2020-03-31 | Celeno Communications (Israel) Ltd. | Establishing a secure uplink channel by transmitting a secret word over a secure downlink channel |
US10742233B2 (en) * | 2017-07-11 | 2020-08-11 | Erlich Lab Llc | Efficient encoding of data for storage in polymers such as DNA |
CN107359982B (zh) * | 2017-08-16 | 2019-09-20 | 西安科技大学 | 抗代内/间攻击的同态签名方法 |
-
2019
- 2019-03-04 CN CN201910160643.5A patent/CN111654365B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104270240A (zh) * | 2014-06-23 | 2015-01-07 | 广东技术师范学院 | 多载波调制的信息隐藏通信方法及其装置 |
Non-Patent Citations (1)
Title |
---|
"Security Evaluation Model of the Information System Based on the Security characteristic measure for the key";Ou Qingyu et al;《2010 International Conference on Computer, Mechatronics, Control and Electronic Engineering》;20100826;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111654365A (zh) | 2020-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Nasution et al. | Data security using vigenere cipher and goldbach codes algorithm | |
KR101267109B1 (ko) | 준군을 이용한 암호화 프리미티브, 에러 코딩, 및 의사난수 향상 방법 | |
US6959394B1 (en) | Splitting knowledge of a password | |
CN116032474B (zh) | 一种基于大数据计算机网络安全防护系统 | |
JP2016513825A (ja) | 安全通信方法および装置 | |
CN115664858B (zh) | 一种用于网络安全的认证数据加密、解密系统 | |
CN115659409B (zh) | 一种金融资产交易数据安全存储方法 | |
Augot et al. | A public key encryption scheme based on the polynomial reconstruction problem | |
Moe et al. | Enhanced honey encryption algorithm for increasing message space against brute force attack | |
Esmaeili et al. | A secure code based cryptosystem via random insertions, deletions, and errors | |
CN115834060A (zh) | 基于密码学的电子公文安全导入导出方法及系统 | |
JP2007114494A (ja) | 秘匿計算方法及び装置 | |
Choubey et al. | Cryptographic techniques in information security | |
KR101584127B1 (ko) | 거부적 암호화 시스템 및 방법 | |
CN111654365B (zh) | 一种条件分布转化编码方法及加密方法 | |
Xie et al. | Enhanced multiple Huffman table (MHT) encryption scheme using key hopping | |
Zhou et al. | On the security of multiple Huffman table based encryption | |
CN113556381B (zh) | Http请求的优化方法、终端以及存储介质 | |
CN115567219A (zh) | 基于5g虚拟专网切片的安全通信方法、装置及存储介质 | |
Wilson et al. | A modified version of the Vigenère algorithm | |
CN115333777A (zh) | 数据加密方法、系统、装置及存储介质 | |
CN114710264A (zh) | 一种基于Spinal码的物理层加密解密方法及系统 | |
CN111651774B (zh) | 一种将生成概率模型转化为编码器的通用方法及加密方法 | |
US20040174994A1 (en) | Time based encryption algorithm | |
Charru et al. | Improved Cryptography Algorithm to Enhanced Data Security |
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 |