密码处理装置、密码处理算法构建方法和密码处理方法制造方法及图纸

技术编号:5413413 阅读:148 留言:0更新日期:2012-04-11 18:40
实现应用了扩散矩阵切换机构(DSM)的扩展Feistel型共用密钥块密码处理结构。在应用了将数据序列数:d设为d≥2的整数的扩展Feistel结构的密码处理结构中,在F函数部的线性变换处理中选择性地应用多个不同的多个矩阵。作为矩阵,选择满足从基于线性变换矩阵的与数据序列对应的最小分支数中选择的全部数据序列中的最小分支数为预先决定的值以上的条件的多个不同的矩阵,其中上述线性变换矩阵包含在输入到扩展Feistel结构的各数据序列的F函数中。根据本发明专利技术,实现对基于DSM的线性分析、差分分析的抵抗性较高的共用密钥块密码。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及一种密码处理装置、密码处理算法构建方法和密码处理方法、以及计算机程序。更详细地说,涉及一种执行Feistel型共用密钥块密码处理的密码处理装置、密码处理算法构建方法和密码处理方法、以及计算机程序。
技术介绍
最近,随着网络通信、电子商务的发展,确保通信中的安全成为重要的问题。确保安全的方法之一是密码技术,现在实际进行着使用了各种加密方法的通信。 例如实际应用有如下的系统在IC卡等小型装置中嵌入密码处理模块,在IC卡与作为数据读取写入装置的读写器之间进行数据的发送接收,进行认证处理或者发送接收数据的加密、解密。 在密码处理算法中存在各种算法,大致分类为公开密钥密码方式和共用密钥密码方式,其中,上述公开密钥密码方式将加密密钥和解密密钥设定为不同的密钥、例如公开密钥和私人密钥,上述共用密钥密码方式将加密密钥和解密密钥设定为共用的密钥。 在共用密钥密码方式中也存在各种算法,其中之一是如下的方式以共用密钥为基础生成多个密钥,使用所生成的多个密钥来反复执行块单位(64比特、128比特等)的数据变换处理。应用了这种密钥生成方式和数据变换处理的算法的代表方式是共用密钥块密码方式。 作为代表的共用密钥块密码的算法,例如存在作为美国标准密码的DES(Data Encryption Standard数据加密标准)算法,在各种领域中广泛使用。 以DES为代表的共用密钥块密码的算法主要可分为循环函数部和密钥调度部,其中,上述循环函数部执行输入数据的变换,上述密钥调度部生成在循环函数(F函数)部的各循环中应用的密钥。根据一个主密钥(Master key),将其输入到密钥调度部来生成在循环函数部的各循环中应用的,在各循环函数部中应用该循环密钥(副密钥)。 作为执行应用了这种循环函数的算法的具体结构,已知有Feistel结构。Feistel结构具有如下结构通过简单的反复被称为循环函数的变换函数,将明文变换为密文。作为记载有应用了Feistel结构的密码处理的文献,例如存在非专利文献1、非专利文献2。 但是,例如在应用Feistel结构的共用密钥密码处理中,由密码分析引起的密钥的泄漏成为问题。作为密码分析或者攻击方法的代表方法,已知有差分分析(也称为差分解读法或者差分攻击)、线性分析(也称为线性解读法或者线性攻击),其中,上述差分分析通过多次分析具有某个差分的输入数据(明文)及其输出数据(密文)来分析各循环函数中的应用密钥,上述线性分析根据明文和对应的密文进行分析。 利用密码分析容易分析密钥是指其密码处理的安全性较低。在现有的密码算法中,在循环函数(F函数)部的线性变换部中应用的处理(变换矩阵)在各级的循环中相同,因此容易进行分析,其结果导致容易分析密钥。 作为应对这种问题的结构,提出在Feistel结构的循环函数(F函数)部的线性变换部中配置两个以上不同的矩阵的结构。该技术被称为扩散矩阵切换机构(DSMDiffusion SwitchingMechanism,下面为DSM)。通过该DSM能够提高对差分攻击、线性攻击的抵抗性。 该扩散矩阵切换机构(DSM)被表示为对于通常的具有两个数据序列的Feistel结构的应用结构。另一方面,与这种一般的具有两个数据序列的Feistel结构不同,存在具有三个以上数据序列的扩展型Feistel结构。但是,并没有公开在这种具有三个以上数据序列的扩展型Feistel结构中应用上述扩散矩阵切换机构(DSM)来提高对差分攻击、线性攻击的抵抗性的结构。 非专利文献1K.Nyberg,“Generalized Feistel networks”,ASIACRYPT’96,Springer Verlag,1996,pp.91~104. 非专利文献2Yuliang Zheng,Tsutomu Matsumoto,HidekiImaiOn the Construction of Block Ciphers Provably Secure andNot Relying on Any Unproved Hypotheses.CRYPTO 1989461-480
技术实现思路
专利技术要解决的问题 本专利技术是鉴于上述问题点而完成的,其目的在于提供一种实现对线性分析、差分分析的抵抗性较高的共用密钥块密码算法的密码处理装置、密码处理算法构建方法和密码处理方法、以及计算机程序。 更具体地说,本专利技术的目的在于提供如下的密码处理装置、密码处理算法构建方法和密码处理方法、以及计算机程序在扩展具有两个数据序列的Feistel结构得到的Feistel结构、即例如具有三个、四个等两个以上的任意数据序列的扩展型Feistel结构中,设定应用了多个不同的线性变换矩阵的循环函数部,实现对线性分析、差分分析的抵抗性较高的共用密钥块密码算法。 用于解决问题的方案 本专利技术的第一侧面在于,一种密码处理装置,其特征在于,具有密码处理部,该密码处理部执行将SP型F函数反复多次循环的Feistel型共用密钥块密码处理,其中,上述SP型F函数执行包括非线性变换处理和线性变换处理的数据变换处理,上述密码处理部是执行应用了将数据序列数d设为d≥2的整数的扩展Feistel结构的密码处理的结构,具有在各循环的F函数中执行的线性变换处理中选择性地应用至少两个以上的多个不同的矩阵的结构,上述两个以上的多个不同的矩阵是满足以下条件的多个不同的矩阵从基于线性变换矩阵的与数据序列对应的最小分支数中选择的全部数据序列中的最小分支数为预先决定的值以上,其中,上述线性变换矩阵包含在对扩展Feistel结构的各数据序列进行输入的F函数中,具有在对扩展Feistel结构的各数据序列进行输入的F函数中反复配置上述多个不同的矩阵的结构。 并且,在本专利技术的密码处理装置的一个实施方式中,其特征在于,在上述密码处理部中利用的上述多个不同的矩阵是满足以下条件的多个不同的矩阵从根据线性变换矩阵而算出的与数据序列对应的最小分支数中选择的全部数据序列中的最小分支数为3以上,其中,上述线性变换矩阵包含在对扩展Feistel结构的各数据序列s(i)进行输入的连续的k个(其中,k为2以上的整数)F函数中。 并且,在本专利技术的密码处理装置的一个实施方式中,其特征在于,在上述密码处理部中利用的上述多个不同的矩阵是满足以下条件的多个不同的矩阵从根据线性变换矩阵而算出的与数据序列对应的最小分支数中选择的全部数据序列中的最小分支数为3以上,其中,上述线性变换矩阵包含在对扩展Feistel结构的各数据序列s(i)进行输入的连续的两个F函数中。 并且,在本专利技术的密码处理装置的一个实施方式中,其特征在于,在上述密码处理部中利用的上述多个不同的矩阵是满足以下条件的多个不同的矩阵从根据线性变换矩阵而算出的与数据序列对应的最小分支数中选择的全部数据序列中的最小分支数为3以上,其中,上述线性变换矩阵包含在对扩展Feistel结构的各数据序列s(i)进行输入的连续的两个F函数中。 并且,在本专利技术的密码处理装置的一个实施方式中,其特征在于,上述密码处理部具有如下结构在将上述多个不同的矩阵设为n个(其中,n为2以上的整数)不同的矩阵M0、M1、··Mn-1时,在对扩展Feistel结构的各数据本文档来自技高网
...

【技术保护点】
一种密码处理装置,其特征在于, 具有密码处理部,该密码处理部执行将SP型F函数反复多次循环的Feistel型共用密钥块密码处理,其中,上述SP型F函数执行包括非线性变换处理和线性变换处理的数据变换处理, 上述密码处理部是执行应用了将数据序列数:d设为d≥2的整数的扩展Feistel结构的密码处理的结构,具有在各循环的F函数中执行的线性变换处理中选择性地应用至少两个以上的多个不同的矩阵的结构, 其中,上述两个以上的多个不同的矩阵是满足以下条件的多个不同的矩阵:从基于线性变换矩阵的与数据序列对应的最小分支数中选择的全部数据序列中的最小分支数为预先决定的值以上,其中,上述线性变换矩阵包含在对扩展Feistel结构的各数据序列进行输入的F函数中, 具有在对扩展Feistel结构的各数据序列进行输入的F函数中反复配置上述多个不同的矩阵的结构。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:白井太三涩谷香士
申请(专利权)人:索尼株式会社
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1