CN103595524A - 一种基于流密码的丢位加密-补位解密的加解密方法 - Google Patents
一种基于流密码的丢位加密-补位解密的加解密方法 Download PDFInfo
- Publication number
- CN103595524A CN103595524A CN201310494077.4A CN201310494077A CN103595524A CN 103595524 A CN103595524 A CN 103595524A CN 201310494077 A CN201310494077 A CN 201310494077A CN 103595524 A CN103595524 A CN 103595524A
- Authority
- CN
- China
- Prior art keywords
- pointer
- secret key
- information
- encryption
- file
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于流密码的丢位加密-补位解密的加解密方法,在流密码加密的过程中不需要专用的计算机硬件、专用的电子逻辑器件,更不需要逻辑电路的设计,不涉及混沌信号的反馈问题和反馈算法,完全通过软件的方法程解决流密码的加密和解密过程,降低明码加密对外条件的依靠。本发明若要破解密文文件,必须知道算法程序、密文文件和秘钥文件,而同时具备此三个文件比较几乎不可能,且秘钥的长度可以扩展至128字节至于更大,极大增加了破译的难度。
Description
技术领域
本发明涉及密码的加解密,特别是一种基于流密码的丢位加密-补位解密的加解密方法。
背景技术
流密码(Stream Cipher)也称为序列密码,它是对称密码算法的一种。序列密码具有实现简单、便于硬件实施、加解密处理速度快、没有或只有有限的错误传播等特点,因此在实际应用中,特别是专用或机密机构中保持着优势。
现有流密码的研究状态,由于流密码的分析和设计往往用于一个国家的军事和外交通信。所以,流密码的研发和设计基本上都是在保密的状态下进行,各个国家研发流密码的学者和专家为了保密几乎没有过多的这方面的公开的论著。各国都将流密码技术和产品,作为军工产品而限制出口。由于它具有许多其他密码不可比拟的优点,所以,它是当今最为通用的密码系统之一。
现在的流密码学的研究方向,都是以数学模型为基础,使用复杂的代数运算、布尔代数运算、伪随机数、移位寄存器、线性反馈等。完成流密码的加密和解密。在这方面比较成功的方法有A5方法,S盒方法,RC4方法,K2方法等。这些方法已经是不公开的秘密,经过多年的研究,对其加密和解密已经具有了一定的成熟手段。现在已有很多学者研究攻击和破译上述方法加密的密文。这就使得使用以上的方法进行加密的密文,其安全性受到极大的挑战。
发明内容
为解决上述问题,本发明的目的在于提供一种基于流密码的丢位加密-补位解密的加解密方法,加强保密,增加破译难度。
本发明解决其问题所采用的技术方案是:
所述解密步骤包括:
当指针p搜索到“1”位时,将指针q所指向的位值保存,指针q移动一位,同时将密文集合中与指针p相对应的位置的位值至位全部右移一位,并将保存的指针q所指向的位值写入至密文集合中与指针p相对应的位置;
当指针p搜索至位时,完成解密,并生成明码集合M。
所述加密步骤还包括:
将生成的密文集合C迭代固定次数的加密步骤,生成对应的密文集合。
所述解密步骤还包括:
将生成的明码集合M迭代相同固定次数的解密步骤,生成对应所需要的明码集合。
其中,明码集合M中的元素个数E满足Emod8=0,秘钥集合P中元素的个数F满足Fmod8=0,密文集合C中元素的个数G满足Gmod8=0。
一种基于流密码的丢位加密-补位解密的加解密方法,包括明文文件、秘钥文件和密文文件,所述方法包括加密步骤和解密步骤,所述加密步骤包括:
(1)读取明文文件中明文信息的字节数M,同时读取秘钥文件中秘钥信息的字节数N,且规定M大于N;
(2)以字节N为单位读取明文文件中的明文信息,并取指针p指向所读取的明文信息的尾位置;
(3)读取秘钥文件中的秘钥信息,并取指针q指向秘钥信息的首位置;
(4)指针q按位移动,指针p随着q的移动而同步移动,当指针q搜索到“1”位时,将指针p所指向的位值保存,同时将指针p所指向的位值至尾位值全部左移一位,并将保存的指针p所指向的位值填入至尾位;
(5)重复步骤(4),直至指针q移动至密钥信息的尾位置,将处理后的指针p所指向的明文信息写入至密文文件中;
(6)重复步骤(2)至步骤(5),对读取的下一个N字节的明文信息进行加密,直至明文文件中的明文信息全部被读取,并生成对应的密文文件;
所述解密步骤包括:
(11)读取密文文件中密文信息的字节数K,同时读取秘钥文件中秘钥信息的字节数N,且K大于N;
(12)以字节N为单位读取密文文件中的密文信息,并取指针p指向所读取的密文信息的尾位置;
(13)读取秘钥文件中的秘钥信息,并取指针q指向秘钥信息的尾位置;
(14)指针q按位移动,当指针q搜索到“1”位时,将指针p所指向的位值保存,指针p移动一位,之后将密文信息中与指针q相对应位置的位值至尾位全部右移一位,并将所保存的指针p所指向的位值填入至密文信息中与指针q相对应的位置;
(15)重复步骤(14),直至指针q移动至密钥信息的首位置,将处理后的指针p所指向的明文信息写入至明文文件中;
(16)重复步骤(12)至步骤(15),对读取的下一个N字节的密文信息进行解密,直至密文文件中的密文信息全部被读取,并生成对应的明文文件。
所述解密步骤还包括:
将步骤(6)所生成的密文文件迭代固定次数的加密步骤,生成对应的密文文件。
所述解密步骤还包括:
将步骤(16)所生成的明文文件迭代相同固定次数的解密步骤,生成所需要的明文文件。
所述明文文件、秘钥文件和密文文件均为二进制文件。
本发明的有益效果是:
本发明采用一种基于流密码的丢位加密-补位解密的加解密方法,在流密码加密的过程中不需要专用的计算机硬件、专用的电子逻辑器件,更不需要逻辑电路的设计,不涉及混沌信号的反馈问题和反馈算法,完全通过软件的方法程解决流密码的加密和解密过程,降低明码加密对外条件的依靠。本发明若要破解密文文件,必须知道算法程序、密文文件和秘钥文件,而同时具备此三个文件比较几乎不可能,且秘钥的长度可以扩展至128字节至于更大,极大增加了破译的难度。
具体实施方式
实施例1:
本发明提供了一种基于流密码的丢位加密-补位解密的加解密方法,在密码学领域,所有的加解密都相通的,加密时,通过加密算法,利用秘钥对明文进行加密形成密文,解密时,通过解密算法,利用秘钥对密文进行解密形成明文。本发明亦遵从相同的原理。
本发明在加密过程,对于明码集合M=和秘钥集合P=,其中,两个集合均为二进制集合,且明码集合M中元素的个数不少于秘钥集合P中元素的个数,即m大于或等于n,取指针p指向秘钥集合P的位,并向方向搜索,同时取指针q指向明码集合M的位,并向方向搜索,且规定指针q随着指针p的位移而同步位移;
加密的过程在指针p搜索至“1”时,将指针q所指的位值丢弃,并将其位值移至尾部,是一个丢位加密的过程。
解密时与加密正好相反,将原来依次丢弃的位重新补回,是一个补位解密的过程。
不论是加密或者是解密,明码、秘钥、密文的长度都是有规定的,本发明中,其中,约定明码集合M中的元素个数E满足Emod8=0,秘钥集合P中元素的个数F满足Fmod8=0,密文集合C中元素的个数G满足Gmod8=0。
本发明若要破译,需要运算明文字节数(N)8倍的二次幂,即,基本上没有破解的可能性。本发明通过软件实现,方法简单,且极难破译;加密方法不是传统的一对一,一对多,而是无序加密;明文加密、发送、接收、解密实行三分离原则,使得保密系统更加安全。
本发明提供了文件式的加解密方法,在计算机或相关设备加解密时,通常以文件的形式保存明文、秘钥和密文,本发明也可以实现。加密时,通常会提供明文文件和秘钥文件,加密后生成密文文件,本发明中,三个文件皆为二进制文件。加密时,其步骤包括:
(1)读取明文文件中明文信息的字节数M,同时读取秘钥文件中秘钥信息的字节数N,且规定M大于N;
(2)以字节N为单位读取明文文件中的明文信息,并取指针p指向所读取的明文信息的尾位置;
(3)读取秘钥文件中的秘钥信息,并取指针q指向秘钥信息的首位置;
(4)指针q按位移动,指针p随着q的移动而同步移动,当指针q搜索到“1”位时,将指针p所指向的位值保存,同时将指针p所指向的位值至尾位值全部左移一位,并将保存的指针p所指向的位值填入至尾位;
(5)重复步骤(4),直至指针q移动至密钥信息的尾位置,将处理后的指针p所指向的明文信息写入至密文文件中;
(6)重复步骤(2)至步骤(5),对读取的下一个N字节的明文信息进行加密,直至明文文件中的明文信息全部被读取,并生成对应的密文文件,密文文件可以迭代固定次数的加密步骤,生成对应的密文文件。
加密后需要解密,解密步骤包括:
(11)读取密文文件中密文信息的字节数K,同时读取秘钥文件中秘钥信息的字节数N,且K大于N;
(12)以字节N为单位读取密文文件中的密文信息,并取指针p指向所读取的密文信息的尾位置;
(13)读取秘钥文件中的秘钥信息,并取指针q指向秘钥信息的尾位置;
(14)指针q按位移动,当指针q搜索到“1”位时,将指针p所指向的位值保存,指针p移动一位,之后将密文信息中与指针q相对应位置的位值至尾位全部右移一位,并将所保存的指针p所指向的位值填入至密文信息中与指针q相对应的位置;
(15)重复步骤(14),直至指针q移动至密钥信息的首位置,将处理后的指针p所指向的明文信息写入至明文文件中;
(16)重复步骤(12)至步骤(15),对读取的下一个N字节的密文信息进行解密,直至密文文件中的密文信息全部被读取,并生成对应的明文文件,将生成的此文件迭代与加密时相同次数的解密步骤,生成所需要的明文文件。
其中,明文文件中的字节数M、秘钥文件中的字节数N及密文文件中的字节数K均为整数,且M与K均大于N,这样就保证了在以N为单位进行加密或解密时,保证运算的可靠性。
本发明在具体应用时,其中涉及到的位移运算,如加密时向左移动,解密时向右移动,只是一种简单的运算而已,但完全满足应用,对于使用类似手段的技术均在本发明的保护范围之内;对于以文件形式进行加解密的类似手段,亦在本发明的保护范围。
实施例2:
本实施例以加解密时的数据为例进行说明,简单起见,进行如下设置:
解密时,对于:
在具体执行时,亦可以将对应的集合写入对应的文件之中,以文件的形式进行加密解密。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,都应属于本发明的保护范围。
Claims (10)
1.一种基于流密码的丢位加密-补位解密的加解密方法,其特征在于,包括明码集合M= 和秘钥集合P=,且两个集合均为二进制集合,所述方法包括加密步骤与解密步骤,其中,加密步骤包括:
所述解密步骤包括:
2.根据权利要求1所述的方法,其特征在于,所述加密步骤还包括:
将生成的密文集合C迭代固定次数的加密步骤,生成对应的密文集合。
3.根据权利要求2所述的方法,其特征在于,所述解密步骤还包括:
将生成的明码集合M迭代相同固定次数的解密步骤,生成对应所需要的明码集合。
6.根据权利要求1所述的方法,其特征在于,其中,明码集合M中的元素个数E满足Emod8=0,秘钥集合P中元素的个数F满足Fmod8=0,密文集合C中元素的个数G满足Gmod8=0。
7.一种基于流密码的丢位加密-补位解密的加解密方法,其特征在于,包括明文文件、秘钥文件和密文文件,所述方法包括加密步骤和解密步骤,所述加密步骤包括:
(1)读取明文文件中明文信息的字节数M,同时读取秘钥文件中秘钥信息的字节数N,且规定M大于N;
(2)以字节N为单位读取明文文件中的明文信息,并取指针p指向所读取的明文信息的尾位置;
(3)读取秘钥文件中的秘钥信息,并取指针q指向秘钥信息的首位置;
(4)指针q按位移动,指针p随着q的移动而同步移动,当指针q搜索到“1”位时,将指针p所指向的位值保存,同时将指针p所指向的位值至尾位值全部左移一位,并将保存的指针p所指向的位值填入至尾位;
(5)重复步骤(4),直至指针q移动至密钥信息的尾位置,将处理后的指针p所指向的明文信息写入至密文文件中;
(6)重复步骤(2)至步骤(5),对读取的下一个N字节的明文信息进行加密,直至明文文件中的明文信息全部被读取,并生成对应的密文文件;
所述解密步骤包括:
(11)读取密文文件中密文信息的字节数K,同时读取秘钥文件中秘钥信息的字节数N,且K大于N;
(12)以字节N为单位读取密文文件中的密文信息,并取指针p指向所读取的密文信息的尾位置;
(13)读取秘钥文件中的秘钥信息,并取指针q指向秘钥信息的尾位置;
(14)指针q按位移动,当指针q搜索到“1”位时,将指针p所指向的位值保存,指针p移动一位,之后将密文信息中与指针q相对应位置的位值至尾位全部右移一位,并将所保存的指针p所指向的位值填入至密文信息中与指针q相对应的位置;
(15)重复步骤(14),直至指针q移动至密钥信息的首位置,将处理后的指针p所指向的明文信息写入至明文文件中;
(16)重复步骤(12)至步骤(15),对读取的下一个N字节的密文信息进行解密,直至密文文件中的密文信息全部被读取,并生成对应的明文文件。
8.根据权利要求6所述的方法,其特征在于,所述解密步骤还包括:
将步骤(6)所生成的密文文件迭代固定次数的加密步骤,生成对应的密文文件。
9.根据权利要求8所述的方法,其特征在于,所述解密步骤还包括:
将步骤(16)所生成的明文文件迭代相同固定次数的解密步骤,生成所需要的明文文件。
10.根据权利要求7所述的方法,其特征在于,所述明文文件、秘钥文件和密文文件均为二进制文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310494077.4A CN103595524B (zh) | 2013-10-21 | 2013-10-21 | 一种基于流密码的丢位加密-补位解密的加解密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310494077.4A CN103595524B (zh) | 2013-10-21 | 2013-10-21 | 一种基于流密码的丢位加密-补位解密的加解密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103595524A true CN103595524A (zh) | 2014-02-19 |
CN103595524B CN103595524B (zh) | 2017-01-04 |
Family
ID=50085518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310494077.4A Expired - Fee Related CN103595524B (zh) | 2013-10-21 | 2013-10-21 | 一种基于流密码的丢位加密-补位解密的加解密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103595524B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141413A (zh) * | 2015-08-06 | 2015-12-09 | 吉林大学 | 基于流密码的循环链表异或加密方法及解密方法 |
CN105959118A (zh) * | 2016-04-28 | 2016-09-21 | 吉林大学 | 基于流密码的双位单向循环链表加密解密方法 |
WO2019214024A1 (zh) * | 2018-05-11 | 2019-11-14 | 吉林大学珠海学院 | 一种二进制流散列取模加密解密方法 |
CN112615816A (zh) * | 2020-11-30 | 2021-04-06 | 中科热备(北京)云计算技术有限公司 | 一种云文档传输加解密方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090222283A1 (en) * | 2008-01-31 | 2009-09-03 | Medicity, Inc. | Healthcare Service Management Using A Centralized Service Management Module |
CN101771533A (zh) * | 2008-12-30 | 2010-07-07 | 上海华虹集成电路有限责任公司 | 基于线性反馈移位寄存器的序列流密码算法硬件实现方法 |
CN102983972A (zh) * | 2012-10-18 | 2013-03-20 | 郎六琪 | 基于流密码的动态加密解密方法 |
-
2013
- 2013-10-21 CN CN201310494077.4A patent/CN103595524B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090222283A1 (en) * | 2008-01-31 | 2009-09-03 | Medicity, Inc. | Healthcare Service Management Using A Centralized Service Management Module |
CN101771533A (zh) * | 2008-12-30 | 2010-07-07 | 上海华虹集成电路有限责任公司 | 基于线性反馈移位寄存器的序列流密码算法硬件实现方法 |
CN102983972A (zh) * | 2012-10-18 | 2013-03-20 | 郎六琪 | 基于流密码的动态加密解密方法 |
Non-Patent Citations (2)
Title |
---|
宋维平: "流密码与RC4算法", 《吉林师范大学学报(自然科学版)》 * |
罗启彬等: "流密码的现状与发展", 《信息与电子工程》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141413A (zh) * | 2015-08-06 | 2015-12-09 | 吉林大学 | 基于流密码的循环链表异或加密方法及解密方法 |
CN105141413B (zh) * | 2015-08-06 | 2018-05-15 | 吉林大学 | 基于流密码的循环链表异或加密方法及解密方法 |
CN105959118A (zh) * | 2016-04-28 | 2016-09-21 | 吉林大学 | 基于流密码的双位单向循环链表加密解密方法 |
WO2019214024A1 (zh) * | 2018-05-11 | 2019-11-14 | 吉林大学珠海学院 | 一种二进制流散列取模加密解密方法 |
US10951399B2 (en) | 2018-05-11 | 2021-03-16 | Zhuhai College Of Jilin University | Binary stream hash modulus encryption and decryption method |
CN112615816A (zh) * | 2020-11-30 | 2021-04-06 | 中科热备(北京)云计算技术有限公司 | 一种云文档传输加解密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103595524B (zh) | 2017-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101324825B1 (ko) | 메시지 인증 코드 사전 연산 방법 및 시스템 | |
CN106953875A (zh) | 基于多密钥流密码的顺序加密方法 | |
CN109245881A (zh) | 一种照片视频云端加密存储方法 | |
CN104104500A (zh) | 一种量子保密传输的方法和装置 | |
JP6575532B2 (ja) | 暗号化装置、復号装置、暗号処理システム、暗号化方法、復号方法、暗号化プログラム、及び復号プログラム | |
CN103095449B (zh) | 一种基于流密码的动态加密解密方法 | |
CN108173640A (zh) | 一种高安全性的字符串对称加密和解密方法 | |
CN109981249B (zh) | 基于拉链式动态散列和nlfsr的加密解密方法及装置 | |
WO2016206504A1 (zh) | 一种数据加密的方法、解密的方法及装置 | |
CN109951268B (zh) | 基于位置换和位变换的加密解密方法和装置 | |
CN109194461A (zh) | 基于双密钥流密码的单向链表顺序加密解密方法 | |
CN103780382A (zh) | 一种基于超球面的多变量公钥加密/解密系统及方法 | |
CN103595524A (zh) | 一种基于流密码的丢位加密-补位解密的加解密方法 | |
CN103812658B (zh) | 一种基于流密码的安全通信协议 | |
CN105141413B (zh) | 基于流密码的循环链表异或加密方法及解密方法 | |
Vohra et al. | An efficient chaos-based optimization algorithm approach for cryptography | |
CN106059748B (zh) | 一种基于块安全再生码的轻量级数据安全存储方法 | |
CN108777611A (zh) | 基于双密钥流密码的双向链表顺序加密解密方法 | |
CN105187192B (zh) | 在计算机网络中提高数据传输安全性的方法 | |
JP2015082077A (ja) | 暗号化装置、制御方法、及びプログラム | |
CN108777622A (zh) | 一种二进制流散列取模加密解密方法 | |
Zhao et al. | Design of Improved DES Algorithm Based on Double Plaintext | |
US11664976B2 (en) | Method and devices for creating redundancy and encryption using Mojette Transform | |
Rajesh | Double Encryption using TEA and DNA | |
Barnawi et al. | A HIVE STREAM ENCRYPTION (HSE): A NEW STREAM ENCRYPTION ALGORITHM. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170104 Termination date: 20211021 |
|
CF01 | Termination of patent right due to non-payment of annual fee |