CN101997674A - 加密通信方法、加解密通信装置、加密装置以及解密装置 - Google Patents
加密通信方法、加解密通信装置、加密装置以及解密装置 Download PDFInfo
- Publication number
- CN101997674A CN101997674A CN2009101613628A CN200910161362A CN101997674A CN 101997674 A CN101997674 A CN 101997674A CN 2009101613628 A CN2009101613628 A CN 2009101613628A CN 200910161362 A CN200910161362 A CN 200910161362A CN 101997674 A CN101997674 A CN 101997674A
- Authority
- CN
- China
- Prior art keywords
- configuration file
- encryption
- cryptographic algorithm
- decryption
- deciphering
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种能够提高加密通信的安全性的加密通信方法、加解密通信装置、加密装置以及解密装置。在加密通信方法中,第一装置有第一可重组逻辑电路,第二装置有第二可重组逻辑电路,第一可重组逻辑电路和第二可重组逻辑电路具有相同的构成,第一装置和第二装置之间确定用于实现密码算法的加密配置文件和解密配置文件;第一装置根据加密配置文件控制第一可重组逻辑电路而构成加密逻辑电路,利用加密密钥和加密逻辑电路对数据进行加密,并将加密得到的加密数据发送给第二装置;所述第二装置接收来自第一装置的加密数据,根据解密配置文件控制第二可重组逻辑电路而构成解密逻辑电路,利用解密密钥和所构成的解密逻辑电路对解密数据进行解密。
Description
技术领域
本发明涉及能够动态地更改加密算法加密通信方法、加解密通信装置、加密装置以及解密装置。
背景技术
密码算法是将明文(密文)转换为密文(明文)的一系列公式、法则或程序,从数学的角度来看,密码算法是一个明文(密文)到密文(明文)的变换,而且这种变换是可逆的。密钥可以看作是密码算法中的可变参数,改变了密钥也就改变了明文和密文之间的函数关系。
在密码算法中,数据加密和解密的基本过程如图1所示。加密过程为:明文P通过含有参数Ke的变换E得到密文C,即C=EKe(P),其中,参数Ke为加密密钥,变换E为加密算法。解密过程为:密文通过含有参数Kd的变换D得到明文P,即P=DKd(C),其中,参数Kd为解密密钥,变换D为解密算法。
根据密钥类型的不同,密码体制可分为两类:一类是对称密码体制;另一类是非对称密码体制。
在对称密码体制中,对称密码体制的基本特点是解密算法就是加密算法的逆运算,加密密钥和解密密钥是相同的。在对称密码体制中,通信双方之间的密钥必须妥善保管,而且需要经常更换。
非对称密码体制也称公钥密码体制。非对称密码体制的基本特点是存在一个公钥/私钥对,用私钥加密的信息只能用对应的公钥解密,用公钥加密的信息只能用对应的私钥解密。
考虑加密通信的安全性,目前通常采用一次一密形式,即每一次通信都采用不同的密钥来进行加密。但即使经常更换密钥,由于通常情况下加密算法是固定不变的,所以通信的安全性也无法得到保证。因为,攻击者通过窃取被加密的密文,通过某种手段得到相关的明文就能够得到加密算法,之后的密文就很容易地被解密。还有,攻击者通过穷举等方法也能够得到加密算法。另外,设计加密算法的人员或机构知道加密算法,管理或生产加密算法相关产品的人员或机构也能够知道加密算法,所以还存在知道加密算法的人员或机构泄密加密算法的可能性。因此,在目前的密码体制下,安全性不能得到保证。
发明内容
本发明的目的在于提供一种加密通信方法,提高加密通信的安全性。
本发明的另一目的在于提供一种加解密通信装置,提高加密通信的安全性。
本发明的另一目的在于提供一种加密装置,提高加密通信的安全性。
本发明的另一目的在于提供一种解密装置,提高加密通信的安全性。
本发明的另一目的在于提供一种加密通信系统,提高加密通信的安全性。
为了实现本发明的目的,本发明提供一种加密通信方法,在第一装置和第二装置之间进行数据加密通信,所述第一装置设置有第一可重组逻辑电路,所述第二装置设置有第二可重组逻辑电路,所述第一可重组逻辑电路和第二可重组逻辑电路具有相同的构成,所述加密通信方法包括如下步骤:所述第一装置和第二装置之间确定用于实现密码算法的配置文件,所述用于实现密码算法的配置文件包括用于实现加密算法的加密配置文件和用于实现解密算法的解密配置文件;第一装置根据所确定的加密配置文件控制所述第一可重组逻辑电路而构成加密逻辑电路,利用加密密钥和所构成的加密逻辑电路对数据进行加密,并将加密得到的加密数据发送给第二装置;所述第二装置接收来自第一装置的加密数据,根据所确定的解密配置文件控制所述第二可重组逻辑电路而构成解密逻辑电路,利用解密密钥和所构成的解密逻辑电路对解密数据进行解密。
所述第一装置具有存储有配置文件的第一配置文件存储单元,所述第二装置具有存储有配置文件的第二配置文件存储单元,所述第一装置根据所确定的加密配置文件控制所述第一可重组逻辑电路而构成加密逻辑电路的步骤包括:所述第一装置从所述第一配置文件存储单元中提取所确定的加密配置文件,根据所提取的加密配置文件控制所述第一可重组逻辑电路而构成加密逻辑电路,所述第二装置根据所确定的解密配置文件控制所述第二可重组逻辑电路而构成解密逻辑电路的步骤包括:所述第二装置从所述第二配置文件存储单元中提取所确定的解密配置文件,根据所提取的解密配置文件控制所述第二可重组逻辑电路而构成解密逻辑电路。
对每一个密码算法设置不同的密码算法标识,在第一配置文件存储单元中,将密码算法标识、加密配置文件以及解密配置文件一一对应地存储,在第二配置文件存储单元中,将密码算法标识、加密配置文件以及解密配置文件一一对应地存储,所述第一装置和第二装置之间确定用于实现密码算法的配置文件的步骤包括:所述第一装置和第二装置之间确定用于表示密码算法的密码算法标识,所述第一装置从所述第一配置文件存储单元中提取所确定的加密配置文件的步骤包括:所述第一装置根据所确定的密码算法标识,从所述第一配置文件存储单元中提取与密码算法标识对应的加密配置文件,所述第二装置从所述第二配置文件存储单元中提取所确定的解密配置文件的步骤包括:所述第二装置根据所确定的密码算法标识,从所述第二配置文件存储单元中提取与密码算法标识对应的解密配置文件。
对每一个配置文件设置不同的配置文件标识,设置有密码算法标识、加密配置文件标识和解密配置文件标识的对应关系,在第一配置文件存储单元中将配置文件标识和配置文件一一对应地存储,在第二配置文件存储单元中将配置文件标识和配置文件一一对应地存储,所述第一装置和第二装置之间确定用于实现密码算法的配置文件的步骤包括:所述第一装置和第二装置之间确定用于表示密码算法的密码算法标识,利用上述对应关系,根据所确定的密码算法标识确定加密配置文件标识和解密配置文件标识,所述第一装置从所述第一配置文件存储单元中提取所确定的加密配置文件的步骤包括:所述第一装置根据所确定的加密配置文件标识,从所述第一配置文件存储单元中提取与加密配置文件标识对应的配置文件作为加密配置文件,所述第二装置从所述第二配置文件存储单元中提取所确定的解密配置文件的步骤包括:所述第二装置根据所确定的解密配置文件标识,从所述第二配置文件存储单元中提取与解密配置文件标识对应的配置文件作为解密配置文件。
对每一个配置文件设置不同的配置文件标识,设置有加密配置文件标识和解密配置文件标识的对应关系,在第一配置文件存储单元中将配置文件标识和配置文件一一对应地存储,在第二配置文件存储单元中将配置文件标识和配置文件一一对应地存储,所述第一装置和第二装置之间确定用于实现密码算法的配置文件的步骤包括:所述第一装置和第二装置之间确定加密配置文件标识,并利用上述对应关系确定解密配置文件标识,所述第一装置从所述第一配置文件存储单元中提取所确定的加密配置文件的步骤包括:所述第一装置根据所确定的加密配置文件标识,从所述第一配置文件存储单元中提取与加密配置文件标识对应的配置文件作为加密配置文件,所述第二装置从所述第二配置文件存储单元中提取所确定的解密配置文件的步骤包括:所述第二装置根据所确定的解密配置文件标识,从所述第二配置文件存储单元中提取与解密配置文件标识对应的配置文件作为解密配置文件。
所述第一装置和第二装置之间确定用于表示密码算法的密码算法标识的步骤包括:所述第一装置生成第一参数,并向第二装置发送第一参数,接收来自所述第二装置的第二参数,所述第二装置生成第二参数,并向所述第一装置发送第二参数,接收来自所述第一装置的第一参数,所述第一装置根据所述第一参数和所述第二参数按照规定方式确定所述密码算法标识,所述第二装置根据所述第一参数和所述第二参数按照规定方式确定所述密码算法标识。
所述第一装置和第二装置之间确定加密配置文件标识的步骤包括:所述第一装置生成第一参数,并向第二装置发送第一参数,接收来自所述第二装置的第二参数,所述第二装置生成第二参数,并向所述第一装置发送第二参数,接收来自所述第一装置的第一参数,所述第一装置根据所述第一参数和所述第二参数按照规定方式确定所述加密配置文件标识,所述第二装置根据所述第一参数和所述第二参数按照规定方式确定所述加密配置文件标识。
所述第一参数是随机数,所述第二参数是随机数。
所述第一可重组逻辑电路和第二可重组逻辑电路均包括多个可控节点、多个重组元素以及所述可控节点和所述重组元素之间的连接网络,所述根据加密配置文件控制所述第一可重组逻辑电路而构成加密逻辑电路的步骤包括:根据加密配置文件控制所述第一可重组逻辑电路中的可控节点,使所述第一可重组逻辑电路中的重组元素的连接关系变化而构成为加密逻辑电路,所述根据解密配置文件控制所述第二可重组逻辑电路而构成解密逻辑电路的步骤包括:根据解密配置文件控制所述第二可重组逻辑电路中的可控节点,使所述第二可重组逻辑电路中的重组元素的连接关系变化而构成为解密逻辑电路。
所述可控节点包括功能可控节点和通路可控节点,
所述控制所述可控节点是:控制所述功能可控节点使重组元素的功能改变,控制所述通路可控节点使重组元素的数据传输路径改变。
针对每一次加密通信,所述第一装置和第二装置之间重新确定用于实现密码算法的配置文件。
所述第一装置和第二装置之间确定加密密钥和解密密钥。
针对每一次加密通信,所述第一装置和第二装置之间重新确定加密密钥和解密密钥。
所述加密密钥和解密密钥是对称密码体制中的加密密钥和解密密钥,或者,所述加密密钥和解密密钥是非对称密码体制中的公钥/私钥对。
为了实现本发明的另一目的,本发明提供一种加解密通信装置,其特征在于包括:可重组逻辑电路;密码配置文件确定单元,用于与对方加解密通信装置确定用于实现密码算法的配置文件,所述用于实现密码算法的配置文件包括用于实现加密算法的加密配置文件和用于实现解密算法的解密配置文件;控制单元,用于将用于实现密码算法的配置文件注入到所述可重组逻辑电路,在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元将所述密码配置文件确定单元确定的所述加密配置文件注入到所述可重组逻辑电路,所述可重组逻辑电路根据所注入的加密配置文件而可重组为加密逻辑电路,所述可重组的加密逻辑电路利用加密密钥对数据进行加密,在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元将所述密码配置文件确定单元确定的所述解密配置文件注入到所述可重组逻辑电路,所述可重组逻辑电路根据所注入的解密配置文件而可重组为解密逻辑电路,所述可重组的解密逻辑电路利用解密密钥对数据进行解密。
加解密通信装置还包括:配置文件存储单元,存储有配置文件;在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元从所述配置文件存储单元中提取所述密码配置文件确定单元所确定的加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路,在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元从所述配置文件存储单元中提取所述密码配置文件确定单元所确定的解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
所述配置文件存储单元将密码算法标识、加密配置文件以及解密配置文件一一对应地存储,所述密码配置文件确定单元与对方加解密通信装置确定用于表示密码算法的密码算法标识,在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元根据所述密码配置文件确定单元所确定的密码算法标识,从所述配置文件存储单元中提取与密码算法标识对应的加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路,
在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元根据所述密码配置文件确定单元所确定的密码算法标识,从所述配置文件存储单元中提取与密码算法标识对应的解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
加解密通信装置还包括对应关系单元,设置有密码算法标识、加密配置文件标识和解密配置文件标识的对应关系,所述配置文件存储单元将配置文件标识和配置文件一一对应地存储,所述密码配置文件确定单元与对方加解密通信装置确定用于表示密码算法的密码算法标识,利用所述对应关系单元中设置的对应关系,根据所确定的密码算法标识确定加密配置文件标识和解密配置文件标识,在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元根据所述密码配置文件确定单元所确定的加密配置文件标识,从所述配置文件存储单元中提取与加密配置文件标识对应的配置文件作为加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路,在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元根据所述密码配置文件确定单元所确定的解密配置文件标识,从所述配置文件存储单元中提取与解密配置文件标识对应的配置文件作为解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
加解密通信装置还包括对应关系单元,设置有加密配置文件标识和解密配置文件标识的对应关系,所述配置文件存储单元将配置文件标识和配置文件一一对应地存储,所述密码配置文件确定单元与对方加解密通信装置确定加密配置文件标识,利用所述对应关系单元中设置的对应关系确定解密配置文件标识,在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元根据所述密码配置文件确定单元所确定的加密配置文件标识,从所述配置文件存储单元中提取与加密配置文件标识对应的配置文件作为加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路,在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元根据所述密码配置文件确定单元所确定的解密配置文件标识,从所述配置文件存储单元中提取与解密配置文件标识对应的配置文件作为解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
加解密通信装置还包括参数生成和收发单元,用于生成第一参数,向所述对方加密通信装置发送所述第一参数,接收来自所述对方加密通信装置的第二参数;所述密码配置文件确定单元根据所述第一参数和所述第二参数按照规定方式确定所述密码算法标识。
加解密通信装置还包括参数生成和收发单元,用于生成第一参数,向所述对方加密通信装置发送所述第一参数,接收来自所述对方加密通信装置的第二参数;所述密码配置文件确定单元根据所述第一参数和所述第二参数按照规定方式确定所述加密配置文件标识。
所述可重组逻辑电路具有多个可控节点、多个重组元素以及可控节点和重组元素之间的连接网络,在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元将加密配置文件注入到所述可控节点,所述可重组逻辑电路根据注入到所述可控节点的加密配置文件使所述重组元素的连接关系变化而可重组为加密逻辑电路,在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元将解密配置文件注入到所述可控节点,所述可重组逻辑电路根据注入到所述可控节点的解密配置文件使所述重组元素的连接关系变化而可重组为解密逻辑电路。
所述可控节点包括功能可控节点和通路可控节点,所述可重组逻辑电路根据注入到所述功能可控节点的加密配置文件或解密配置文件使重组元素的功能改变,根据注入到所述通路可控节点的加密配置文件或解密配置文件使重组元素的数据传输路径改变。
针对每一次加密通信,所述密码算法确定单元与所述对方加密通信装置重新确定用于实现密码算法的配置文件。
加解密通信装置还包括:密钥确定单元,用于与对方加解密通信装置确定加密密钥和解密密钥。
针对每一次加密通信,所述密钥确定单元与所述对方加密通信装置重新确定加密密钥和解密密钥。
为了实现本发明的另一目的,本发明提供一种加密装置,用于与解密装置进行加密通信,包括:可重组逻辑电路;加密配置文件确定单元,用于与解密装置确定用于实现加密算法的加密配置文件;控制单元,用于将所述加密配置文件确定单元所确定的加密配置文件注入到所述可重组逻辑电路,所述可重组逻辑电路根据所注入的加密配置文件而可重组为加密逻辑电路,所述可重组的加密逻辑电路利用加密密钥对数据进行加密。
加密装置还具有配置文件存储单元,存储有配置文件,所述控制单元从所述配置文件存储单元中提取所述加密配置文件确定单元所确定的加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路。
所述可重组逻辑电路具有多个可控节点、多个重组元素以及可控节点和重组元素之间的连接网络,所述控制单元将加密配置文件注入到所述可控节点,所述可重组逻辑电路根据注入到所述可控节点的加密配置文件使所述重组元素的连接关系变化而可重组为加密逻辑电路。
加密装置还包括加密密钥确定单元,用于与解密装置确定加密密钥。
为了实现本发明的另一目的,本发明提供一种加密方法,用于利用可重组逻辑电路与解密装置进行加密通信,该加密方法包括:与所述解密装置确定用于实现加密算法的加密配置文件;根据所确定的加密配置文件控制所述可重组逻辑电路而构成加密逻辑电路;利用加密密钥和所构成的加密逻辑电路对数据进行加密,并将加密得到的加密数据发送给所述解密装置。
具有存储有配置文件的配置文件存储单元,根据所确定的加密配置文件控制所述可重组逻辑电路而构成加密逻辑电路的步骤包括:从所述配置文件存储单元中提取所确定的加密配置文件,根据所提取的加密配置文件控制所述可重组逻辑电路而构成加密逻辑电路。
所述可重组逻辑电路包括多个可控节点、多个重组元素以及所述可控节点和所述重组元素之间的连接网络,所述根据加密配置文件控制所述可重组逻辑电路而构成加密逻辑电路的步骤包括:根据加密配置文件控制所述可重组逻辑电路中的可控节点,使所述重组元素的连接关系变化而构成为加密逻辑电路。
与解密装置确定加密密钥。
为了实现本发明的另一目的,本发明提供一种解密装置,用于与加密装置之间进行加密通信,具有:可重组逻辑电路;解密配置文件确定单元,用于与加密装置确定用于实现解密算法的解密配置文件;
控制单元,用于将所述解密配置文件确定单元所确定的解密配置文件注入到所述可重组逻辑电路,所述可重组逻辑电路根据所注入的解密配置文件而可重组为解密逻辑电路,所述可重组的解密逻辑电路利用解密密钥对来自所述加密装置的加密数据进行解密。
解密装置还具有配置文件存储单元,存储有配置文件,所述控制单元从所述配置文件存储单元中提取所述解密配置文件确定单元所确定的解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
所述可重组逻辑电路具有多个可控节点、多个重组元素以及可控节点和重组元素之间的连接网络,所述控制单元将解密配置文件注入到所述可控节点,所述可重组逻辑电路根据注入到所述可控节点的解密配置文件使所述重组元素的连接关系变化而可重组为解密逻辑电路。
解密装置还包括解密密钥确定单元,用于与加密装置确定解密密钥。
为了实现本发明的另一目的,本发明提供一种解密方法,用于利用可重组逻辑电路对来自加密装置的数据进行解密,该解密方法包括:与所述加密装置确定用于实现解密算法的解密配置文件;根据所确定的解密配置文件控制所述可重组逻辑电路而构成解密逻辑电路;利用解密密钥和所构成的解密逻辑电路对来自所述加密装置的加密数据进行解密。
具有存储有配置文件的配置文件存储单元,根据所确定的解密配置文件控制所述可重组逻辑电路而构成解密逻辑电路的步骤包括:从所述配置文件存储单元中提取所确定的解密配置文件,根据所提取的解密配置文件控制所述可重组逻辑电路而构成解密逻辑电路。
所述可重组逻辑电路包括多个可控节点、多个重组元素以及所述可控节点和所述重组元素之间的连接网络,所述根据解密配置文件控制所述可重组逻辑电路而构成解密逻辑电路的步骤包括:根据解密配置文件控制所述可重组逻辑电路中的可控节点,使所述重组元素的连接关系变化而构成为解密逻辑电路。
与加密装置确定解密密钥。
为了实现本发明的另一目的,本发明提供一种加密通信系统,包括加密装置和解密装置,所述加密装置具有:第一可重组逻辑电路;加密配置文件确定单元,用于与解密装置确定用于实现加密算法的加密配置文件;第一控制单元,用于将所述加密配置文件确定单元所确定的加密配置文件注入到所述第一可重组逻辑电路,所述第一可重组逻辑电路根据所注入的加密配置文件而可重组为加密逻辑电路,所述可重组的加密逻辑电路利用加密密钥对数据进行加密,所述加密装置将加密得到的加密数据发送给解密装置,所述解密装置具有:第二可重组逻辑电路;解密配置文件确定单元,用于与加密装置确定用于实现解密算法的解密配置文件;第二控制单元,用于将所述解密配置文件确定单元所确定的解密配置文件注入到所述第二可重组逻辑电路,所述第二可重组逻辑电路根据所注入的解密配置文件而可重组为解密逻辑电路,所述可重组的解密逻辑电路利用解密密钥对来自所述加密装置的加密数据进行解密,其中,所述第一可重组逻辑电路和第二可重组逻辑电路具有相同构成。
根据本发明的加解密通信方法,由于利用可重组逻辑电路来实现了密码算法,而通信双方协商确定密码算法时只是确定了相应的配置文件而并没有透露密码算法本身,因此,使密码算法具有了隐蔽特性,通信双方之外的其他终端无法知道本次通信中所采用的密码算法是什么,甚至通信双方本身也无法知道本次通信中所采用的密码算法是什么,从而提高了加密通信的安全性。另外,通信双方可以方便地更换所适用的密码算法,可以针对每一次通信都更换密码算法,缩短了同一密码算法的使用周期,从而大大降低了密码算法泄露的可能性,增加了密码算法分析的难度,提高了加密通信的安全性。还有,由于利用了可重组逻辑电路,所以可以设计很多密码算法,因此即使经常更换密码算法也能够使密码算法的重复率大大降低,增加了密码算法分析的难度,提高了加密通信的安全性。如上所述,根据本发明,通过采用不含任何加密算法的“白裸片”设计,不涉及密码算法,仅包括支持密码算法实现的可重组逻辑电路,使加解密装置在设计和生产过程中不会泄露任何密码算法的信息,提高了加密通信的安全性。
用户会话密钥是由用户相互自动分配,动态改变,一次一密或一次多密的特性,保证了用户间会话通信的安全保密性。用户会话密钥只是在用户一次会话时刻建立密钥,在通信之前和通信完成之后均不存在密钥,不会因密钥泄露受到攻击,提高了通信的安全性。
根据本发明,加密通信的通信双方可以动态地变更密码算法,可以使不同时刻的加密算法是不同的,而且该变化的加密算法是不知道的,从而提高了加密算法的隐蔽性、安全性。另外,通过使密钥经常变更,例如一次一密形式、一次多密形式、一个数据包一个密钥形式,能够进一步提高加密通信的安全性。
附图说明
图1是数据加密和解密的基本过程示意图。
图2是本发明实施例中的可重组逻辑电路的结构图。
图3-a是实现不同逻辑函数的可重组逻辑电路的示意图。
图3-b是表示上述图3-a所示的电路在配置文件取不同值时所实现的函数关系的表。
图4-a是实现不同连接关系的可重组逻辑电路示意图。
图4-b和图4-c是示出通过对可控节点的控制所实现的两种不同的连接关系的图。
图5是示出在本发明实施例一中,在终端A和终端B之间实现加密通信的流程图。
图6是本发明实施例一中的加解密通信装置的结构示意图。
图7是示出在本发明实施例二中,在终端A和终端B之间实现加密通信的流程图。
图8是本发明实施例二中的加解密通信装置的结构示意图。
图9是本发明实施例二中的加解密通信装置的另一结构示意图。
图10是示出在本发明实施例三中,在终端A和终端B之间确定密码算法标识(加密配置文件标识、解密配置文件标识)的流程图。
图11是本发明实施例三中的加解密通信装置的结构示意图。
具体实施方式
下面结合附图详细介绍本发明的具体实施方式。
本发明的通信双方的装置中均利用可重组逻辑电路来实现密码算法(包括加密算法和解密算法),在通信过程中通信双方动态地改变基于可重组逻辑电路的密码算法,从而提高加密通信的安全性。
首先定义可重组逻辑电路中的一些术语。
设E表示某些可被不同密码算法重复使用的功能部件所构成的集合,E={e1,e2,...,em}(m∈自然数),CTRL表示某些指令界面可见、可控的部件所构成的集合,CTRL={ctrl1,ctrl2,...,ctrln}(n∈自然数),C表示上述功能部件或可控部件之间的连接关系所构成的集合,C={R<a,b>|R<a,b>是a到b的连接关系,a,b∈E∪CTRL},则由E、CTRL、C所确定的逻辑电路就称为可重组逻辑电路,记为RELOG={E,CTRL,C}。其中ei∈E(i=1,2,...,m)称为重组元素,ctrli∈CTRL(i=1,2,...,n)称为可控节点。
可重组逻辑电路的功能将随着可控节点的控制信号的改变而改变,设可重组逻辑电路RELOG={E,CTRL,C}所能实现的功能用FUNC_RELOG表示,其可控节点对应的控制信号的集合用CONF表示,则FUNC_RELOG是CONF的函数,表示为
FUNC_RELOG=f(CONF)
其中,CONF称为配置文件。
下面说明利用可重组逻辑电路来实现密码算法的构成。
本发明所述的可重组逻辑电路用于实现密码算法,其内部的结构可被重组,功能可被改变,以便适应不同密码算法的需求。如图2所示,所述可重组逻辑电路由三部分组成:多个可控节点、多个重组元素、以及可控节点和重组元素之间的连线网络。
重组元素是用于实现各种密码算法的基本操作成分,是可重组逻辑电路用于构建各种密码算法的基本元素。作为基本操作成分,可以举出异或运算、S盒变换、移位运算、置换运算、模加运算、模减运算、模加逆运算、模乘运算、模乘逆运算、逻辑非运算、逻辑与运算、逻辑或运算、指数运算、对数运算、反馈移位寄存器等。另外,在上述可重组逻辑电路中,重组元素本身也可以是一较低层次的可重组逻辑,即可重组逻辑电路可以由多个层次的可重组逻辑复合而成。在可重组逻辑电路中,如果使重组元素的重用次数越多,则可重组逻辑电路的规模就越小,平均每种密码算法分担的规模就越小或者说硬件资源的利用率就越高。
重组元素之间的连接网络用于为各种密码算法建立所需的数据传输通路。
重组元素及其连接网络在可控节点的控制下实现不同的密码算法。通过对可控节点进行控制,使可重组逻辑电路可重组为密码算法。可控节点是通过配置文件来进行控制。配置文件例如可以预先存储在配置文件存储单元中,在需要可重组为逻辑电路时,将存储在配置文件存储单元中的相应的配置文件注入到可重组逻辑电路中,这样,可重组逻辑电路能够可重组为相应的逻辑电路。
可重组逻辑电路中的可控节点主要有两类:功能可控节点和通路可控节点。控制功能可控节点能够使重组元素的功能改变,以适应不同算法的不同的操作功能需求;控制通路可控节点能够使重组元素之间的数据传输路径改变,以适应不同算法的数据传输需求。
另外,为了利用具有可控节点、重组元素以及连接网络的可重组逻辑电路来实现密码算法,还需要预先设置配置文件,这些配置文件构成密码算法库。因此,若要确定密码算法,则实质上是要确定密码算法相对应的配置文件。由于密码算法包括加密算法和解密算法,而且加密算法和解密算法是一一对应的,因此每一个密码算法对应一对配置文件。为了说明的方便,以下将加密算法对应的配置文件称为加密配置文件,将解密算法对应的配置文件称为解密配置文件。
在此,配置文件例如是32位、64位、128位或更多位数的二进制序列,配置文件的位数可以根据可控节点的数目来决定。
在利用可重组逻辑电路来实现加密算法时,根据加密配置文件来控制可控节点使重组元素的连接关系变化而构成加密逻辑电路。这样,通过该加密逻辑电路,利用加密密钥对数据进行加密。
在利用可重组逻辑电路来实现解密算法时,根据解密配置文件来控制可控节点使重组元素的连接关系变化而构成解密逻辑电路。这样,通过该解密逻辑电路,利用解密密钥对数据进行解密。
上述配置文件可以存储在配置文件存储单元中,在实现加密算法或解密算法时,从配置文件存储单元中提取相应的加密配置文件或解密配置文件,注入到可重组逻辑电路中即可。这样,可重组逻辑电路可以根据所注入的加密配置文件或解密配置文件而可重组为加密逻辑电路或解密逻辑电路。
下面给出实现不同逻辑函数的可重组逻辑电路的例子,以方便理解可重组逻辑电路的构成。
图3-a是实现不同逻辑函数的可重组逻辑电路的示意图。
在图3-a所示的电路中,AND2_1、AND2_2表示2输入与门,AND3表示3输入与门,OR2表示2输入或门,NOT表示非门,A、B、C、D是4个输入变量,F是输出变量。在上述电路中设置有2个可控节点AND2_1和AND2_2,其控制信号分别记为CTRL1和CTRL2。通过对CTRL1和CTRL2赋以不同的值,就可以改变上述电路的逻辑功能,实现不同的逻辑函数。图3-b所示的表给出了当CTRL1和CTRL2取不同的值的时候,上述图3-a所示的电路所实现的函数关系。
上述图3-a所示的可重组逻辑电路可以描述为:
RELOG={E,CTRL,C}
其中,
重组元素集合E={AND3,NOT,OR2};
可控节点集合CTRL={AND2_1,AND2_2};
连接网络C={AND3→AND2_1,NOT→AND2_2,AND2_1→OR2,AND2_1→OR2}。
该可重组逻辑电路实现的函数可表示为:
其中,配置文件CONF={CTRL1,CTRL2}。
图4-a是实现不同连接关系的可重组逻辑电路示意图。图4-a所示的可重组逻辑电路中共有3个重组元素A、B、C。A和B的输出经过MUX选通后进入C部件,作为C部件的输入。其中MUX就是一个可控节点,该可控节点通过控制信号M进行控制。通过对这个可控节点的控制就可以实现两种不同的连接关系,分别如图4-b和图4-c所示。下面说明利用可重组逻辑电路来实现加密通信的具体实施例。
实施例一:
下面以终端A向终端B发送数据、终端B接收来自终端A的数据的加密通信过程为例,说明利用可重组逻辑电路来实现加密通信的方法。
本实施例一中,在终端A中设置有可重组逻辑电路A,在终端B中设置有可重组逻辑电路B,所述可重组逻辑电路A和可重组逻辑电路B具有相同的构成。本实施例一中,在终端A和终端B之间实现加密通信的过程如图5所示,包括如下步骤。
步骤ST501:终端A和终端B之间确定密钥,所确定的密钥包括加密密钥和解密密钥。
在实际加密通信过程中,作为密钥,可以使用固定的加密密钥和解密密钥。为了提高加密通信的安全性,也可以像现有技术那样采用一次一密形式,例如,针对每一次加密通信,终端A和终端B之间重新确定密钥。
所述密钥可以是对称密码体制中的加密密钥和解密密钥,或者也可以是非对称密码体制中的公钥/私钥对。
步骤ST502:终端A和终端B之间确定密码算法,该确定的密码算法包括加密算法和解密算法。在本发明中,终端A和终端B之间确定密码算法实际上是确定用于实现密码算法的配置文件,即用于实现加密算法的加密配置文件和用于实现解密算法的解密配置文件。
在本实施例一中,终端A和终端B之间确定密码算法时,可以按照规定的方式直接生成加密配置文件和解密配置文件。
另外,这些加密配置文件和解密配置文件可以预先存储在终端A和终端B中,在终端A和终端B确定密码算法时,也可以按照规定方式确定所存储的配置文件作为加密配置文件和解密配置文件。该情况在实施例二中进行描述。
针对每一次加密通信,终端A和终端B之间可以重新确定密码算法,即重新确定加密配置文件和解密配置文件。如此能够实现每一次通信过程中使用的密码算法都是不同的,从而能够确保加密通信的安全性。
其中,步骤ST501和ST502的顺序是可变的。
步骤ST503:终端A生成要发送给终端B的数据。
步骤ST504:终端A根据在步骤ST502中确定的加密配置文件控制自身内部的可重组逻辑电路A而构成加密逻辑电路。
步骤ST505:终端A利用所确定的加密密钥和所构成的加密逻辑电路来对步骤ST503中生成的数据进行加密得到加密数据。
步骤ST506:终端A将加密得到的加密数据发送给终端B。
步骤ST507:终端B从终端A接收到加密数据。
步骤ST508:终端B根据在步骤ST502中确定的解密配置文件控制自身内部的可重组逻辑电路B而构成解密逻辑电路。
步骤ST509:终端B利用所确定的解密密钥和所构成的解密逻辑电路来对来自所述终端A的加密数据进行解密,还原来自所述终端A的数据。
如上所述,在上述加密通信过程中,如步骤ST502那样终端A和终端B可以针对每一次通信协商确定密码算法,在加密时如步骤ST504那样终端A根据所协商确定的加密算法相对应的加密配置文件控制可重组逻辑电路而构成加密逻辑电路,并将该构成的加密逻辑电路作为加密算法进行数据加密,在解密时如步骤ST508那样终端B根据所协商确定的解密算法相对应的解密配置文件控制可重组逻辑电路而构成解密逻辑电路,并将该构成的解密逻辑电路作为加密算法进行数据解密。由于本实施例一的加密通信方法利用可重组逻辑电路来实现了密码算法,而终端A和终端B之间协商确定密码算法时只是确定了相应的配置文件而并没有透露密码算法本身,因此,使密码算法具有了隐蔽特性,终端A和终端B之外的其他终端无法知道本次通信中终端A和终端B所采用的密码算法是什么,甚至终端A和B本身也无法知道本次通信中所采用的密码算法是什么,从而提高了加密通信的安全性。其次,终端A和终端B之间可以方便地更换所适用的密码算法,可以针对每一次通信都更换密码算法,缩短了同一密码算法的使用周期,从而大大降低了密码算法泄露的可能性,增加了密码算法分析的难度,提高了加密通信的安全性。还有,由于利用了可重组逻辑电路,所以可以设计很多密码算法,因此即使经常更换密码算法也能够使密码算法的重复率大大降低,增加了密码算法分析的难度,提高了加密通信的安全性。
下面给出基于上述实施例一的加密通信方法的加解密通信装置的结构。图6是本发明实施例一中的加解密通信装置的结构示意图。如图6所示,加解密通信装置包括:可重组逻辑电路、密码配置文件确定单元、控制单元。其中,密码配置文件确定单元与对方加解密通信装置确定用于实现密码算法的配置文件,所述用于实现密码算法的配置文件包括用于实现加密算法的加密配置文件和用于实现解密算法的解密配置文件;控制单元将用于实现密码算法的配置文件注入到所述可重组逻辑电路。
在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元将所述密码配置文件确定单元确定的所述加密配置文件注入到所述可重组逻辑电路,所述可重组逻辑电路根据所注入的加密配置文件而可重组为加密逻辑电路,所述可重组的加密逻辑电路利用加密密钥对数据进行加密。
在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元将所述密码配置文件确定单元确定的所述解密配置文件注入到所述可重组逻辑电路,所述可重组逻辑电路根据所注入的解密配置文件而可重组为解密逻辑电路,所述可重组的解密逻辑电路利用解密密钥对数据进行解密。
在上述加解密通信装置中,密码配置文件确定单元可以包括:加密配置文件确定单元,用于确定用于实现加密算法的加密配置文件;解密配置文件确定单元,用于确定用于实现解密算法的解密配置文件。
上述加解密通信装置还可以包括密钥确定单元,该密钥确定单元与对方加解密通信装置确定加密密钥和解密密钥。另外,该密钥确定单元还可以包括:加密密钥确定单元,用于确定加密密钥;解密密钥确定单元,用于确定解密密钥。
如果上述加解密通信装置仅作为加密装置使用时,则可以包括可重组逻辑电路、加密配置文件确定单元、控制单元。其中,加密配置文件确定单元与解密装置确定用于实现加密算法的加密配置文件;控制单元将所述加密配置文件确定单元所确定的加密配置文件注入到所述可重组逻辑电路;所述第一可重组逻辑电路根据所注入的加密配置文件而可重组为加密逻辑电路;所述可重组的加密逻辑电路利用所述加密密钥确定单元确定的加密密钥对数据进行加密。该加密装置还可以包括加密密钥确定单元,该加密密钥确定单元与解密装置确定加密密钥。
如果上述加解密通信装置仅作为解密装置使用,则可以包括可重组逻辑电路、解密配置文件确定单元、控制单元。其中,解密配置文件确定单元与加密装置确定用于实现解密算法的解密配置文件;控制单元将所述解密配置文件确定单元所确定的解密配置文件注入到所述可重组逻辑电路;所述可重组逻辑电路根据所注入的解密配置文件而可重组为解密逻辑电路;所述可重组的解密逻辑电路利用所述解密密钥确定单元确定的解密密钥对来自所述加密装置的加密数据进行解密。该解密装置还可以包括解密密钥确定单元,该解密密钥确定单元与加密装置确定解密密钥。
在下面的实施例中,以加密通信装置包括密钥确定单元的构成为例进行说明,但也可以不包括密钥确定单元。
实施例二:
本实施例二中,在终端A中设置有可重组逻辑电路A,在终端B中设置有可重组逻辑电路B,所述可重组逻辑电路A和可重组逻辑电路B具有相同的构成,而且在终端A中设置有用于存储配置文件的配置文件存储单元A,在终端B中设置有用于存储配置文件的配置文件存储单元B。
在配置文件存储单元中存储配置文件的方式可以有多种,举例如下。
存储方式一:由于在密码算法中加密算法和解密算法是一一对应的,因此,加密配置文件和解密配置文件也是一一对应的。因此,对每一个密码算法设置不同的标识,在配置文件存储单元中,将密码算法标识、加密配置文件以及解密配置文件一一对应地存储。
存储方式二:对每一个配置文件设置不同的配置文件标识,在配置文件存储单元中,将配置文件标识和配置文件一一对应地存储。在上述两种存储方式中,标识可以是多种形式,例如是编号这样的数值、符号这样的字符串,或者也可以是存储单元中的存储地址等。在以下部分出现的标识也可以如上所述的多种形式。但本发明中所说的标识并不局限于上述形式,可以包括其他形式。
为了便于在终端A和终端B之间确定加密配置文件和解密配置文件,在本实施例二中,在终端A的配置文件存储单元A和终端B的配置文件存储单元B中按照同样的存储方式存储配置文件。
本实施例二中,在终端A和终端B之间实现加密通信的过程如图7所示,包括如下步骤。
步骤ST701:终端A和终端B之间确定密钥,所确定的密钥包括加密密钥和解密密钥。
在实际加密通信过程中,作为密钥,可以使用固定的加密密钥和解密密钥。为了提高加密通信的安全性,也可以像现有技术那样采用一次一密形式,例如,针对每一次加密通信,终端A和终端B之间重新确定密钥。
所述密钥可以是对称密码体制中的加密密钥和解密密钥,或者也可以是非对称密码体制中的公钥/私钥对。
步骤ST702:终端A和终端B之间确定用于实现密码算法的配置文件,即用于实现加密算法的加密配置文件和用于实现解密算法的解密配置文件。
在本实施例二中,根据在配置文件存储单元中存储配置文件的方式不同,本步骤ST702的具体实现方式也不同。
在存储方式一的情况下,终端A和终端B之间确定用于实现密码算法的配置文件是确定用于表示密码算法的密码算法标识。这样可以根据所确定的密码算法标识从配置文件存储单元中提取出具有相应密码算法标识的加密配置文件或解密配置文件。
在存储方式二的情况下,在终端A和终端B中,也可以预先设置有密码算法标识、用于表示加密配置文件的配置文件标识(以下称为加密配置文件标识)和用于表示解密配置文件的配置文件标识(以下称为解密配置文件标识)的对应关系。终端A和终端B之间确定用于实现密码算法的配置文件的步骤包括:终端A和终端B之间确定用于表示密码算法的密码算法标识,利用上述对应关系,根据所确定的密码算法标识确定加密配置文件标识和解密配置文件标识。这样可以从配置文件存储单元中提取出具有加密配置文件标识的加密配置文件和具有解密配置文件标识的解密配置文件。
在存储方式二的情况下,在终端A和终端B中,也可以预先设置加密配置文件标识和解密配置文件标识的对应关系。在该情况下,终端A和终端B之间确定用于实现密码算法的配置文件的步骤包括:在终端A和终端B之间只确定加密配置文件标识或解密配置文件标识,当只确定加密配置文件标识时,根据加密配置文件标识和解密配置文件标识的对应关系来确定解密配置文件标识;当只确定加密配置文件标识时,根据加密配置文件标识和解密配置文件标识的对应关系来确定加密配置文件标识。这样,从配置文件存储单元中提取加密(解密)配置文件时,从配置文件存储单元中提取通过上述方法确定的加密(解密)配置文件标识对应的配置文件即可。
步骤ST703:终端A生成要发送给终端B的数据。
步骤ST704:终端A从配置文件存储单元A中提取所确定的加密配置文件。
在本实施例二中,根据在配置文件存储单元中存储配置文件的方式不同,本步骤ST704的具体实现方式也不同。
在存储方式一的情况下,终端A根据所确定的密码算法标识从配置文件存储单元中提取出具有相应密码算法标识的加密配置文件。
在存储方式二的情况下,终端A根据确定的加密配置文件标识从配置文件存储单元中提取加密配置文件标识对应的配置文件作为加密配置文件。
步骤ST705:终端A根据所提取出的加密配置文件控制自身内部的可重组逻辑电路A而构成加密逻辑电路。
步骤ST706:终端A利用所确定的加密密钥和所构成的加密逻辑电路来对步骤ST703中生成的数据进行加密得到加密数据。
步骤ST707:终端A将加密得到的加密数据发送给终端B。
步骤ST708:终端B从终端A接收到加密数据。
步骤ST709:终端B从配置文件存储单元A中提取所确定的解密配置文件。
在本实施例二中,根据在配置文件存储单元中存储配置文件的方式不同,本步骤ST709的具体实现方式也不同。
在存储方式一的情况下,终端B根据所确定的密码算法标识从配置文件存储单元中提取出具有相应密码算法标识的解密配置文件。
在存储方式二的情况下,终端B根据确定的解密配置文件标识从配置文件存储单元中提取解密配置文件标识对应的配置文件作为解密配置文件。
步骤ST710:终端B根据所提取出的解密配置文件控制自身内部的可重组逻辑电路B而构成解密逻辑电路。
步骤ST711:终端B利用所确定的解密密钥和所构成的解密逻辑电路来对来自所述终端A的加密数据进行解密,还原来自所述终端A的数据。
在上述实施例二中,作为密码算法库的配置文件预先存储在配置文件存储单元中,终端A和终端B协商确定密码算法时,确定相应的配置文件后从配置文件存储单元中提取即可,而不需要在每一次协商过程中生成配置文件,从而提高了密码算法的处理速度。另外,作为密码算法库,可以预先设置很多密码算法,并将对应的配置文件存储在配置文件存储单元中,从而在加密通信过程中,通信双方可以从密码算法库中任意选择配置文件作为密码算法,提高了动态变换密码算法的可操作性。而且,利用密码算法标识或配置文件标识等来确定用于实现密码算法的配置文件,提高了通信双方协商密码算法的方便性。
下面给出基于上述实施例二的加密通信方法的加解密通信装置的结构。图8是本发明实施例二中的加解密通信装置的结构示意图。如图8所示,加解密通信装置包括:可重组逻辑电路、密码配置文件确定单元、密钥确定单元、控制单元、配置文件存储单元。图8所示的加解密通信装置与图6的加解密通信装置的区别点在于配置文件存储单元。下面仅说明由于配置文件存储单元的设置而变化的部分。
在所述配置文件存储单元中存储有配置文件。在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元从所述配置文件存储单元中提取所述密码配置文件确定单元所确定的加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路;在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元从所述配置文件存储单元中提取所述密码配置文件确定单元所确定的解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
在所述配置文件存储单元中,可以将密码算法标识、加密配置文件以及解密配置文件一一对应地存储。这时,所述密码配置文件确定单元与对方加解密通信装置确定用于表示密码算法的密码算法标识,在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元根据所述密码配置文件确定单元所确定的密码算法标识,从所述配置文件存储单元中提取与密码算法标识对应的加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路;在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元根据所述密码配置文件确定单元所确定的密码算法标识,从所述配置文件存储单元中提取与密码算法标识对应的解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
图9是本发明实施例二中的加解密通信装置的另一结构示意图。如图9所示,加解密通信装置包括:可重组逻辑电路、密码配置文件确定单元、密钥确定单元、控制单元、配置文件存储单元、对应关系单元。
图9所示的加解密通信装置与图8的加解密通信装置的区别点在于对应关系单元。下面仅说明由于对应关系单元的设置而变化的部分。
在对应关系单元中,设置有密码算法标识、加密配置文件标识和解密配置文件标识的对应关系。在该情况下,所述配置文件存储单元将配置文件标识和配置文件一一对应地存储;所述密码配置文件确定单元与对方加解密通信装置确定用于表示密码算法的密码算法标识,利用所述对应关系单元中设置的对应关系,根据所确定的密码算法标识确定加密配置文件标识和解密配置文件标识;在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元根据所述密码配置文件确定单元所确定的加密配置文件标识,从所述配置文件存储单元中提取与加密配置文件标识对应的配置文件作为加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路;在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元根据所述密码配置文件确定单元所确定的解密配置文件标识,从所述配置文件存储单元中提取与解密配置文件标识对应的配置文件作为解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
在所述对应关系单元中,也可以设置有加密配置文件标识和解密配置文件标识的对应关系。在该情况下,所述配置文件存储单元将配置文件标识和配置文件一一对应地存储;所述密码配置文件确定单元与对方加解密通信装置确定加密配置文件标识,利用所述对应关系单元中设置的对应关系确定解密配置文件标识;在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元根据所述密码配置文件确定单元所确定的加密配置文件标识,从所述配置文件存储单元中提取与加密配置文件标识对应的配置文件作为加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路;在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元根据所述密码配置文件确定单元所确定的解密配置文件标识,从所述配置文件存储单元中提取与解密配置文件标识对应的配置文件作为解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
实施例三:
本实施例三中,与实施例二的不同点在于步骤ST702。
在本实施例三中,如果在上述步骤ST702中终端A和终端B之间需要确定用于表示密码算法的密码算法标识,则通过图10所示的步骤确定:终端A生成第一参数Ra,并向终端B发送第一参数Ra,接收来自终端B的第二参数Rb;终端B生成第二参数Rb,并向终端A发送第二参数Rb,接收来自终端A的第一参数Ra;终端A根据所述第一参数Ra和所述第二参数Rb按照规定方式确定所述密码算法标识;终端B也根据所述第一参数Ra和所述第二参数Rb按照规定方式确定所述密码算法标识。
在本实施例三中,如果在上述步骤ST702中终端A和终端B之间需要确定加密(解密)配置文件标识,则通过如下步骤确定:终端A生成第一参数Ra,并向终端B发送第一参数Ra,接收来自终端B的第二参数Rb;终端B生成第二参数Rb,并向终端A发送第二参数Rb,接收来自终端A的第一参数Ra;终端A根据所述第一参数Ra和所述第二参数Rb按照规定方式确定所述加密(解密)配置文件标识;终端B也根据所述第一参数Ra和所述第二参数Rb按照规定方式确定所述加密(解密)配置文件标识。
在此,终端A和终端B之间需要预先约定用于根据第一参数Ra和第二参数Rb确定密码算法标识或加密(解密)配置文件标识的规定方式。规定方式可以是将第一参数Ra和第二参数Rb为变量的函数关系,例如,利用将第一参数Ra和第二参数Rb相乘而得到的值P来确定密码算法标识或加密(解密)配置文件标识。
在此,第一参数Ra和第二参数Rb可以分别是随机数,但并不局限于随机数,也可以是任何形式的值。例如,上述第一参数Ra和第二参数Rb中可以包括其他参数,或者上述第一参数Ra和第二参数Rb本身也可以是将一个或多个参数作为变量的函数。另外,将第一参数Ra和第二参数Rb为变量的函数关系不局限于上面所举例的相乘算法,而可以采用任意函数关系。
在本实施例三中,加密通信双方确定用于实现密码算法的配置文件时,双方各自生成参数并互相发送给对方,然后双方都根据自身生成的参数和对方生成的参数来确定用于实现密码算法的配置文件,特别是在这些参数是随机数时,在每次通信过程中确定的密码算法的随机性更大,提高了加密通信的隐蔽性和安全性。
下面给出基于上述实施例三的加密通信方法的加解密通信装置的结构。图11是本发明实施例三中的加解密通信装置的结构示意图。如图11所示,加解密通信装置包括:可重组逻辑电路、密码配置文件确定单元、密钥确定单元、控制单元、配置文件存储单元、参数生成和收发单元。图11所示的加解密通信装置与图8的加解密通信装置的区别点在于参数生成和收发单元。下面仅说明由于参数生成和收发单元的设置而变化的部分。
图11所示的加解密通信装置中的参数生成和收发单元于生成第一参数,向所述对方加密通信装置发送所述第一参数,接收来自所述对方加密通信装置的第二参数;所述密码配置文件确定单元根据所述第一参数和所述第二参数按照规定方式确定所述密码算法标识。
作为本发明实施例三中的加解密通信装置,在上述图11中示出的加解密通信装置的结构之外,还可以包括对应关系单元。该对应关系单元的功能与图9相同,在此省略。在该情况下,参数生成和收发单元用于生成第一参数,向所述对方加密通信装置发送所述第一参数,接收来自所述对方加密通信装置的第二参数;所述密码配置文件确定单元根据所述第一参数和所述第二参数按照规定方式确定所述加密配置文件标识。
如上所述,基于上述实施例,加密通信的通信双方可以动态地变更密码算法,可以使不同时刻的加密算法是不同的,而且该变化的加密算法是不知道的,从而提高了加密算法的隐蔽性、安全性。另外,通过使密钥经常变更,例如一次一密形式、一次多密形式、一个数据包一个密钥形式,能够进一步提高加密通信的安全性。另外,加密算法不仅可以在每一次通信中采用不同的加密算法,甚至可以在通信过程中的每一个数据包都采用不同的加密算法,从而大大提高加密通信的安全性。
由于本发明利用可重组逻辑电路来实现了密码算法,因此本发明除了上述实施例所具有的技术效果之外,还具有如下技术效果:
(1)可重组逻辑电路具有设计和生产上的安全性:密码算法的设计和芯片的设计与生产过程是分离的,芯片在投入使用之前是不含密码算法的白裸片,只有在使用时才由用户将设计好的密码算法装载到芯片上,因此在芯片的设计和生产过程中不会泄露任何密码算法的信息。
(2)可重组逻辑电路具有兼容性:可重组逻辑电路可由用户编程实现多种不同的密码算法,从这个意义上说,可重组逻辑电路对密码算法具有兼容性。该兼容性意味着一块可重组逻辑电路可以代替多块针对特定算法的密码芯片,从而大大降低了密码芯片的开发和生产成本。
(3)可重组逻辑电路具有扩展性:用户可以根据自己的需求,利用可重组逻辑电路中的已有资源,设计并实现新的密码算法,从这个意义上讲,可重组逻辑电路具有一定的扩展性。该扩展性能够有效地支持密码算法的更新,适应密码算法的发展需求。另外,可重组逻辑电路还为密码专家研究设计新的密码算法提供了一个实验平台。
(4)可重组逻辑电路可以提高密码系统的安全性:用户可以很方便地随时更换所使用的密码算法,缩短同一密码算法的使用周期,大大降低了算法泄露的可能性,增加了密码分析(攻击)的难度,从而提高了密码系统的安全性。
(5)可重组逻辑电路的加/解密速度比软件的加/解密速度快得多,接近专用密码芯片,而其灵活性和安全性则是专用密码芯片所无法比拟的。
(6)由于很多的密码算法都可以通过同一可重组逻辑电路来实现,所以还能够实现终端的小型化。
另外,作为加解密通信装置的结构,不应当局限于上述实施例给出的结构,只要是能够实现相应方法的结构都可以采用,而且都应当包括在本发明的范围内。
Claims (11)
1.一种加密通信方法,其特征在于,在第一装置和第二装置之间进行数据加密通信,所述第一装置设置有第一可重组逻辑电路,所述第二装置设置有第二可重组逻辑电路,所述第一可重组逻辑电路和第二可重组逻辑电路具有相同的构成,所述加密通信方法包括如下步骤:
所述第一装置和第二装置之间确定用于实现密码算法的配置文件,所述用于实现密码算法的配置文件包括用于实现加密算法的加密配置文件和用于实现解密算法的解密配置文件;
第一装置根据所确定的加密配置文件控制所述第一可重组逻辑电路而构成加密逻辑电路,利用加密密钥和所构成的加密逻辑电路对数据进行加密,并将加密得到的加密数据发送给第二装置;
所述第二装置接收来自第一装置的加密数据,根据所确定的解密配置文件控制所述第二可重组逻辑电路而构成解密逻辑电路,利用解密密钥和所构成的解密逻辑电路对解密数据进行解密。
2.根据权利要求1所述的加密通信方法,其特征在于,
所述第一装置具有存储有配置文件的第一配置文件存储单元,所述第二装置具有存储有配置文件的第二配置文件存储单元,
所述第一装置根据所确定的加密配置文件控制所述第一可重组逻辑电路而构成加密逻辑电路的步骤包括:所述第一装置从所述第一配置文件存储单元中提取所确定的加密配置文件,根据所提取的加密配置文件控制所述第一可重组逻辑电路而构成加密逻辑电路,
所述第二装置根据所确定的解密配置文件控制所述第二可重组逻辑电路而构成解密逻辑电路的步骤包括:所述第二装置从所述第二配置文件存储单元中提取所确定的解密配置文件,根据所提取的解密配置文件控制所述第二可重组逻辑电路而构成解密逻辑电路。
3.根据权利要求2所述的加密通信方法,其特征在于,
对每一个密码算法设置不同的密码算法标识,
在第一配置文件存储单元中,将密码算法标识、加密配置文件以及解密配置文件一一对应地存储,
在第二配置文件存储单元中,将密码算法标识、加密配置文件以及解密配置文件一一对应地存储,
所述第一装置和第二装置之间确定用于实现密码算法的配置文件的步骤包括:所述第一装置和第二装置之间确定用于表示密码算法的密码算法标识,
所述第一装置从所述第一配置文件存储单元中提取所确定的加密配置文件的步骤包括:所述第一装置根据所确定的密码算法标识,从所述第一配置文件存储单元中提取与密码算法标识对应的加密配置文件,
所述第二装置从所述第二配置文件存储单元中提取所确定的解密配置文件的步骤包括:所述第二装置根据所确定的密码算法标识,从所述第二配置文件存储单元中提取与密码算法标识对应的解密配置文件。
4.根据权利要求2所述的加密通信方法,其特征在于,
对每一个配置文件设置不同的配置文件标识,
设置有密码算法标识、加密配置文件标识和解密配置文件标识的对应关系,
在第一配置文件存储单元中将配置文件标识和配置文件一一对应地存储,在第二配置文件存储单元中将配置文件标识和配置文件一一对应地存储,
所述第一装置和第二装置之间确定用于实现密码算法的配置文件的步骤包括:所述第一装置和第二装置之间确定用于表示密码算法的密码算法标识,利用上述对应关系,根据所确定的密码算法标识确定加密配置文件标识和解密配置文件标识,
所述第一装置从所述第一配置文件存储单元中提取所确定的加密配置文件的步骤包括:所述第一装置根据所确定的加密配置文件标识,从所述第一配置文件存储单元中提取与加密配置文件标识对应的配置文件作为加密配置文件,
所述第二装置从所述第二配置文件存储单元中提取所确定的解密配置文件的步骤包括:所述第二装置根据所确定的解密配置文件标识,从所述第二配置文件存储单元中提取与解密配置文件标识对应的配置文件作为解密配置文件。
5.根据权利要求2所述的加密通信方法,其特征在于,
对每一个配置文件设置不同的配置文件标识,
设置有加密配置文件标识和解密配置文件标识的对应关系,
在第一配置文件存储单元中将配置文件标识和配置文件一一对应地存储,在第二配置文件存储单元中将配置文件标识和配置文件一一对应地存储,
所述第一装置和第二装置之间确定用于实现密码算法的配置文件的步骤包括:所述第一装置和第二装置之间确定加密配置文件标识,并利用上述对应关系确定解密配置文件标识,
所述第一装置从所述第一配置文件存储单元中提取所确定的加密配置文件的步骤包括:所述第一装置根据所确定的加密配置文件标识,从所述第一配置文件存储单元中提取与加密配置文件标识对应的配置文件作为加密配置文件,
所述第二装置从所述第二配置文件存储单元中提取所确定的解密配置文件的步骤包括:所述第二装置根据所确定的解密配置文件标识,从所述第二配置文件存储单元中提取与解密配置文件标识对应的配置文件作为解密配置文件。
6.根据权利要求3或4所述的加密通信方法,其特征在于,所述第一装置和第二装置之间确定用于表示密码算法的密码算法标识的步骤包括:
所述第一装置生成第一参数,并向第二装置发送第一参数,接收来自所述第二装置的第二参数,
所述第二装置生成第二参数,并向所述第一装置发送第二参数,接收来自所述第一装置的第一参数,
所述第一装置根据所述第一参数和所述第二参数按照规定方式确定所述密码算法标识,所述第二装置根据所述第一参数和所述第二参数按照规定方式确定所述密码算法标识。
7.根据权利要求5所述的加密通信方法,其特征在于,所述第一装置和第二装置之间确定加密配置文件标识的步骤包括:
所述第一装置生成第一参数,并向第二装置发送第一参数,接收来自所述第二装置的第二参数,
所述第二装置生成第二参数,并向所述第一装置发送第二参数,接收来自所述第一装置的第一参数,
所述第一装置根据所述第一参数和所述第二参数按照规定方式确定所述加密配置文件标识,所述第二装置根据所述第一参数和所述第二参数按照规定方式确定所述加密配置文件标识。
8.一种加解密通信装置,其特征在于包括:
可重组逻辑电路;
密码配置文件确定单元,用于与对方加解密通信装置确定用于实现密码算法的配置文件,所述用于实现密码算法的配置文件包括用于实现加密算法的加密配置文件和用于实现解密算法的解密配置文件;
控制单元,用于将用于实现密码算法的配置文件注入到所述可重组逻辑电路,
在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元将所述密码配置文件确定单元确定的所述加密配置文件注入到所述可重组逻辑电路,所述可重组逻辑电路根据所注入的加密配置文件而可重组为加密逻辑电路,所述可重组的加密逻辑电路利用加密密钥对数据进行加密,
在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元将所述密码配置文件确定单元确定的所述解密配置文件注入到所述可重组逻辑电路,所述可重组逻辑电路根据所注入的解密配置文件而可重组为解密逻辑电路,所述可重组的解密逻辑电路利用解密密钥对数据进行解密。
9.根据权利要求8所述的加解密通信装置,其特征在于还包括:配置文件存储单元,存储有配置文件;
在所述加解密通信装置对要发送给对方加解密通信装置的数据进行加密时,所述控制单元从所述配置文件存储单元中提取所述密码配置文件确定单元所确定的加密配置文件,将所提取的加密配置文件注入到所述可重组逻辑电路,
在所述加解密通信装置对来自对方加解密通信装置的加密数据进行解密时,所述控制单元从所述配置文件存储单元中提取所述密码配置文件确定单元所确定的解密配置文件,将所提取的解密配置文件注入到所述可重组逻辑电路。
10.一种加密装置,用于与解密装置进行加密通信,其特征在于包括:
可重组逻辑电路;
加密配置文件确定单元,用于与解密装置确定用于实现加密算法的加密配置文件;
控制单元,用于将所述加密配置文件确定单元所确定的加密配置文件注入到所述可重组逻辑电路,
所述可重组逻辑电路根据所注入的加密配置文件而可重组为加密逻辑电路,
所述可重组的加密逻辑电路利用加密密钥对数据进行加密。
11.一种解密装置,用于与加密装置之间进行加密通信,其特征在于具有:
可重组逻辑电路;
解密配置文件确定单元,用于与加密装置确定用于实现解密算法的解密配置文件;
控制单元,用于将所述解密配置文件确定单元所确定的解密配置文件注入到所述可重组逻辑电路,
所述可重组逻辑电路根据所注入的解密配置文件而可重组为解密逻辑电路,
所述可重组的解密逻辑电路利用解密密钥对来自所述加密装置的加密数据进行解密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101613628A CN101997674A (zh) | 2009-08-10 | 2009-08-10 | 加密通信方法、加解密通信装置、加密装置以及解密装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101613628A CN101997674A (zh) | 2009-08-10 | 2009-08-10 | 加密通信方法、加解密通信装置、加密装置以及解密装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101997674A true CN101997674A (zh) | 2011-03-30 |
Family
ID=43787323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101613628A Pending CN101997674A (zh) | 2009-08-10 | 2009-08-10 | 加密通信方法、加解密通信装置、加密装置以及解密装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101997674A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077331A (zh) * | 2013-02-04 | 2013-05-01 | 快车科技有限公司 | 一种数字资源保护方法及相关装置 |
-
2009
- 2009-08-10 CN CN2009101613628A patent/CN101997674A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077331A (zh) * | 2013-02-04 | 2013-05-01 | 快车科技有限公司 | 一种数字资源保护方法及相关装置 |
WO2014117428A1 (zh) * | 2013-02-04 | 2014-08-07 | 快车科技有限公司 | 一种数字资源保护方法及相关装置 |
CN103077331B (zh) * | 2013-02-04 | 2016-03-02 | 快车科技有限公司 | 一种数字资源保护方法及相关装置 |
US10102353B2 (en) | 2013-02-04 | 2018-10-16 | I-Patrol Technology Limited | Digital resource protection method and apparatus, and digital resource using method and apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104488218B (zh) | 加密装置、解密装置、加密方法、解密方法 | |
CN103825723A (zh) | 一种加密方法和装置 | |
CN103795533A (zh) | 基于标识符的加密、解密的方法及其执行装置 | |
CN107070660A (zh) | 一种区块链加密射频芯片的存储设计方法 | |
CN105306194A (zh) | 供加密档案和/或通讯协定的多重加密方法与系统 | |
CN103457932A (zh) | 一种云计算环境数据安全存储方法和系统 | |
JP2019528028A (ja) | 幾何代数を用いた高度データ中心型暗号化システムのための方法およびシステム | |
CN103414552B (zh) | 一种利用二叉树遍历方式进行加密、解密方法及装置 | |
Joshy et al. | Text to image encryption technique using RGB substitution and AES | |
CN114117502B (zh) | 一种数据加解密方法、系统、设备及计算机可读存储介质 | |
KR20190020988A (ko) | 컴퓨터 실행 가능한 경량 화이트박스 암호화 방법 및 장치 | |
KR101575681B1 (ko) | 속성 기반 암호화 방법 | |
Erondu et al. | An encryption and decryption model for data security using vigenere with advanced encryption standard | |
KR20220079522A (ko) | 기하 대수 및 헨젤 코드들을 이용한 암호화를 위한 방법들 및 시스템들과 동형 암호화 시스템들 | |
CN114257402B (zh) | 加密算法确定方法、装置、计算机设备和存储介质 | |
Tentu | A review on evolution of symmetric key block ciphers and their applications | |
CN101997674A (zh) | 加密通信方法、加解密通信装置、加密装置以及解密装置 | |
CN108768923A (zh) | 一种基于量子可逆逻辑线路的加密算法的聊天实时加密方法 | |
KR101793528B1 (ko) | 무인증서 공개키 암호 시스템 | |
CN110474967B (zh) | 块链实验系统及方法 | |
Sreehari et al. | Implementation of hybrid cryptosystem using DES and MD5 | |
Dixit et al. | Multilevel network security combining cryptography and steganography on ARM platform | |
Khan et al. | Implementation of data encryption standard (DES) on FPGA | |
Mahajan et al. | Hybrid Methods for Increasing Security of IoT and Cloud Data | |
Joshi et al. | A review: Analysis of various encryption techniques for securing cloud data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110330 |