首页> 中国专利> 提高了安全性的密码处理装置等

提高了安全性的密码处理装置等

摘要

根据输入数据进行密码处理生成输出数据的密码处理装置,包含有:存贮用于为使前面密码处理影响后面的密码处理的链结数据、每次执行密码处理均更新该链结数据的存贮手段,将存贮手段存贮的链结数据组合(融合)进输入数据生成组合数据的组合手段,和根据组合数据执行主密码处理生成输出数据而在直至生成输出数据为止的过程中输出所生成的中间数据的主密码处理手段。其中,存贮手段将主密码处理手段输出的中间数据作为新链结数据更新自身存贮的链结数据供下次密码处理之用。

著录项

  • 公开/公告号CN1222799A

    专利类型发明专利

  • 公开/公告日1999-07-14

    原文格式PDF

  • 申请/专利权人 松下电器产业株式会社;

    申请/专利号CN98115064.0

  • 申请日1998-04-22

  • 分类号H04L9/06;

  • 代理机构中国专利代理(香港)有限公司;

  • 代理人叶恺东

  • 地址 日本大阪府

  • 入库时间 2023-12-17 13:25:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-05-15

    专利权有效期届满 IPC(主分类):H04L9/06 授权公告日:20040707 申请日:19980422

    专利权的终止

  • 2004-07-07

    授权

    授权

  • 1999-07-14

    公开

    公开

说明书

本发明是根据密钥以信息组为单位对作密码处理数据进行密码化或译码处理的密码处理装置、密码处理方法、和存贮密码处理程序的存贮媒体,特别是关于不致大幅度增大装置规模和处理时间等地提高安全性的技术。

近年来,随着借助数字通信的汇款以及所有信息的通信的普及,对用于保护作通信的重要信息不受第三者的窃听和纂改、提高安全性的技术的要求日益增高。为提高完全性的有效的技术之一是密码。

在采用密码的通信系统中,原始报文称为明文,将其涵意内容变换成第三者难以理解的形式称为密码文。而这种变换称为密码化,相反,将密码文复原成原始明文的逆变换称为译码。

密码化和译码化的变换内容由算法和作为其参数的关键码确定。算法指定由多种变换构成的变换族,关键码指定该族内的一个变换。通常,与装置的固定部分相对应的为算法,而关键码则在一个装置中时常被更换。

密码文以被窃听作为前提。以窃听者不具备的算法和关键码的信息来译码成为明文被叫做密码解码。

要进行密码解码的人员(下面称为“密码解码者”)在已知道密码文的前提下进行密码解码。

基本上仅由密码文确定秘密的明文和关键码的解码法称为“密码文单独攻击”。而由数个不定的密码文与明文对确定秘密的关键码来确定对应于任意的密码文的明文的解码法称做“已知明文攻击”。

作为密码的一例,如伪随机数加法型密码。

这种密码是发送方与接收方秘密共有同一关键码,各自利用具有相同算法的随机数发生器以此关键码作为种源产生规定位数(下称“信息组”)的随机数,在发送侧作的密码化中由以信息组为单元对此随机数和明文进行各个对应位的“异或”运算来生成密码文;而在接收侧进行的译码中,由此信息组为单位对此随机数和密码文进行各对应位的“异或”运算来生成明文。

这里如设定明文的信息组单位为“M”、密码文的信息组单位为“C”、此随机数为“R”、各对应位的“异或”运算为“(+)”,则密码化和译码可分别表示成如下的(式1)和(式2):

              C=M(+)R                (式1)

              M=C(+)R                (式2)

这种密码的问题在于“已知明文处理”非常软弱。

例如,如果已知各自一信息组的明文和密码文时,按下(式3)就能由随机数R的判定来解码其他所有的明文:

               R=M(+)C                (式3)

因而,密码解码者利用已知明文处理就能很容易地解码伪随机数加法型密码。

借助已知明文处理也较不容易解码的示例有DES(Data EncryptionStandard,数据加密标准)和FEAL(Fast Data Encipherment Algorithm,快速数据加密算法)。对此,在“密码理论入门”(冈本荣司著,共立出版社)中有详细说明。

这些密码以64位作为1信息组,以信息组为单位强力地搅乱数据。例如,DES的算法重复16层次进行转置和置换的组合处理。

为增强对密码解密和主动的非法动作的DES,开发了密码文信息组链的方式(Cipher Block Chaining)(以下称作“CBC方式”)。CBC方式在“近代密码理论”(池野信一、小山谦二著:电子情报通信学会发行)P66~67中有详细说明。

图1表示实现CBC方式的密码化装置30的结构。

密码化装置30由“异或”单元301、数据密码化单元302、和寄存器303构成。

寄存器303保存紧前面作密码化处理的1信息组的密码文。在对起头的信息组进行密码化时设定1信息组的初始值IV(Initial Value)。

“异或”单元301对寄存器303保存的紧前面的1信息组的密码文和下面应作密码化的(信息组的明文进行每一对应位的“异或”运算,送往数据密码化单元302。而在对起始信息组进行密码化时对初始值Ⅳ和起始的1信息组的明文进行每一对应位的“异或”运算。

数据密码化单元302根据64位的关键数据以DES的算法时由“异或”单元301送来的64位的数据进行密码化处理。

此密码化装置30以信息组为单位对初始值Ⅳ和起始1信息组明文进行每一对应位的“异或”运算。根据64位关键数据进行密码化生成l信息组密码文,再对此密码文和下一信息组的明文进行每一对应位的“异或”运算作为下一密码化的输入。

如以信息组单位的明文作为Mi,信息组单位的密码文为Ci(i为信息组序号,i=2,3…),以64位的关键数据作为K,应用关键数据K的密码化作为EK,以每一对应位的“异或”运算作为“(+)”,则CBC方式可以下式(式4)、(式5)表示:

      Cl=EK(M1(+)Ⅳ)               (式4)

      Ci=EK(Mi(+)Ci-1)             (式5)

           (i=2,3…)

在CBC方式中,由于各Ci依赖于Ci之前的所有的密码文数据,所以就打乱了明文的统计性的特点。

因此就加强了对密码解码和主动非法动作的对策。

上述的DES、FEAL和DES中的CBC方式等的问题所在是,由于算法成为公开时关键码的长度是有限制的,所以在“已知明文攻击”中,依靠逐个地利用全部关键码来试着进行密码化,终究必然会发现正确的关键码。而DES的关键码长度虽如前述能为64位而因为有奇偶校验位的8位所以有效长为56位,可能取的关键码的数量是2×56个。

对DES这样的56位的关键码长,认为以花费庞大成本的现代技术水平不断的试探就有可能解码。然而,如果采用多个独立的关键码作多重密码化,按现在的技术水平就不再可能依靠不断的试探来解码。

但是,鉴于计算机的处理能力这十数年来已得到极其急剧的提高,不管如何作多重密码化也不能断言今后有可能由不断的试探来解码的时日不会到来。

虽然越作多重密码化安全性也提高,但如单独地为作多重密码化来改变现有的装置,由于装置规模和处理时间等大幅度增加而是极不希望的。

为提高非多重密码化的CBC模式等的安全性的历来技术在日本专利申请特开昭52-130504号公报(密码处理装置)、特公平8-12537号公报(密码化装置)中有说明。前者根据密码文字的密码处理结果更新下一密码处理中用的关键数据。后者予先由密码关键码生成多个中间关键码加以存贮,根据依靠分别进行应用各中间关键码的位变换生成的各中间关键码更新信息,分别更新各中间关键码。

但是在上述历来的密码处理装置中不能断言充分确保安全性,而希望进一步提高安全性。

因此,本发明就是针对这样的问题,目的就是要提供不致大幅度增大装置规模和处理时间等而能提高安全性的密码处理装置、密码处理方法、和存贮密码处理程序的存贮媒体。

为达到上述目的,关于本发明的密码处理装置为根据输入数据执行密码处理以生成输出数据的密码处理装置,包含有存贮用于使后面的密码处理受前面密码处理的影响的链结数据而在每次执行密码处理时更新该链结数据的存贮手段、将存贮手段存贮的链结数据合并到输入数据生成组合数据的组合手段、和根据组合数据进行主密码处理生成输出数据而输出在直至生成输出数据为止的过程中所生成的中间数据的主密码处理手段,存贮手段将主密码处理手段输出的中间数据作为新的链结数据来更新自己存贮的链结数据供下一密码处理应用。

按照这种构成,将执行密码处理的过程中所生成的中间数据作为链接数据存贮,在后面的密码处理时合并到关键数据或被作密码处理的数据等的输入数据中,在每次执行密码处理时更新该链结数据,因此各输出数据即依赖于其本身之前的全部数据,明文的统计特征被各链结数据搅乱,所以尽管使密码解码很困难而并不那么增大装置规模和处理时间等。而密码解码者即使能得到密码文和明文对,事实上也不可能获得密码处理中所应用的链结数据,而且由于生成链结数据的算法和链结数据的初始值是不公开的,利用“已知明文攻击”进行破译密码更困难,也难以由不断的试探来解码。

因此能不大幅度增加装置规模和处理时间等使得安全性提高。

由以下结合说明本发明一特定实施例的附图所作叙述将会清楚了解本发明的这些以及其他的目的、优点和特征。

对附图的简要说明:

图1表示实现CBC方式的密码化装置30的结构;

图2表示本发明实施例1中密码通信系统的结构;

图3表示本发明实施例1中数据密码化装置10的详细结构;

图4表示第1~8密码化单元105a~105h的详细结构;

图5表示计算函数“f”部分的详细结构;

图6表示选择函数S1~S8的换字表;

图7表示本发明实施例1中尾数数据处理单元106的详细结构;

图8表示本发明实施例1中的数据译码装置20的详细结构;

图9表示本发明实施例1中尾数数据处理单元206的详细结构;

图10表示本发明实施例1的数据密码化装置10中的密码化处理的流程;

图11表示本发明实施例1的数据译码装置20中密码化处理的流程;

图12表示本发明实施例2中数据密码化装置10的详细结构;

图13表示本发明实施例2中数据译码装置20的详细结构;

图14表示本发明实施例2的数据密码化装置10中密码化处理流程;

图15表示本发明实施例2的数据译码装置20中密码化处理的流程;

图16表示本发明实施例3中数据密码化装置10的详细结构;

图17表示本发明实施例3中数据译码装置20的详细结构;

图18表示本发明实施例3的数据密码装置10中的密码化处理流程;

图19表示本发明实施例3的数据译码装置20中密码化处理流程;

图20表示本发明实施例4中数据密码化装置10的详细结构;

图21表示本发明实施例4中数据译码装置20的详细结构;

图22表示本发明实施例4的数据密码化装置10中密码化处理流程;

图23表示本发明实施例4的数据译码装置20中密码化处理流程;

图24表示本发明实施例5中数据密码化装置10的详细结构;

图25表示本发明实施例5中数据译码装置20的详细结构;

图26表示本发明实施例5中数据密码化装置10中密码化处理流程;

图27表示本发明实施例5数据译码装置20中的密码化处理流程;

图28表示本发明实施例6中数据密码化装置10的详细结构;

图29表示本发明实施例6中数据译码装置20的详细结构;

图30表示本发明实施例6数据密码化装置10中密码化处理流程;

图31表示本发明实施例6数据译码装置20中的密码化处理流程;

图32表示本发明实施例7中数据密码化装置10的详细结构;

图33表示本发明实施例7中数据译码装置20的详细结构;

图34表示本发明实施例7数据密码化装置10中的密码化处理流程;

图35表示本发明实施例7数据译码装置20中的密码化处理流程;

图36表示本发明实施例8中数据密码化装置10的详细结构;

图37表示本发明实施例8中数据译码装置20的详细结构;

图38表示本发明实施例8的数据密码化装置10中的密码化处理流程;

图39表示本发明实施例9中数据密码化装置10的详细结构;

图40表示本发明实施例9中数据译码装置20的详细结构;

图41表示本发明实施例10中数据密码化装置10的详细结构;

图42表示本发明实施例10中数据译码装置20的详细结构;

图43表示本发明实施例10的数据密码装置10中密码化处理流程;

图44表示本发明实施例10的数据译码装置20中密码化处理流程;

图45表示本发明实施例11中数据密码化装置10的详细结构;

图46表示本发明实施例11中数据译码装置20的详细结构;

图47表示本发明实施例11的数据密码化装置10中的密码化处理流程;

图48表示本发明实施例11的数据译码装置20中的密码化处理流程;

图49表示本发明实施例12中尾数数据处理单元106的详细结构;

图50表示本发明实施例12的数据密码化装置10中的尾数数据处理流程。

实施例1

本发明的实施例1执行由关键数据指定的密码化处理或译码处理(密码化处理或译码处理同时被称之为“密码处理”),为由明文数据生成密码文数据的密码化装置和由密码文数据生成明文数据的译码装置(密码化装置或译码装置共同被称为“由被作密码处理数据生成输出数据的密码处理装置”),在每次以信息组为单位执行密码处理时将在直至生成1信息组的输出数据为止所执行密码处理的过程中所生成的中间信息组作为链结信息组存贮,并在执行下一信息组的密码处理时将所存贮的链结信息组合并到关键数据的密码处理装置。

图2表示本发明实施例1中的密码通信系统的结构。

此密码通信系统由将明文数据加以密码化发送的发送机1和接收密码文加以译码的接收机2组成。在同一图上还表明由发送机1向接收机2传送密码文数据的传输通路3。

发送机1如图2中所示备有数据密码化装置10和发送单元11。

数据密码化装置10取得明文数据,根据予设的关键数据将每一由规定的位数构成的信息组按规定算法进行密码化,由得到的明文数据来生成密码文数据。这里所用的关键数据是发送机1和接收机2予先秘密地共有的,规定的算法是装置固有的,指定变换族,而由此关键数据指定该族中的一个变换。而明文数据为将声音、图象信息和字符代码等进行数字编码后的数字信息。在此将由规定位数构成的1信息组例如作为64位来加以说明。

发送单元11将密码文数据作调制、放大等之后的发送数据送到传输通路3。

接收机2如图2中所示,备有数据译码装置20和接收单元21。

接收单元21通过传输通路3接收发送数据,将作解调等之后的密码文数据送到数据译码装置20。

数据译码装置20根据关键数据将各信息组按规定的算法进行译码,由密码文数据生成明文数据。

图3表示本发明实施例1中的图2所示数据密码化装置10的详细结构。

此数据密码化装置10由信息组分割单元101、信息组存贮单元102、关键数据合并单元103、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106和信息组结合单元107构成。

图1中所示历来的编码化装置30和图3中所示本发明的实施例1中的数据密码化装置10的关系是:“异或”单元301与关键数据组合单元103相对应,数据密码化单元302与信息组分割单元101、部分关键码生成单元104、第1-8密码化单元105a~105h、尾数数据处理单元106和信息组结合单元107相对应,寄存器303与信息组存贮单元102相对应。

信息分割单元101将获得的明文数据分割成64位组成的明文数据的1信息组(下称“明文信息组”)单位,顺次向第1密码化单元105a传送,最后在生成不满64位的尾数明文数据时,将该尾数明文数据传送给尾数数据处理单元106。这里,例如得到200位的明文数据,从头开始分割成1~64bit的第一信息组、65~128bit的第二明文信息组、129~192bit的第三明文信息组和193~200bit的尾数明文数据,顺次将第一~三明文信息组向第1密码化单元105a、将尾数明文数据向尾数数据处理单元106传送。

信息组存贮单元102在处理信息组分割单元101分割的各信息组时,存贮为使前面的信息组影响到后面的信息组用的链结信息组。而在处理最初的信息组时,予先存贮链结信息组的初始值Ⅳ。

关键数据组合单元103将信息组存贮单元102中所存贮的链结信息组合并到关键数据生成组合关键数据。在此,取得予先设定的64位的关键数据,在处理第一明文信息组时,对64位的链结信息组的初始值Ⅳ和64位的关键数据进行各对应的位的“异或”运算,在处理第二、三明文信息组时,对第一、二明文信息组处理时所生成的64位的链结信息组与64位的关键数据进行各对应的位的“异或”运算。

部分关键码生成单元104由关键数据组合单元103生成的组合关键数据生成相当于密码化单元数量的数的部分关键码。在此,由64位的组合关键数据生成8个48位的部分关键码。

第1密码化单元105a根据第一部分关键码由明文信息组生成第一中间信息组。

第2~7密码化单元105b~105g各自根据第2~7的部分关键码由第1~6中间信息组生成第2~7中间信息组。

第8密码化单元105h根据第8部分关键码由第7中间信息组生成密码文数据的1信息组(下称“密码文信息组”)。

第1~8密码化单元105a~105h全都具有同样的结构,按照由48位的部分关键码所指定的变换,应用64位的输入内的低位32位变换高位32位,各自串行地进行调换高位32位与低位32位的变换,合计进行8级的此变换。在此,由第1~3明文信息组生成各个对应的第1~7中间信息组和第1~3密码文信息组。

图4表示第1~8密码化单元105a~105h的详细结构。

64位的明文信息组被分割成高位32位和低位32位,如将它们的高位作为H0、低位作为L0、第n密码化单元的输入作为(H(n-1),L(n-1))、输出作为(Hn,ln),则Hn、Ln以下面的(式6)、(式7)表示:

           Hn=L(n-1)                       (式6)

           Ln=H(n-1)(+)f(L(n-1)、Kn)       (式7)

这里,“(+)”是指各对应的位的“异或”运算,“Kn”为被输入到第n密码化单元的48位的部分关键码,“f”为采用L(n-1)与Kn输出32位的数据的函数。

图5表示计算函数“f”的部分的详细结构。

32位的L(n-1)按以下(表1)所示的扩展转置E被扩展并转变为48位。

(表1)32      1      2      3      4      5 4      5      6      7      8      9 8      9     10     11     12     1312     13     14     15     16     1716     17     18     19     20     2120     21     22     23     24     2524     25     26     27     28     2928     29     30     31     32      1

表中的数值表示输入位置换的新的位的位置,例如,输入的第32位被置换为输出的第1位和第47位,输入的第1位被置换为输出的第2位和第48位。

对此48位和48位的部分关键码Kn进行各对应的位的“异或”EXOR运算,再将该结果分割成各6位的8组,分别输入给8个选择函数S1~S8。

选择函数S1~S8(也称为S逻辑单元)为输入6位输出4位的函数,其处理内容以换字表表示。

图6表示选择函数S1~S8的换字表。

在一个选择函数中,0至15的数字为64个,排列成4行16列。

所输入的6位中的起始和最后位指定此换字表的行,除起始和最后外的4位指定列。

例如,在选择函数S1中输入“011011”时由起始位“0”和最后位“1”指定为第2行,由除起始和最后之外的4位“1101”指定为第14列。而由于选择函数S1的换字表的2行14列为“5”,故输出“0101”。

8个选择函数S1~S8输出的合计32位(4位×8=32位)的输出成为进行下(表2)中所示的转置P的“f(L(n-1)、Kn)”的输出。

(表2)16      7     20     2129     12     28     17 1     15     23     26 5     18     31     10 2      8     24     1432     27      3      919     13     30      622     11      4     25

表中的数值表示输入位置换的新的位的位置,例如,输入的第16位被置换成输出的第一位,输入的第7位被置换成输出的第二位。

信息组存贮单元102备有信息组更新功能,在每次第4密码化单元105d生成第4中间信息组时,将此第4中间信息组作为新的链结信息组更新存贮的链结信息组,在下一信息组处理时应用。在此,予先存贮64位的初始值Ⅳ,在处理第一明文信息组时应用此初始值Ⅳ,将此处理时所生成的第4中间信息组更新为新的链结信息组。在处理第2明文信息组时应用第一明文信息组处理时更新的链结信息组,将此处理时所生成的第4中间信息组更新为新的链结信息组。接着在处理第3明文信息组时应用第2明文信息组处理时更新的链结信息组,将此处理时所生成的第4中间信息组更新为新的链接信息组。最后,在处理尾数明文数据时应用第3明文信息组的处理时更新的链结信息组。

尾数数据处理单元106由信息组分割单元101接收尾数明文数据,根据信息组存贮单元102中所存贮的链结信息组,由尾数明文数据生成与尾数明文数据相同位数的尾数密码文数据,此处理单元106含有数据匹配单元106a和尾数数据组合单元106b。

图7表示本发明实施例1中图3所示尾数数据处理单元106的详细结构。

数据匹配单元106a由信息组存贮单元102中存贮的链结信息组生成与尾数明文数据相同位数的尾数链结数据。在此,尾数明文数据为8位,生成由信息组存贮单元102中所存贮的链结信息组的例如高位8位构成的尾数链结数据。

尾数数据组合单元106b将尾数链结数据组合进尾数明文数据。这里,对8位的尾数链结数据和8位的尾数明文数据进行各对应位的“异或”运算,生成8位的尾数密码文数据。

信息组结合单元107将第8密码化单元105h生成的各密码文信息组与尾数数据处理单元106生成的尾数密码文数据相结合生成密码文数据。在此,将各64位的第1~3密码文信息组与8位的尾数密码文数据结合生成200位的密码文数据。

信息组存贮单元102将链结信息组更新为第4密码化单元105d生成的第4中间信息组,这仅为一例,由于以处理的过程生成的中间信息组怎样的均可,所以更新为第1~7密码化单元105a~105g生成的第1~7中间信息组中的一个也可。

图8表示本发明实施例1中图2所示数据译码装置20的详细的结构。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、关键数据组合单元203、部分关键码生成单元204、第1~8译码单元205a~205h、尾数数据处理单元206和信息组结合单元207构成。

图1中所示密码化装置30与图8中所示数据译码装置20的关系是:“异或”单元301对应于关键数据组合单元203,数据密码化单元302对应于信息组分割单元201、部分关键码生成单元204、第1~8译码单元205a~205h、尾数数据处理单元206和信息组结合单元207,寄存器303对应于信息组存贮单元202。

信息组分割单元201将得到的密码文数据分割成64位组成的信息组传送给第1译码单元205a,最后在生成不满64位的尾数密码文数据时,将该尾数密码文数据传送到尾数数据处理单元206。这里,作为一例,取得200位的密码文数据,由起头开始分割成为1~64位的第1密码文信息组,65~128位的第2密码文信息组,129~192位的第3密码文信息组和193~200位的尾数密码文数据,将第1~3密码文信息组向第1译码单元205a传送,将尾数密码文数据向尾数数据处理单元206传送。

信息组存贮单元202在处理信息组分割单元201分割的各信息组时,存贮为要受到前面的信息组的影响而用的链结信息组。而在处理起始信息组时,予先存贮链结信息组的初始值Ⅳ。此初始值Ⅳ与数据密码化装置10中使用的值是同样的。某一明文数据的密码化中用的初始值Ⅳ和与该明文数据对应的密码数据译码中用的初始值Ⅳ相同。

链结数据组合单元203将信息组存贮单元202中所存贮的链结数据组合进关键数据生成组合关键数据。此组合与数据密码化装置10的关键数据组合单元10进行的组合相同。而此关键数据与数据密码化装置10中使用的相同。某明文数据的密码化中间的关键数据和与该明文数据对应的密码化数据的译码中用的关键数据相同。在此,予先取得所设定的64位关键数据,在处理第一密码文信息组时,对64位的链结信息组的初始值Ⅳ和64位的关键数据进行每一对应位的“异或”运算,在处理第2~3密码文信息组时,对第1~2密码文信息组的处理时所生成的64位的链结信息组和64位的关键数据,进行每一对应位的“异或”运算。

部分关键码生成单元204由关键数据组合单元203生成的组合关键数据生成相当于译码单元数的数量的部分关键码。这里,由64位的组合关键数据生成8个48位的部分关键码。生成此部分关键码的功能与数据密码化装置10的部分关键码生成单元104进行的那些全部相同。

第1译码单元205a根据第8部分关键码由密码文信息组生成第7中间信息组。

第2~7译码单元205b~205g各自根据第7~2的部分关键码由第7~2中间信息组生成第6~1中间信息组。

第8译码单元205h根据第1部分关键码由第1中间信息组生成明文信息组。

第1~8译码单元205a~205h全都具有相同结构,按照由48位的部分关键码所指定的变换,利用64位的输入中的低位32位变换成高位32位,分别串行地进行高位32位与低位32位相交换的交换,合计进行8级此变换。这里,由第1~3密码文信息组生成其之各各对应的第7~1中间信息组和第1~3明文信息组。向第1~8译码单元205a~205h进行的变换分别为数据密码化装置10的第8~1密码化单元105h~105a的变换的逆变换。

信息组存贮单元202备有信息组更新功能,每次第4译码单元205d生成第4中间信息组时,将此第4中间信息组作为新的链结信息组来更新存贮着的链结信息组,在处理下一信息组时应用。在此,予先存贮有64位的初始值Ⅳ,此初始值Ⅳ在处理第一密码文信息组时被利用,将此处理时所生成的第4中间信息组作为新的链接数据存贮。接着,在第一密码文信息组处理时所更新的链结信息组被用于处理第二密码文信息组中,将此处理时所生成的第4中间信息组作为新链结信息组存贮。然后,第二密码文信息组处理时所存贮的链结数据在处理第3密码文信息组时加以利用,将此处理时所生成的第4中间信息组作为新链结信息组存贮。最后,在处理第3密码文信息组时存贮的链结信息组在处理尾数密码文数据时应用。

尾数数据处理单元206由信息组分割单元201接收尾数密码文数据,根据信息组存贮单元202中存贮的链结信息组,由尾数密码文数据生成与尾数密码文数据相同位数的尾数明文数据,此处理单元206含有数据匹配单元206a和尾数数据组合单元206b。

图9表示本发明实施例1中图8所示的尾数数据处理单元206的详细结构。

数据匹配单元206a由信息组存贮单元202中存贮的链结信息组生成与尾数密码文数据相同位数的尾数链结数据。在此,由于尾数密码文数据为8位,所以生成信息组存贮单元202中存贮的链结信息组的例如以高位8位构成的尾数链结数据。

尾数数据组合单元206b将尾数链结数据组合到尾数密码文数据。这里,对8位的尾数链结数据和8位的尾数密码文数据进行每一对应位的“异或”运算,生成8位的尾数明文数据。

信息组结合单元207将第8译码单元205h生成的明文数据的各信息组和尾数数据处理单元206生成的尾数明文数据相结合生成明文数据。在此,将各64位的第1~3明文数据和8位的尾数明文数据相结合生成200位的明文数据。

信息组存贮单元202将链结信息组更新为第4译码单元205d生成的中间信息组,这只是这方面的一例,因为如果是处理过程中生成的中间信息组哪一个均可,所以也可以更新为第1~7译码单元205a~205g生成的第1~7中间信息组中的另一个。但是有必要更新为与数据密码化装置10的信息组存贮单元102同一的中间信息组。

图10表示本发明实施例1的数据密码化装置10中的密码化处理流程。

这里作为一例,取得200位的明文数据,在信息组存贮单元102中作为被予先存贮的初始值Ⅳ,按DES的算法为基准进行说明。

(1)信息组分割单元101判断取得的明文数据的未处理部分有无64位以上(步骤S101)。在此,第一次因为取得的明文数据的未处理部分为200位所以判定为64位以上(步骤S101:第一次)。

(2)在明文数据的未处理部分为64位以上时,由未处理部分的起头分离64位(步骤S102)。在此,由200位中的起头起计数将1~64位分离为第1明文信息组(步骤S102:第一次)。

(3)关键数据组合单元103将信息组存贮单元102中存贮的链结信息块组合到关键数据,生成组合关键数据(步骤S103)。在此,对64位的链结信息组的初始值Ⅳ和64位的关键数据进行每一对应位的“异或”运算,生成组合关键数据传送到部分关键码生成单元104(步骤S103:第1次)。

(4)部分关键码生成单元104由组合关键数据生成相当于密码化单元数的数量的部分关键码(步骤S104)。在此,由64位的组合关键数据生成8个48位的部分关键码(步骤S104:第1次)。

由含有8位的奇偶校验位的64位的关键数据生成第1~8个的8个×48位的部分关键码的程序,例如,如下所述。

含有奇偶校验位的64位的关键数据通过(表3)中所示的转置,成为在进行转置的同时除去奇偶位的56位。

(表3)57     49     41     33      25      17      9 1     58     50     42      34      26     1810      2     59     51      43      35     2719     11      3     60      52      44     3663     55     47     39      31      23     15 7     62     54     47      38      30     2214      6     61     53      45      37     2921     13      5     28      20      12      4

表中的数值表示输入位置换的新的位的位置,例如,输入的第57位被置换为输出的第1位,输入的第49位被置换为输出的第2位。

在此56位中将前半个28位作为C0,后半28位作为D0,将此C0和D0按(表4)中所示的位移次数左移生成C1~C8和D1~D8。

(表4)部分关键码号    1   2   3    4    5    6    7    8位移次数        2   4   8   12   16   20   24   26

例如,如C0=(C1 C2 C3…C26 C27 C28),则成为C1=(C3 C4C5…C28 C1 C2)。

接着,将各个的56位按(表5)所示的转置而成为48位。

(表5)14    17    11    24     1     5 3    28    15     6    21    1023    19    12     4    26     816     7    27    20    13     241    52    31    37    47    5530    40    51    45    33    4844    49    39    56    34    5346    42    50    36    29    32

表中的数值表示输入位置换的新的位的位置,例如,输入的第14位被置换成输出的第1位,输入的第17位被置换成输出的第2位。

(5)第1密码化单元105a根据第1的部分关键码由明文信息组生成第1中间信息组(步骤S105)。在此,由第1明文信息组生成第1中间信息组(步骤S105:第1次)。

(6)第2~4密码化单元105b~105d各自根据第2~4的部分关键码由第1~3中间信息组生成第2~4中间信息组(步骤S106)。在此,由对应于第1明文信息组的第1~3中间信息组生成第2~4中间信息组(步骤S106:第1次)。

(7)信息组存贮单元102将第4中间信息组作为新的链结信息组,更新存贮中的链结信息组(步骤S107)。在此,更新为对应于第1明文信息组的第4中间信息组(步骤S107:第1次)。

(8)第5~7密码化单元105e~105g各自根据第5~7的部分关键码由第4~6中间信息组生成第5~7中间信息组(步骤S108)。在此,由对应于第1明文信息组的第4~6中间信息组生成第5~7中间信息组(步骤S108:第1次)。

(9)第8密码化单元105h根据第8的部分关键码由第7中间信息组生成密码文信息组(步骤S109)。在此,由对应于第1明文信息组的第7中间信息组生成第1密码文信息组(步骤S109:第1次)。

(10)判断是否具有明文数据的未处理部分。在尚有未处理部分时,处理下一明文信息组或尾数明文数据,返回步骤S101(步骤S110)。这里尚存在未处理部分故返回步骤S101(步骤S110:第1次)。

(11)在步骤S101中,这里第1次由200位的明文数据分离64位,其剩余为136位,所以判定为64位以上(步骤S101:第2次)。

(12)在步骤S102中,这里由最初的200位的起头数起将第65~128位作为第2明文信息组加以分离(步骤S102:第2次)。

(13)在步骤S103中,这里对处理第1明文信息组时所生成的64位的链结信息组和64位的关键数据进行每一对应位的“异或”运算,生成组合关键数据传送到部分关键码生成单元104(步骤S103:第2次)。

(14)在步骤S104中,这里由64位的组合关键数据生成8个48位的部分关键码(步骤S104:第2次)。

(15)~(19)在步骤S105~步骤S109中对第2明文信息组进行与第1明文信息组同样的处理,生成对应于第2明文信息组的第1~7中间信息组和密码文信息组,将信息组存贮单元102中存贮的链接信息组更新为对应于第2明文信息组的第4中间信息组(步骤S105~S109:第2次)。

(20)在步骤S110中,这里由于尚有明文数据的未处理部分所以返回步骤S101(步骤S110:第2次)。

(21)在步骤S101中,这里第2次由136位的明文数据分离64位,因其剩余72位故判定为64位以上(步骤S101:第3次)。

(22)在步骤S102中,这里由最初的200位的起头数起将第129~192位作为第3明文信息组分离(步骤S102:第3次)。

(23)在步骤S103中,这里对处理第2明文信息组时所生成的链结信息组和64位的关键数据进行各对应位的“异或”运算,生成组合关键数据传送到部分关键码生成单元104(步骤S103:第3次)。

(24)在步骤S104中,这里由64位的组合关键数据生成8个48位的部分关键码(步骤S104:第3次)。

(25~29)步骤S105~S109中,对第3明文信息组进行与第1明文信息组同样的处理,生成对应于第3明文信息组的第1~7中间信息组和密码文信息组,将信息组存贮单元102中存贮的链结信息组更新为对应于第3明文信息组的第4中间信息组(步骤S105~S109:第3次)。

(30)步骤S110中,这里因尚有未处理的明文数据部分故返回步骤S101(步骤S110:第3次)。

(31)在步骤S101中,这里第3次72位的明文数据分离64位,因剩余8位,判定为不满64位(步骤S101:第4次)。

(32)在明文数据的未处理部分不满64位时,将此未处理部分传送到尾数数据处理单元106(步骤S111)。这里由最初的200位的起头数起将第193~200位作为尾数明文数据传送到尾数数据处理单元106。

(33)尾数数据处理单元106由信息组分割单元101接收尾数明文数据,根据信息组存贮单元102中存贮的链结信息组,由尾数明文数据生成与尾数明文数据相同位数的尾数密码文数据(步骤S112)。这里对处理信息组存贮单元102中存贮的第3明文信息组时所生成的64位链结信息组内的高8位和8位的尾数明文数据进行各对应位的“异或”运算,生成8位的尾数密码文数据。

(34)在步骤S110判断明文数据无未处理部分时,或者在步骤S112中生成尾数密码文数据之后,信息组结合单元107将第8密码化单元105h生成的各密码文信息组与尾数数据处理单元106生成的尾数密码文数据相结合生成密码文数据(步骤S113)。这里将与第1~3明文信息组各自对应的各密码文信息组与尾数密码文数据相结合生成200位的密码文数据。

图11表示本发明实施例1的数据译码装置20中的密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

这里作为一例,取200位的密码文数据,在信息组存贮单元202中与数据密码化装置10的信息组存贮单元102同样地予先存贮初始值Ⅳ,按照DES的算法作为基准予以说明。

(1)信息分割单元201判断取得的密码文数据的未处理部分是否有64位以上(步骤S201)。这里第1次,因取得的密码文数据的未处理部分为200位故判定为64位以上(步骤S201:第1次)。

(2)在密码文数据的未处理部分为64位以上时自未处理部分的起头开始分离64位(步骤S202)。这里由200位中的起头数起始第1~64位作为第1密码文信息组分离(步骤S202:第1次)。

(3)关键数据组合单元203将信息组存贮单元202中存贮的链结信息组组合进关键数据生成组合关键数据(步骤S203)。这里对64位的链结信息组的初始值Ⅳ和64位的关键数据进行各对应位的“异或”运算,生成组合关键数据传送到部分关键码生成单元204(步骤S203:第1次)。

(4)部分关键码生成单元204由组合关键数据生成相当于译码单元数的数量的部分关键码(步骤S204)。这里由64位的组合关键数据生成8个48位的部分关键码(步骤S204:第1次)。

由含有8位奇偶校验位的64位的关键数据生成第1~8的8个×48位的部分关键码的程序与数据密码化装置10的部分关键码生成单元104相同。

(5)第1译码单元205a根据第8个部分关键码由密码文信息组生成第7中间信息组(步骤S205)。这里由第1密码文信息组生成第7中间信息组(步骤S205:第1次)。

(6)第2~4译码单元205b~205d各自根据第7~5的部分关键码由第7~5中间信息组生成第6~4中间信息组(步骤S206)。这里由对应于第1密码文信息组的第7~5中间信息组生成第6~4中间信息组(步骤S206:第1次)。

(7)信息组存贮单元202将第4译码单元205d生成的第4中间信息组作为新的链结信息组更新存贮着的链结信息组(步骤S207)。这里更新为对应于第1密码文信息组的第4中间信息组(步骤S207:第1次)。

(8)第5~7译码单元205e~205g各自根据第4~2的部分关键码由第4~2中间信息组生成第3~1中间信息组(步骤S208)。这里由对应于第1密码文信息组的第4~2中间信息组生成第3~1中间信息组(步骤S208:第1次)。

(9)第8译码单元205h根据第1的部分关键码由第1中间信息组生成明文信息组(步骤S209)。这里由对应于第1密码文信息组的第1中间信息组生成明文信息组(步骤S209:第1次)。

(10)判断是否存在密码文数据的未处理部分。在有未处理部分时处理下一密码文信息组或尾数密码文数据,返回步骤S201(步骤S210)。这里尚存在未处理部分故返回步骤S201(步骤S210:第1次)。

(11)在步骤S201中,这里第1次由200位的密码文数据分离64位,其剩余为136位,所以判定为64位以上(步骤201:第2次)。

(12)在步骤S202中,这里由最初的200位的起头数起将第65~128位作为第2密码文信息组分离(步骤S202:第2次)。

(13)在步骤S203,这里对处理第1密码文信息组时所生成的64位的链结信息组和64位的关键数据进行各对应位的“异或”运算,生成组合关键数据传送到部分关键码生成单元204(步骤S203:第2次)。

(14)在步骤S204,这里由64位的组合关键数据生成8个48位的部分关键码(步骤S204:第2次)。

(15)~(19)在步骤S205~S209,对第2密码文信息组进行与第1密码文信息组同样的处理,生成对应于第2密码文信息组的第7~1中间信息组和明文信息组,将信息组存贮单元202中存贮的链结数据更新为对应于第2密码文信息组的第4中间信息组(步骤S205~S209:第2次)。

(20)在步骤S210,这里因尚存在未处理的密码文数据部分而返回步骤S201(步骤S210:第2次)。

(21)在步骤S201中,这里第2次由136位的密码文数据分离64位,因剩余72位而判定为64位以上(步骤S201:第3次)。

(22)在步骤S202,这里由最初的200位的起头数起将第129~192位作为第3密码文信息组分离(步骤S202:第3次)。

(23)在步骤S203,这里对处理第2密码文信息组时所生成的链结信息组和64位的关键数据进行各对应位的“异或”运算,生成组合关键数据传送给部分关键码生成单元204(步骤S203:第3次)。

(24)在步骤S204,这里由64位的组合关键数据生成8个48位的部分关键码(步骤S204:第3次)。

(25)~(29)在步骤S205~S209,对第3密码文信息组进行与第1密码文信息组相同的处理,生成对应于第3密码文信息组的第7~1中间信息组和明文信息组,将信息组存贮单元202存贮的链结数据更新为对应于第3密码文信息组的第4中间信息组(步骤S205~S209:第3次)。

(30)在步骤S210,这里因尚存在密码文数据的未处理部分故返回步骤S201(步骤S210:第3次)。

(31)在步骤S201中,这里第3次由72位的密码文数据分离64位,其剩余为8位故制定为不足64位(步骤S201:第4次)。

(32)在密码文数据的未处理部分不足64位时,将此未处理部分传送到尾数数据处理单元206(步骤S211)。这里由最初的200位的起头数起将第193~200位作为尾数密码文数据传送到尾数数据处理单元206。

(33)尾数数据处理单元206由信息组分割单元201接收尾数密码文数据,根据信息组存贮单元202中存贮的链结信息组,由尾数密码文数据生成与尾数密码文数据相同位数的尾数明文数据(步骤S212)。这里对处理信息组存贮单元202中所存贮的第3密码文信息组时所生成的64位链结数据中的高8位和8位的尾数密码文数据进行各对应位的“异或”运算,生成8位的尾数明文数据。

(34)在步骤S210中判断无密码文数据的未处理部分时,或在步骤S212中生成尾数明文数据后,信息组结合单元207将各明文信息组与尾数数据处理单元206生成的尾数明文数据相结合生成明文数据(步骤S213)。这里将各自与第1~3密码文信息组对应的明文信息组与尾数明文数据结合生成200位的明文数据。

实施例1的密码处理装置是将在对前面的信息组执行密码处理过程中生成的中间信息组作为链结信息组存贮,在后面的密码处理时组合到关键数据,每次执行密码处理均要更新该链结信息组。<实施例2>

本发明实施例2与实施例1不同处在于,不是将存贮的链结信息组组合到关键数而是组合到被作密码处理的数据或对被作密码处理数据执行密码处理后的数据。

密码通信系统的结构与实施例1相同,其说明省略。

图12表示本发明实施例2中图2所示数据密码化装置10的详细结构。

与实施例1中图3所示数据密码化装置10共同的结构部分加以同一标号、具有同一功能的结构部分其说明省略。

此数据密码化装置10由信息组分割单元101、信息组存贮单元102、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106,信息组结合单元107和信息组组合单元108构成。

图1中所示历来的密码化装置30与图12所示本发明实施例2中的数据密码化装置10的关系是:“异或”单元301与信息组组合单元108对应,数据密码化单元302与信息组分割单元101、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106和信息组结合单元107相对应,寄存器303与信息组存贮单元102对应。

信息组分割单元101将分割的信息组不传送给第1密码化单元105而传送给信息组组合单元108,仅这一点与实施例1不同。

信息组组合单元108将信息组存贮单元102中存贮的链结数据组合到明文信息组生成组合明文信息组。这里在处理第1明文信息组时对64位的链结信息组的初始值Ⅳ与64位的第1明文信息组进行各对应位的“异或”运算,生成64位的第1组合明文信息组,在处理第2~3明文信息组时,对第1~2明文信息组处理时所生成的64位的链结信息组与64位的第2~3明文信息组进行每一对应位的“异或”运算生成64位的第2~3组合明文信息组。

部分关键码生成单元104由关键数据生成相当于密码化单元数的数量的部分关键码。这里获取予先所设定的64位的关键数据,由64位关键数据生成8个48位的部分关键码。

第1密码化单元105a不由明文信息组而由信息组组合单元108生成的组合明文信息组生成第1中间信息组。

第1~8密码化单元105a~105h具有与实施例1同一的功能。这里由第1~3组合明文信息组生成各自对应的第1~7中间信息组和第1~3密码文信息组。

图13表示本发明实施例2中的图2所示数据译码装置20的详细结构。

与实施例1图8所示数据译码装置20共同的结构部分加以同一标号,具有同一功能的构成部分的说明省略。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、部分关键码生成单元204、第1~8译码单元205a~205h、尾数数据处理单元206、信息组结合单元207和信息组组合单元208构成。

部分关键码生成单元204由关键数据生成相当于译码单元数的数量的部分关键码。这里获取予先设定的64位的关键数据,由64位的关键数据生成8个48位的部分关键码。此部分关键码的生成与数据密码化装置10的部分关键码生成单元104进行的部分关键码的生成完全相同。

第8译码单元205h根据第1的部分关键码由第1中间信息组生成密码处理信息组。

第1~8译码单元205a~205h具有与实施例1同样的功能。这里由第1~3密码文信息组生成各自对应的第1~7中间信息组和第1~3密码处理信息组。

信息组组合单元208将信息组存贮单元202中存贮的链结信息组组合到密码处理信息组生成明文信息组。这里在处理第1密码文信息组时,对64位的链结信息组的初始值Ⅳ与64位的的第1密码处理信息组进行各对应位的“异或”运算,生成64位的第1明文信息组,在处理第2~3密码文信息组时对第1~2密码文信息组处理时所生成的64位链结信息组与64位的第2~3密码处理信息组进行每一对应位的“异或”运算,生成64位的第2~3明文信息组。

信息组结合单元207将信息组组合单元208生成的明文数据的各信息组与尾数数据处理单元206生成的尾数明文数据相结合生成明文数据。这里将各64位的第1~3明文数据与8位的尾数明文数据相结合生成200位的明文数据。

图14表示本发明实施例2的数据密码化装置10中密码化处理的流程。

与实施例1中图10所示数据密码化装置10的操作共同的步骤加以同一标号,其说明省略。

(1)~(2)与实施例1相同(步骤S101、S102:第1次)。

(3)部分关键码生成单元104由关键数据生成相当于密码化单元数的数量的部分关键码(步骤S301)。这里获取予设定64位的关键数据,由64位关键数据生成8个48位的部分关键码(步骤S301:第1次)。

(4)信息组组合单元108将信息组存贮单元102中存贮的链结信息组组合进明文信息组生成组合明文信息组(步骤S302)。这里对64位的链结信息组的初始值Ⅳ与64位的第1明文信息组进行各对应位的“异或”运算,生成64位的第1组合明文信息组(步骤S302:第1次)。

(5)第1密码化单元105a根据第1部分关键码由组合明文信息组生成第1中间信息组(步骤S303)。在此由第1组合明文信息组生成第1中间信息组(步骤S303:第1次)。

(6)~(12)与实施例1相同(步骤S106~S110:第1次,步骤S101、S102:第2次)。

(13)在步骤S301,这里由64位的关键数据生成8个48位的部分关键码。而如果关键数据不变化因与第1次完全相同,所以也可以存贮各部分关键码(步骤S301:第2次)。

(14)在步骤S302,这里对第1明文信息组处理时所生成的64位链结信息组与64位的第2明文信息组进行各对应位的“异或”运算,生成64位的第2组合明文信息组(步骤S302:第2次)。

(15)在步骤S303中,这里由第2组合明文信息组生成第1中间信息组(步骤S303:第2次)。

(16)~(22)与实施例1相同(步骤S106~S110:第2次,步骤S101、S102:第3次)。

(23)在步骤S301,这里由64位的关键数据生成8个48位的部分关键码。而如果关键数据不变更则与第1次完全相同的处理,所以可不管存贮的各部分关键码(步骤S301:第3次)。

(24)在步骤S302中,这里对第2明文信息组处理时所生成的64位的链结信息组与64位的第3明文信息组进行各对应位的“异或”运算,生成64位的第3组合明文信息组(步骤S302:第3次)。

(25)在步骤S303,这里由第3组合明文信息组生成第1中间信息组(步骤S303:第3次)。

(26)~(34)与实施例1相同(步骤S106~S110:第3次,步骤S101:第4次,步骤S111~S113)。

图15表示本发明实施例2的数据译码装置20中密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

与实施例1中图11所示数据译码装置20的操作共同的步骤加以相同标号,其说明省略。

(1)~(2)与实施例1相同(步骤S201~S202:第1次)。

(3)部分关键码生成单元204由关键数据生成相当于译码单元数的数量的部分关键码(步骤S401)。这里获取予先设定的64位的关键数据,由此64位关键数据生成8个48位的部分关键码(步骤S401:第1次)。

(4)~(6)与实施例1的(5)、(6)、(8)相同(步骤S205、S206、S208:第1次)。

(7)第8译码单元205h根据第1部分关键码由第1中间信息组生成密码处理信息组(步骤S402)。这里由对应于第1密码文信息组的第1中间信息组生成第1密码处理信息组(步骤S402:第1次)。

(8)信息组组合单元208将信息组存贮单元202中存贮的链结数据组合进密码处理信息组生成明文信息组(步骤S403)。在此时64位的链结信息组的初始值Ⅳ与64位的第1密码处理信息组进行各对应位的“异或”运算,生成64位的第1明文信息组(步骤S403:第1次)。

(9)与实施例1的(7)相同(步骤S207:第1次)。

(10)~(12)与实施例1相同(步骤S210:第1次,步骤S201~S202:第2次)。

(13)在步骤S401,这里由64位的关键数据生成8个48位的部分关键码。而如果关键数据不变更因与第1次为完全同样的处理,可以不管所存贮的各部关键码如何(步骤S401:第2次)。

(14)~(16)与实施1的(15)、(16)、(18)相同(步骤S205、S206、S208:第2次)。

(17)在步骤S402,这里由对应于第2密码文信息组的第1中间信息组生成第2密码处理信息组(步骤S402:第2次)。

(18)在步骤S403,这里对在第1密码文信息组处理时生成的64位的链结数据与64位的第2密码处理信息组进行每一对应位的“异或”运算生成64位的第2明文信息组(步骤S403:第2次)。

(19)与实施例1的(17)同样(步骤S207:第2次)。

(20)~(22)与实施例1相同(步骤S210:第2次,步骤S201~S202:第3次)。

(23)步骤S401中,这里由64位的关键数据生成8个48位的部分关键码。而如关键数据不变更则因与第1次为完全相同的处理,所以可不管所存贮的各部分关键码如何(步骤S401:第3次)。

(24)~(26)与实施例1的(25)、(26)、(28)相同(步骤S205、S206、S208:第3次)。

(27)在步骤S402,这里由对应于第3密码文信息组的第1中间信息组生成第3密码处理信息组(步骤S402:第3次)。

(28)步骤S403中,这里对第2密码文信息组处理时生成的64位的链结信息组与64位的第3密码处理信息组进行每一对应位的“异或”运算生成64位的第3明文信息组(步骤S403:第3次)。

(29)与实施例1的(27)相同(步骤S207:第3次)。

(30)~(34)与实施例1同样(步骤S210:第3次,步骤S201:第4次,步骤S211~S213)。

实施2的密码处理装置是将对前面信息但执行密码处理过程中生成的中间信息组作为链接信息组存贮,在后面的密码处理时组合进明文信息组和密码处理信息组,每次执行密码处理时更新该链结信息组。<实施例3>

本发明实施例3的数据密码化装置10,仅第5密码化单元105e的输入与实施例1不同。实施例1中第5密码化单元105e的输入为第4密码化单元105d的输出,而在实施例3中该输入为明文信息组。因而,链结信息组和明文信息组分别由另外的密码化单元处理。

本发明实施例3的数据译码装置20作为数据密码化装置10的逆变换,与实施例1的数据译码装置20不同点是第4译码单元205d的输出为明文信息组,将对此明文信息组进行与数据密码化装置10同样的密码化处理生成的第4中间信息组作为新的链结信息组存贮。

密码通信系统的结构与实施例1相同,所以省略其说明。

图16表示本发明实施例3中图2所示数据密码化装置10的详细结构。

与实施例1中图3所示数据密码化装置10共同的构成部分加以同样的标号,具有同样功能的构成部分的说明省略。

此数据密码化装置10的结构与实施例1相同,而仅在第5密码化单元105e不由第4中间信息组而由明文信息组生成第5中间信息组这一点上与实施例1不同。

图17表示本发明实施例3中图2所示数据译码装置20的详细结构。

与实施例1中图8所示数据译码装置20共同的构成部分加以相同标号、具有同一功能的构成部分的说明省略。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、关键数据组合单元203、部分关键码生成单元204、第1~4译码单元205a~205d、第1~4密码化单元205i~205l、尾数数据处理单元206和信息组组合单元207构成。

第4译码单元205d根据第5部分关键码由第5中间信息组生成明文信息组。在此,由各自对应于第1~3密码文信息组的第5中间信息组生成第1~3明文信息组。而第1~4译码单元205a~205d进行的变换分别为数据密码化装置10的第8~5密码化单元105h~105e进行的变换的逆变换。

第1密码化单元205i根据第1部分关键码由第4译码单元205d生成的明文信息组生成第1中间信息组。

第2~4密码化单元205j~205l分别根据第2~4部分关键码由第1~3中间信息组生成第2~4中间信息组。

第1~4密码化单元205i~205l各自具有与数据密码化装置10的第1~4密码化单元105a~105d同样的功能,其操作也完全相同。在此,由第1~3明文信息组生成各自对应的第1~4中间信息组。

信息组存贮单元202具有信息组更新功能,在每次第4密码化单元205l生成第4中间信息组时,将此第4中间信息组作为新的链结信息组更新存贮中的链结信息组,在处理下一信息组时应用。这里的操作与实施例1相同。

信息组结合单元207将第4译码单元205d生成的明文数据的各信息组与尾数数据处理单元206生成的尾数明文数据相结合生成明文数据。在此将各64位的第1~3明文数据与8位的尾数明文数据相结合生成200位的明文数据。

图18表示本发明实施例3的数据密码化装置10中的密码化处理流程。

与实施例1中图10所示数据密码化装置10的操作共同的步骤加以同样标号省略其说明。

(1)~(7)与实施例1相同(步骤S101~S107:第1次)。

(8)第5~7密码化单元105e~105g分别根据第5~7的部分关键码由明文信息组和第5~6中间信息组生成第5~7中间信息组(步骤S501)。在此由第1明文信息组和对应于第1明文信息组的第5~6中间信息组生成第5~7中间信息组(步骤S501:第1次)。

(9)~(17)与实施例1相同(步骤S109、S110:第1次,步骤S101~S107:第2次)。

(18)在步骤S501中,这里由第2明文信息组和对应于第2明文信息组的第5~6中间信息组生成第5~7中间信息组(步骤S501:第2次)。

(19)~(27)与实施例1同样(步骤S109、S110:第2次,步骤S101~S107:第3次)。

(28)在步骤S501,这里由第3明文信息组和对应于第3明文信息组的第5~6中间信息组生成第5~7中间信息组(步骤S501:第3次)。

(29)~(34)与实施例1相同(步骤S109、S110:第3次,步骤S101:第4次,步骤S111~S113)。

图19表示本发明实施例3的数据译码装置20中的密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

与实施例1中图11所示数据译码装置20的操作共同的步骤加以相同标号,省略其说明。

(1)~(5)与实施例1相同(步骤S201~S205:第1次)。

(6)第2~4译码单元205b~205d各自根据第7~5部分关键码由第7~5中间信息组生成第6、第5中间信息组和明文信息组(步骤S601)。在此由对应于第1密码文信息组的第7~5中间信息组生成第6、第5中间信息组和第1明文信息组(步骤S601:第1次)。

(7)第1密码化单元205i根据第1部分关键码由第4译码单元205d生成的明文信息组生成第1中间信息组(步骤S602)。在此由第1明文信息组生成第1中间信息组(步骤S602:第1次)。

(8)第2~4密码单元205j~205l各自根据第2~4部分关键码由第1~3中间信息组生成第2~4中间信息组(步骤S603)。在此由对应于第1明文信息组的第1~3中间信息组生成第2~4中间信息组(步骤S603:第1次)。

(9)信息组存贮单元202将第4密码化单元205l生成的第4中间信息组作为新链结信息组更新存贮中的链接信息组(步骤S604)。在此更新为对应于第1明文信息组的第4中间信息组(步骤S604:第1次)。

(10)~(15)与实施例1相同(步骤S210:第1次,步骤S201~S205:第2次)。

(16)在步骤S601,这里由对应于第2密码文信息组的第7~5中间信息组生成第6、第5中间信息组和第2明文信息组(步骤S601:第2次)。

(17)在步骤S602,这里由第2明文信息组生成第1中间信息组(步骤S602:第2次)。

(18)在步骤S603,这里由对应于第2明文信息组的第1~3中间信息组生成第2~4中间信息组(步骤S603:第2次)。

(19)步骤S604,在此更新为对应于第2明文信息组的第4中间信息组(步骤S604:第2次)。

(20)~(25)与实施例1相同(步骤S210:第2次,步骤S201~S205:第3次)。

(26)在步骤S601,这里由对应于第3密码文信息组的第7~5中间信息组生成第6、第5中间信息组和第3明文信息组(步骤S601:第3次)。

(27)在步骤S602,这里由第3明文信息组生成第1中间信息组(步骤S602:第3次)

(28)在步骤S603,这里由对应于第3明文信息组的第1~3中间信息组生成第2~4中间信息组(步骤S603:第3次)。

(29)在步骤S604,在此更新为对应于第3明文信息组的第4中间信息组(步骤S604:第3次)。

(30)~(34)与实施例1相同(步骤S210:第3次,步骤S201:第4次,步骤S211~S213)。

实施例3的密码装置是将对前面信息组执行密码处理过程中生成的中间信息组作为链结信息组存贮,在后面的密码处理时组合进关键数据,每次执行密码处理即更新该链接信息组。

实施例3中是对将链结信息组组合进关键数据的实施例1进行如上述的变更,但也可对将链结信息组组合进明文信息组和密码处理信息组的实施例2同样地进行如上述的变更。

这样的密码处理装置是将对前面信息组施行密码处理的过程中生成的中间信息组作为链结信息组存贮,在后面的密码处理时组合到明文信息组和密码处理信息组,每次执行密码处理时更新该链结数据。<实施例4>

本发明实施例4,面对实施例2进行如实施例3的变更时,倒转对组合的数据进行密码化的第1~4密码化单元与存贮链结信息组的信息组存贮单元的序号,将组合后或组合前的信息组作为新的链结信息组存贮。

密码通信系统的结构与实施例1相同,省略其说明。

图20表示本发明实施例4中图2所示数据密码化装置10的详细结构。

与实施例2中图12所示数据密码化装置10共同的结构部分加以同一标号,具有同一功能的构成部分省略其说明。

此数据密码化装置10由信息组分割单元101、信息组存贮单元102、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106、信息组结合单元107和信息组组合单元108构成。

第1密码化单元105a不由组合明文信息组而由信息组存贮单元102中存贮的链结信息组生成第1中间信息组。

第1~4密码化单元105a~105d具有与实施2同样的功能。在此,由链结信息组生成各自对应的第1~3中间信息组和密码处理信息组。

信息组组合单元108将第4密码化单元105d生成的密码处理信息组组合到明文信息组,生成第4中间信息组。在此,当处理第1明文信息组时,对由链结信息组的初始值Ⅳ生成的64位的第1密码处理信息组与64位的第1明文信息组进行各对应位的“异或”运算,而当处理第2~3明文信息组时,对第1~2明文信息组处理时所生成的64位的第2~3密码处理信息组与64位的第2~3明文信息组进行各对应位的“异或”运算。

信息组存贮单元102具有信息组更新功能,每次信息组组合单元108生成第4中间信息组时,将此第4中间信息组作为新链结信息组更新存贮中的链结信息组,用于下一信息组的处理中。这里,予先存贮有64位的初始值Ⅳ,此初始值Ⅳ被用于处理第1明文信息组中,将这一处理时所生成的第4中间信息组作为新链结信息组存贮。然后,第1明文信息组处理时被更新的链结信息组被用于处理第2明文信息组时,将此处理时所生成的第4中间信息组作为新链结信息组存贮。而后,第2明文信息组处理时所存贮的链结信息组用于处理第3明文信息组中,将此处理时生成的第4中间信息组作为新的链结信息组存贮。最后,第3明文信息组处理时被存贮的链结信息组被用于处理尾数明文数据中。

第5~8密码化单元105e~105h具有与实施例2同样的功能。在此由第4中间信息组生成各自对应的第5~7中间信息组和第1~3密码文信息组。

尾数数据处理单元106由信息组分割单元101接收尾数明文数据,根据第4密码化单元105d生成的密码处理信息组,由尾数明文数据生成与尾数明文数据位数相同的尾数密码数据,它包含数据匹配单元106a和尾数数据组合单元106b。

数据匹配单元106a由第4密码化单元105d生成的密码处理信息组生成与尾数明文数据同样位数的尾数密码处理数据。在此因尾数明文数据为8位,所以生成由第4密码化单元105d生成的密码处理信息组的例如高8位构成的尾数密码处理数据。

尾数数据组合单元106b将尾数密码处理数据组合到尾数明文数据。这里,对8位的尾数密码处理数据与8位的尾数明文数据进行各对应位的“异或”运算,生成8位的尾数密码文数据。

尾数数据处理单元106也可以具有与实施例2同样的功能。

图21表示本发明实施例4中图2所示译码装置20的详细构成。

与实施例2中图13所示数据译码装置20共同的结构部分加以同一标号,具有同样功能的构成部分的说明省略。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、部分关键码生成单元204、第1~4译码单元205a~205d、第1~4密码化单元205i~205l、尾数数据处理单元206、信息组结合单元207和信息组组合单元208构成。

第1密码化单元205i根据第1部分关键码由信息组存贮单元202中存贮的链结信息组生成第1中间信息组。

第2~4密码化单元205j~205l各自根据第2、4部分关键码由第1~3中间信息组生成第2中间信息组、第3中间信息组和密码处理信息组。

信息组组合单元208将第4密码化单元205l生成的密码处理信息组组合进第4译码单元205d生成的第4中间信息组,生成明文信息组。在此,当处理第1密码文信息组时,对由链结信息组的初始值Ⅳ生成的64位的第1密码处理信息组与由第1密码文信息组生成的64位的第4中间信息组进行各对应位的“异或”运算生成64位的第1明文信息组,而当处理第2~3密码文信息组时,对由在第1~2密码文信息组处理时所生成的链结信息组生成的64位的第2~3密码处理信息组与由第2~3密码文信息组生成的64位的各自的第4中间信息组进行各对应位的“异或”运算生成64位的第2~3明文信息组。

尾数数据处理单元206由信息组分割单元201接收尾数密码文数据,根据第4密码化单元205l生成的密码处理信息组,由尾数密码文数据生成与尾数密码文数据相同位数的尾数明文数据,它包含数据匹配单元206a和尾数数据组合单元206b。

数据匹配单元206a由第4密码化单元205l生成的密码处理信息组生成与尾数密码文数据同样位数的尾数密码处理数据。这里,因尾数密码文数据为8位,故生成由第4密码化单元205l生成的密码处理信息组的例如高8位构成的尾数密码处理数据。

尾数数据组合单元206b将尾数密码处理数据组合进尾数密码文数据。在此对8位的尾数密码处理数据与8位的尾数密码文数据进行各对应位的“异或”运算,生成8位的尾数明文数据。

尾数数据处理单元206也可以具有与实施例2同样的功能。

图22表示本发明实施例4的数据密码化装置10中的密码化处理流程。

与实施例2中图14所示数据密码化装置10的操作共同的步骤加以同一标号,省略其说明。

(1)~(3)与实施例2相同(步骤S101、S102、S103:第1次)。

(4)第1密码化单元105a根据第1部分关键码由信息组存贮单元102中存贮的链结信息组生成第1中间信息组(步骤S701)。在此由链结信息组初始值Ⅳ生成第1中间信息组(步骤S701:第1次)。

(5)第2~4密码化单元105b~10Sd各自根据第2~4部分关键码由第1~3中间信息组生成第2、第3中间信息组和密码处理信息组(步骤S702)。这里,由对应于链结信息组的初始值Ⅳ的第1~3中间信息组生成第2、第3中间信息组和第1密码处理信息组(步骤S702:第1次)。

(6)信息组组合单元108将密码处理信息组组合到明文信息组,生成第4中间信息组(步骤S703)。在此对64位的第1密码处理信息组与64位的第1明文信息组进行各对应位的“异或”运算,生成64位的第4中间信息组(步骤S703:第1次)。

(7)~(13)与实施例2相同(步骤S107~S110:第1次,步骤S101、S102、S301:第2次)。

(14)在步骤S701,这里由第1明文信息组处理时生成的64位的链接信息组生成第1中间信息组(步骤S701:第2次)。

(15)在步骤S702,这里由第1明文信息组处理时生成的链结信息组所对应的第1~3中间信息组生成第2、第3中间信息组和第2密码处理信息组(步骤S702:第2次)。

(16)在步骤S703,这里对64位的第2密码处理信息组与64位的第2明文信息组进行各对应位的“异或”运算,生成64位的第4中间信息组(步骤S703:第2次)。

(17)~(23)与实施例2相同(步骤S107~S110:第2次,步骤S101、S102、S301:第3次)。

(24)在步骤S701,这里由第2明文信息组处理时生成的64位的链结信息组生成第1中间信息组(步骤S701:第3次)。

(25)在步骤S702,这里由对应于第2明文信息组处理时所生产的链结信息组的第1~3中间信息组生成第2、第3中间信息组和第3密码处理信息组(步骤S702:第3次)。

(26)在步骤S703,这里对64位的第3密码处理信息组与64位的第3明文信息组进行各对应位的“异或”运算,生成64位的第4中间信息组(步骤S703:第3次)。

(27)~(34)与实施例2相同(步骤S107~S110:第3次,步骤S101:第4次,步骤S111~S113)。

图23表示本发明实施例4的数据译码装置20中的密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

与实施例2中图15所示数据译码装置20的操作共同的步骤加以同一标号,省略其说明。

(1)~(5)与实施例2相同(步骤S201、S202、S401、S205、S206:第1次)。

(6)第1密码化单元205i根据第1部分关键码由信息组存贮单元202中存贮的链结信息组生成第1中间信息组(步骤S801)。这里由链结信息组的初始值Ⅳ生成第1中间信息组(步骤S801:第1次)。

(7)第2~4密码化单元205j~2051各自根据第2~4部分关键码中第1~3中间信息组生成第2、第3中间信息组和密码处理信息组(步骤S802)。在此,由对应于链结信息组的初始值Ⅳ的第1~3中间信息组生成第2、第3中间信息组和第1密码处理信息组(步骤S802:第1次)。

(8)信息组组合单元208将密码处理信息组组合到第4中间信息组,生成明文信息组(步骤S803)。在此对64位的第1密码处理信息组与对应于第1密码文信息组的64位的第4中间信息组进行各对应位的“异或”运算,生成64位的第1明文信息组(步骤S803:第1次)。

(9)~(15)与实施例2相同(步骤S207、S210:第1次,步骤S201、S202、S401、S205、S206:第2次)。

(16)在步骤S801,这里由第1密码文信息组处理时生成的64位的链结信息组生成第1中间信息组(步骤S801:第2次)。

(17)在步骤S802,这里由对应于第1密码文信息组处理时生成的链接信息组的第1~3中间信息组生成第2、第3中间信息组和第二密码处理信息组(步骤S802:第2次)。

(18)在步骤S803,这里对64位的第2密码处理信息组与对应于第2密码文信息组的64位的第4中间信息组进行各对应位的“异或”运算,生成64位的第2明文信息组(步骤S803:第2次)。

(19)~(25)与实施例2相同(步骤S207、S210:第2次,步骤S201、S202、S401、S205、S206:第3次)。

(26)在步骤S801,这里由第2密码文信息组处理时生成的64位的链接信息组生成第1中间信息组(步骤8801:第3次)。

(27)在步骤S802,这里由对应于第2密码文信息组处理时生成的链结信息组的第1~3中间信息组生成第2、第3中间信息组和第3密码处理信息组(步骤S802:第3次)。

(28)在步骤S803,这里对64位的第3密码处理信息组与对应于第3密码文信息组的64位的第4中间信息组进行各对应位的“异或”运算生成64位的第3明文信息组(步骤S803:第3次)。

(29)~(34)与实施例2同样(步骤S207、S210:第3次,步骤S201:第4次,步骤S211~S213)。

实施例4的密码处理装置将在对前面信息组执行密码处理过程中生成的中间信息组作为链结信息组存贮,在后面的密码处理时执行密码处理组合进明文信息组和密码处理信息组,每次执行密码处理更新该链结数据。<实施例5>

本发明实施例5仅在不是以组合后或组合前的信息组作为新的链结信息组、而是将对链结信息组执行密码处理后的信息组作为新的链结信息组加以存贮这一点上与实施例4不同。

密码通信系统的构成与实施例1相同,说明省略。

图24表示本发明实施例5中图2所示数据密码化装置10的详细结构。

与实施例2中图12所示数据密码化装置10共同的构成部分加以同一标号,具有相同功能的构成部分的说明省略。

此数据密码化装置10内信息组分割单元101、信息组存贮单元102、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106、信息组结合单元107和信息组组合单元108构成。

第1密码化单元105a不是由组合明文信息组、而是由信息组存贮单元102中存贮的链结信息组生成第1中间信息组。

第1~4密码化单元105a~105d具有与实施例2同样的功能。在此由链结信息组生成各自对应的第1~4中间信息组。

信息组组合单元108将第4密码化单元105d生成的第4中间信息组组合进明文信息组,生成组合明文信息组。这里,在处理第1明文信息组时对由链结信息组的初始值Ⅳ生成的64位的第4中间信息组与64位的第1明文信息组进行各对应位的“异或”运算,而在处理第2~3明文信息组时对第1~2明文信息组处理时生成的各自对应的64位的第4中间信息组与64位的第2~3明文信息组进行各对应位的“异或”运算。

第5密码化单元105e不是由第4中间信息组、而是由信息组组合单元108生成的组合明文信息组生成第5中间信息组。

第5~8密码化单元105e~105h具有与实施例2同样的功能。在此,由组合明文信息组生成各自对应的第5~7中间信息组和第1~3密码文信息组。

尾数数据处理单元106具有与实施例4同样的功能。

尾数数据处理单元106也可以与实施例2具有同样的功能。

图25表示本发明实施例5中图2所示数据译码装置20的详细结构。

与实施例2中图13所示数据译码装置20共同的构成部分加以相同标号,具有同一功能的构成部分的说明省略。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、部分关键码生成单元204、第1~4译码单元205a~205d、第1~4密码化单元205i~205l、尾数数据处理单元206、信息组结合单元207和信息组组合单元208构成。

第4译码单元205d根据第5部分关键码由第5中间信息组生成密码处理信息组。在此,由各自对应于第1~3密码文信息组的第5中间信息组生成第1~3密码处理信息组。第1~4译码单元205a~205d进行的变换各自为数据密码化装置10的第4~1密码化单元105d~105a进行的变换的逆变换。

第1密码化单元205i根据第1部分关键码由信息组存贮单元202中存贮的链结信息组生成第1中间信息组。

第2~4密码化单元205j~205l各自根据第2~4部分关键码由第1~3中间信息组生成第2~4中间信息组。

信息组存贮单元202具有信息组更新功能,每次第4密码化单元2051生成第4中间信息组时,将此第4中间信息组作为新链结信息组更新存贮中的链结信息组,用于处理下一信息组中。这里的操作与实施例1相同。

第1~4密码化单元205i~205l各自具有与数据密码化装置10的第1~4密码化单元105a~105d同一的功能,其操作也完全相同。在此,由各链结信息组各自生成对应的第1~4中间信息组。

信息组组合单元208将第4密码化单元205l生成的第4中间信息组组合进第4译码单元205d生成的密码处理信息组,生成明文信息组。这里,在处理第1密码文信息组时,对由链结信息组的初始值Ⅳ生成的64位的第4中间信息组与由第1密码文信息组生成的64位的密码处理信息组进行各对应位的“异或”运算,生成64位的第1明文信息组,而在处理第2~3密码文信息组时对由第1~2密码文信息组处理时生成的链结信息组生成的64位的各自的第4中间信息组与由第2~3密码文信息组生成的64位的第2~3密码处理信息组进行各对应位的“异或”运算,生成64位的第2~3明文信息组。

尾数数据处理单元206具有与实施例4的同一的功能。

尾数数据处理单元206也可以具有与实施例2的同样功能。

图26表示本发明实施例5的数据密码化装置10中的密码化处理流程。

与实施例2中的图14所示数据密码化装置10的操作共同的步骤加以同一标号,其说明省略。

(1)~(3)与实施例2相同(步骤S101、S102、S301:第1次)。

(4)第1密码化单元105a根据第1部分关键码由信息组存贮单元102中存贮的链结信息组生成第1中间信息组(步骤S901)。在此,由链结信息组的初始值Ⅳ生成第1中间信息组(步骤S901:第一次)。

(5)~(6)与实施例2的(6)~(7)相同(步骤S106、S107:第一次)。

(7)信息组组合单元108将第4中间信息组组合进明文信息组,生成组合明文信息组(步骤S902)。这里,对与链结信息组的初始值Ⅳ相对应的64位的第4中间信息组与64位的第1明文信息组进行各对应位的“异或”运算生成64位的第1组合明文信息组(步骤S902:第1次)。

(8)第5密码化单元105e根据第5部分关键码由组合明文信息组生成第5中间信息组,第6~7密码化单元105f~105g各自根据第6~7部分关键码由第5~6中间信息组生成第6~7中间信息组(步骤S903)。这里由第1组合明文信息组生成第5中间信息组,由5~6中间信息组生成第6~7中间信息组(步骤S903:第1次)。

(9)~(13)与实施例2同样(步骤S109、S110:第1次,步骤S101、S102、S301:第2次)。

(14)在步骤S901,这里由第1明文信息组处理时生成的64位的链结信息组生成第1中间信息组(步骤S901:第2次)。

(15)~(16)与实施例2的(16)~(17)同样(步骤S106、S107:第2次)。

(17)在步骤S902,这里对与第1明文信息组处理时生成的链结信息组相对应的64位的第4中间信息组与64位的第2明文信息组进行各对应位的“异或”运算生成64位的第2组合明文信息组(步骤S902:第2次)。

(18)在步骤S903,这里由第2组合明文信息组生成第5中间信息组,由5~6中间信息组生成第6~7中间信息组(步骤S903:第2次)。

(19)~(23)与实施例2相同(步骤S109、S110:第2次,步骤S101、S102、S301:第3次)。

(24)步骤S901中,这里由第2明文信息组处理时生成的64位的链结信息组生成第1中间信息组(步骤S901:第3次)。

(25)~(26)与实施例2的(26)~(27)相同(步骤S106、S107:第3次)。

(27)在步骤S902,这里对与第2明文信息组处理时所生成的链结信息组相对应的64位的第4中间信息组与64位的第3明文信息组进行各对应位的“异或”运算生成64位的第3组合明文信息组(步骤S902:第3次)。

(28)在步骤S903,在此由第3组合明文信息组生成第5中间信息组,由5~6中间信息组生成第6~7中间信息组(步骤S903:第3次)。

(29)~(34)与实施例2相同(步骤S109~S110:第3次,步骤S101:第4次,步骤S111~S113)。

图27表示本发明实施例5的数据译码装置20中的密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

与实施例2中图15所示数据译码装置20的操作共同的步骤加以同一标号,其说明省略。

(1)~(4)与实施例2同样(步骤S201、S202、S401、S205:第1次)。

(5)第2~4译码单元205b~205d分别根据第7~5部分关键码由第7~5中间信息组生成第6、第5中间信息组和密码处理信息组(步骤S1001)。在此,由对应于第1密码文信息组的第7~5中间信息组生成第6、第5中间信息组和第1密码处理信息组(步骤S1001:第1次)。

(6)第1密码化单元20ri根据第1部分关键码由信息组存贮单元202中存贮的链结信息组生成第1中间信息组(步骤S1002)。在此,由链结信息组的初始值Ⅳ生成第1中间信息组(步骤S1002:第1次)。

(7)第2~4密码化单元205j~205l各自根据第2~4部分关键码由第1~3中间信息组生成第2~4中间信息组(步骤S1003)。在此由对应于链结信息组的初始值Ⅳ的第1~3中间信息组生成第2~4中间信息组(步骤S1003:第1次)。

(8)信息组组合单元208将第4中间信息组组合到密码处理信息组生成明文信息组(步骤S1004)。在此,对与第1密码文信息组相对应的64位的第4中间信息组与64位的第1密码处理信息组进行各对应位的“异或”运算生成64位的第1明文信息组(步骤S1004:第1次)。

(9)~(14)与实施例2相同(步骤S207、S210:第1次,步骤S201、S202、S401、S205:第2次)。

(15)在步骤S1001,这里由对应于第2密码文信息组的第7~5中间信息组生成第6、第5中间信息组和第2密码处理信息组(步骤S1001:第2次)。

(16)在步骤S1002,这里由第1密码文信息组处理时的生成的64位的链结信息组生成第1中间信息组(步骤S1002:第2次)。

(17)在步骤S1003,这里由对应于第1密码文信息组处理时所生成的链结信息组的第1~3中间信息组生成第2~4中间信息组(步骤S1003:第2次)。

(18)在步骤S1004:这里对与第2密码文信息组相对应的64位的第4中间信息组与64位的第2密码处理信息组进行各对应位的”异或“运算生成64位的第2明文信息组(步骤S1004:第2次)。

(19)~(24)与实施例2相同(步骤S207、S210:第2次,步骤S201、S202、S401、S205:第3次)。

(25)步骤S1001中,这里由对应于第3密码文信息组的第7~5中间信息组生成第6、第5中间信息组和第3密码处理信息组(步骤S1001:第3次)。

(26)步骤S1002中,这里由第2密码文信息组处理时所生成的64位链结信息组生成第1中间信息组(步骤S1002:第3次)。

(27)步骤S1003中,这里由对应于第2密码文信息组处理时生成的链结信息组的第1~3中间信息组生成第2~4中间信息组(步骤S1003:第3次)。

(28)步骤S1004中,在此对与第3密码文信息组相对应的64位的第4中间信息组与64位的第3密码处理信息组进行各对应位的“异或”运算,生成64位的第3明文信息组(步骤S1004:第3次)。

(29)~(24)与实施例2同样(步骤S207、S210:第3次,步骤S201:第4次,步骤S211~S213)。

实施例5的密码处理装置将对前面信息组进行密码处理过程中生成的中间信息组作为链结信息组存贮,在后面的密码处理时执行密码处理组合进明文信息组和密码处理信息组,每次执行密码处理时更新该链结信息组。

本发明的实施例6为执行由关键数据指定的密码处理、由被作密码处理数据生成输出数据的密码处理装置,以信息组为单位在每次执行密码处理时将输出信息组、被作密码处理信息组和中间信息组等作为链结信息组加以存贮,在进行下一信息组的密码处理时对存贮中的链结信息组进行信息组变换组合到关键数据。

密码通信系统的结构因与实施例1相同,故说明省略。

图28表示本发明实施例6中图2所示数据密码化装置10的详细构成。

与实施例1中图3所示数据密码化装置10共同的结构部分加以同一标号,具有同样功能的构成部分说明省略。

此数据密码化装置10由信息组分割单元101、信息组存贮单元102、关键数据组合单元103、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106、信息组结合单元107和信息组变换单元109构成。

信息组存贮单元102具有信息组更新功能,每次第8密码化单元105h生成密码文信息组时,将此密码文信息组作为新链结信息组更新存贮着的链结信息组,用于处理下一信息组。这里,予先存贮64位的初始值Ⅳ,将此初始值Ⅳ用于处理第1明文信息组,将此处理时所生成的第1密码文信息组更新为新链结信息组。再将第1明文信息组处理时更新的链结信息组用于第2明文信息组的处理,将此处理时所生成的第2密码文信息组更新为新链结数据。然后第2明文信息组处理时更新的链结信息组在处理第3明文信息组时应用,将此处理中生成的第3密码文信息组更新为新的链结信息组。最后,第3明文信息组处理时更新的链结信息组在处理尾数明文数据时加以利用。

信息组变换单元109对信息组存贮单元102中存贮的链结信息组执行予先确定的规定变换生成变换信息组。这里,信息组变换单元109执行的规定变换,例如是位置换和位变换等。这种所谓的位置换是与实施例1的第1~8密码化单元105a~105h中说明的转置P同样的以位为单位的置换,而所谓的位变换则是与特定数据进行“异或”运算等的固定位单位的运算。这里,在处理第1明文信息组时,由64位的链结信息组的初始值Ⅳ生成64位的第1变换信息组,而在处理第2~3明文信息组时则由第1~2明文信息组处理时各自生成的64位的链结信息组生成64位的第2~3变换信息组。

关键数据组合单元103将信息组变换单元109生成的的变换信息组组合到关键数据生成组合关键数据。在此,予先获取所设定的64位的关键数据,在处理第1明文信息组时对64位的第1变换信息组与64位的关键数据进行各对应位的“异或”运算,而在处理第2~3明文信息组时对64位的第2~3变换信息组与64位的关键数据进行各对应位的“异或”运算。

尾数数据处理单元106由信息组分割单元101接收尾数明文数据,根据信息组变换单元109生成的变换信息组,由尾数明文数据生成与尾数明文数据位数相同的尾数密码文数据,它包含数据匹配单元106a和尾数数据组合单元106b。

数据匹配单元106a由信息组变换单元109生成的变换信息组生成与尾数明文数据相同位数的尾数变换数据。在此,因尾数明文数据为8位,所以生成由信息组变换单元109生成的变换信息组的例如高8位构成的尾数变换数据。

尾数数据组合单元106b将尾数变换数据组合到尾数明文数据。在此对8位的尾数变换数据与8位的尾数明文数据进行各对应位的“异或”运算生成8位的尾数密码文数据。

尾数数据处理单元106也可以具有与实施例1同样功能。

图29表示本发明实施例6中图2所示数据译码装置20的详细构成。

与实施例1中图8所示译码装置20共同的的构成部分加以同一标号,具有同样功能的结构部分的说明省略。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、关键数据组合单元203、部分关键码生成单元204、第1~8译码单元205a~205h、尾数数据处理单元206、信息组结合单元207和信息组变换单元209构成。

信息组存贮单元202具有信息组更新功能,每次信息组分割单元201生成密码文信息组时,即将此密码文信息组作为新链结信息组更新存贮中链结信息组,用于处理下一信息组。在此,予先存贮64位的初始值Ⅳ,此初始值Ⅳ被用于处理第1密码文信息组,将第1密码文信息组作为新链结信息组存贮。再将第一密码文信息组处理时被更新的链结信息组用于处理第2密码文信息组,将第2密码文信息组作为新的链结信息组存贮。然后,第2密码文信息组处理时存贮的链结信息组被用于处理第3密码文信息组,将第3密码文信息组作为新链结信息组存贮。最后,第3密码文信息组处理时所存贮的链结信息组在处理尾数密码文数据时应用。

信息组变换单元209对信息组存贮单元202中存贮的链结信息组进行予先确定的规定变换生成变换信息组。这里,信息组变换单元209执行的规定变换与数据译码装置10的信息组变换单元109执行的规定变换相同,例如位置换和位变换等。在此,当处理第1密码文信息组时由64位的链结信息组的初始值Ⅳ生成64位的第1变换信息组,而当处理第2~3密码文信息组时则由第1~2密码文信息组处理时分别生成的64位的链结信息组生成64位的第2~3变换信息组。

关键数据组合单元203将信息组变换单元209生成的变换信息组组合到关键数据生成组合关键数据。这里,获取予先设定的64位的关键数据,在处理第1密码文信息组时对64位的第1变换信息组与64位的关键数据进行各对应位的“异或”运算,而在处理第2~3密码文信息组时对64位的第2~3变换信息组与64位的关键数据进行各对应位的“异或”运算。

尾数数据处理单元206由信息组分割单元201接收尾数密码文数据,根据信息组变换单元109生成的变换信息组由尾数密码文数据生成与尾数密码文数据相同位数的尾数明文数据,它含有数据匹配单元206a和尾数数据组合单元206b。

数据匹配单元206a由信息组变换单元109生成的变换信息组,生成与尾数密码文数据相同位数的尾数变换数据。这里,尾数密码文数据为8位,故生成由信息组变换单元109生成的变换信息组的例如高8位构成的尾数变换数据。

尾数数据组合单元206b将尾数变换数据组合到尾数密码文数据。在此,对8位的尾数变换数据与8位的尾数密码文数据进行各对应位的“异或”运算生成8位的尾数明文数据。

尾数数据处理单元206也可以具有与实施例1同样的功能。

图30表示本发明实施例6的数据密码文装置10中的密码化处理流程。

与实施例1中图10所示数据密码化装置10的操作共同的步骤加以同一标号,其说明省略。

(1)~(2)与实施例1相同(步骤S101、S102:第1次)。

(3)信息组变换单元109对信息组存贮单元102中存贮的链结信息组进行予先确定的规定变换生成变换信息组,关键数据组合单元103将该变换信息组组合到关键数据生成组合关键数据(步骤S1101)。在此,由64位的链结信息组的初始值Ⅳ生成64位的第1变换信息组,获取予设的64位的关键数据,对64位的第1变换信息组与64位的关键数据进行各对应位的“异或”运算(步骤S1101:第1次)。

(4)~(8)与实施例1的(4)~(6)、(8)、(9)相同(步骤S104~S106、S108、S109:第1次)。

(9)信息组存贮单元102将密码文信息组作为新的链结信息组更新存贮中的链结信息组(步骤S1102)。在此,更新为第1密码文信息组(步骤S1102:第1次)。

(10)~(12)与实施例1相同(步骤S110:第1次,步骤S101、S102:第2次)。

(13)在步骤S1101,这里,由第1明文信息组处理时所生成的64位的链结信息组生成64位的第二变换信息组,对此64位的第2变换信息组与64位的关键数据进行各对应位的“异或”运算(步骤S1101:第2次)。

(14)~(18)与实施例1的(14)~(16)、(18)、(19)相同(步骤S104~S106、S108、S109:第2次)。

(19)步骤S1102中,这里更新为第2密码文信息组(步骤S1102:第2次)。

(20)~(22)与实施例1相同(步骤S110:第2次,步骤S101、S102:第3次)。

(23)步骤S1101中,这里由第2明文信息组处理时所生成的64位的链结信息组生成64位的第3变换信息组,对此64位的第3变换信息组与64位的关键数据进行各对应位的“异或”运算(步骤S1101:第3次)。

(24)~(28)与实施例1的(24)~(26)、(28)、(29)相同(步骤S104~S106、S108、S109:第3次)。

(29)在步骤S1102,这里更新为第3密码文信息组(步骤S1102:第3次)。

(30)~(34)与实施例1相同(步骤S110:第3次,S101:第4次,S111~S113)。

图31表示本发明实施例6的数据译码装置20中的密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

与实施例1中图11所示数据译码装置20的操作共同的步骤加以同一标号,其说明省略。

(1)~(2)与实施例1相同(步骤S201、S202:第1次)。

(3)信息组变换单元209对信息组存贮单元202中存贮的链结信息组进行予先确定的规定变换生成变换信息组,关键数据组合单元203将该变换信息组组合到关键数据生成组合关键数据(步骤S1201)。在此,由64位的链结信息组的初始值Ⅳ生成64位的第1变换信息组,获取予设的64位的关键数据,对此64位的第1变换信息组与64位的关键数据进行各对应位的“异或”运算(步骤S1201:第1次)。

(4)~(8)与实施例1的(4)~(6)、(8)、(9)相同(步骤S204~S206、S208、S209:第1次)。

(9)信息组存贮单元202将密码文信息组作为新链结信息组更新存贮中的链结信息组(步骤1202)。在此更新为第1密码文信息组(步骤1202:第1次)。

(10)~(12)与实施例1相同(步骤S210:第1次,S201、S202:第2次)。

(13)在步骤S1201,这里由第1明文信息组处理时生成的64位的链结信息组生成64位的第2变换信息组,对此64位的第2变换信息组与64位的关键数据进行各对应位的“异或”运算(步骤S1201:第2次)。

(14)~(18)与实施例1的(14)~(16)、(18)、(19)相同(步骤S204~S206、S208、S209:第2次)。

(19)在步骤S1202,这里更新为第2密码文信息组(步骤S1202:第2次)。

(20)~(22)与实施例1同样(步骤S210,第2次,S201、S202:第3次)。

(23)在步骤1201,这里由第22明文信息组处理时所生成的64位的链结信息组生成64位的第3变换信息组,对此64位的第3变换信息组与64位的关键数据进行各对应位的“异或”运算(步骤S1201:第3次)。

(24)~(28)与实施例1的(24)~(26)、(28)、(29)相同(步骤S204~S206、S209、S209:第3次)。

(29)步骤S1202中,在此更新为第3密码文信息组(步骤S1202:第3次)。

(30)~(34)与实施例1同样(步骤S210:第3次,S201:第4次,S211~S213)。

实施例6的密码处理装置将前面的密码文信息组作为链结信息组存贮,在后面的密码处理时执行信息组变换组合到关键数据,每次进行密码处理时更新该链结信息组。

上述实施例6虽然将密码文信息组作为新链结信息组,但也可以将明文信息组或任何的中间信息组作为新的链结信息组。<实施例7>

本发明实施例7与实施例6不同之处是,不是将对链结信息组进行信息组变换的变换信息组合到关键数据,而是组合到被作密码处理数据或对被作密码处理数据执行密码处理后的数据。

密码通信系统的构成与实施例1同样,其说明省略。

图32表示本发明实施例7中图2所示数据密码化装置10的详细结构。

与实施例2中图12所示数据密码化装置10共同的构成部分加以同一标号,具有同样功能的结构部分的说明省略。

此数据密码化装置10由信息组分割单元101、信息组存贮单元102、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106、信息组结合单元107、信息组组合单元108和信息组变换单元109构成。

信息组存贮单元102具有信息组更新功能,每次第8密码化单元105h生成密码文信息组时,将此密码文信息组作为新的链结信息组更新存贮中的链结信息组,用于处理下一信息组。这里,予先存贮64位的初始值Ⅳ,此初始值Ⅳ用于处理第1明文信息组,将此处理时所生成的第1密码文信息组更新为新连结信息组。此第1明文信息组处理时更新的链结信息组再在处理第2明文信息组时加以利用,将此处理时生成的第2密码文信息组更新为新的链结信息组。然后,第2明文信息组处理时更新的链结信息组在处理第3明文信息组时应用,将此处理时所生成的第3密码文信息组更新为新的链结信息组。最后,在第3明文信息组处理时更新的链结信息组被用于尾数明文数据处理。

信息组变换单元109对信息组存贮单元102中存贮的链结信息组进行予先确定的规定变换生成变换信息组。这里,信息组变换单元109执行的规定变换例如为位置换和位变换等。此所谓位置换为与实施例1的第1~8密码文单元105a~105h中说明的转置P同样的以位为单位的置换,所谓位变换是与特定的数据进行“异或”运算等的固定的位单位的运算。这里,在处理第1明文信息组时,由64位的链结信息组的初始值Ⅳ生成64位的第1变换信息组,而在处理第2~3明文信息组时,由第1~2明文信息组处理时分别生成的64位的链结信息组生成64位的第2~3变换信息组。

信息组组合单元108将信息组变换单元109生成的变换信息组组合到明文信息组生成组合明文信息组。这里,在处理第1明文信息组时,对64位的第1变换信息组与64位的第1明文信息组进行各对应位的“异或”运算生成64位的第1组合明文信息组,而在处理第2~3明文信息组时,对64位的第2~3变换信息组与64位的第2~3明文信息组进行各对应位的“异或”运算生成64位的第2~3组合明文信息组。

图33表示本发明实施例7中图2所示数据译码装置20的详细结构。

与实施例2中图13所示数据译码装置20共同的构成部分加以同一标号,具有同样功能的构成部分的说明省略。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、关键数据组合单元203、部分关键码生成单元204、第1~8译码单元205a~205h、尾数数据处理单元206、信息组结合单元207和信息组变换单元209构成。

信息组存贮单元202具有信息组更新功能,每次信息组分割单元201生成密码文信息组时,将此密码文信息组作为新链结信息组更新存贮中的链结信息组,在处理下一信息组时应用。这里,予先存贮64位的初始值Ⅳ,此初始值Ⅳ在处理第1密码文信息组时应用,将此第1密码文信息组作为新链结信息组存贮。接着,第1密码文信息组处理时所更新的链结信息组被用于处理第2密码文信息组,并将第2密码文信息组作为新链结信息组存贮。然后,第2密码文信息组处理时存贮的链结信息组用于处理第3密码文信息组,将第3密码文信息组作为新链结信息组存贮。最后,第3密码文信息组处理时存贮的链结信息组用于尾数密码文数据的处理。

信息组变换单元209对信息组存贮单元202中存贮的链结信息组进行予先确定的规定变换,生成变换信息组。这里,信息组变换单元209执行的规定变换与数据密码化装置10的信息组变换单元109所执行的规定变换相同,例如位置换和位变换等。这里,在处理第1密码文信息组时由64位的链结信息组的初始值Ⅳ生成64位的第1变换信息组,而在处理第2~3密码文信息组时由第1~2密码文信息组处理时分别生成的64位的链结信息组生成64位的第2~3变换信息组。

信息组组合单元208将信息组变换单元209生成的变换信息组组合到密码处理信息组,生成明文信息组。这里,在处理第1密码文信息组时对64位的第1变换信息组与64位的第1密码处理信息组进行各对应位的“异或”运算生成64位的第1明文信息组,而在处理第2~3密码文信息组时对64位的第2~3变换信息组与64位的第2~3密码处理信息组进行各对应位的“异或”运算生成64位的第2~3明文信息组。

图34表示本发明实施例7的数据密码化装置10的密码化处理流程。

与实施例2中图14所示数据密码化装置10的操作共同的步骤加以同一标号,其说明省略。

(1)~(3)与实施例2相同(步骤S101、S102、S301:第1次)。

(4)信息组变换单元109对信息组存贮单元102中存贮的链结信息组进行予先确定的规定变换生成变换信息组,信息组组合单元108将该变换信息组组合到明文信息组生成组合明文信息组(步骤S1301)。这里,由64位的链结信息组的初始值Ⅳ生成64位的第1变换信息组,对此64位的第1变换信息组与64位的第1明文信息组进行各对应位的“异或”运算,生成64位的第1组合明文信息组(步骤S1301:第1次)。

(5)~(8)与实施例2相同(步骤S303、S106、S108、S109:第1次)。

(9)信息组存贮单元102将密码文信息组作为新链结信息组更新存贮中的链接信息组(步骤S1302)。这里,更新为第1密码文信息组(步骤S1302:第1次)。

(10)~(13)与实施例2相同(步骤S110:第1次,S101、S102、S301:第2次)。

(14)在步骤S1301,这里,由第1明文信息组处理时所生成的64位的链结信息组生成64位的第2变换信息组,对此64位的第2变换信息组与64位的第2明文信息组进行各对应位的“异或”运算,生成64位的第2组合明文信息组(步骤S1301:第2次)。

(15)~(18)与实施例2相同(步骤S303、S106、S108、S109:第2次)。

(19)在步骤S1302,这里更新为第2密码文信息组(步骤S1302:第2次)。

(20)~(23)与实施例2相同(步骤S110:第2次,S101、S102、S301:第3次)。

(24)步骤S1301,在此由第2明文信息组处理时所生成的64位的链结信息组生成64位的第3变换信息组,对此64位的第3变换信息组与64位的第3明文信息组进行各对应位的“异或”运算,生成64位的第3组合明文信息组(步骤S1301:第3次)。

(25)~(28)与实施例2同样(步骤S303、S106、S108、S109:第3次)。

(29)在步骤S1302,这里更新为第3密码文信息组(步骤S1302:第3次)。

(30)~(34)与实施例2同样(步骤S110:第3次,S101:第4次,S111~S113)。

图35表示本发明实施例7的数据译码装置20中的密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

与实施例2中图15所示数据译码装置20的操作共同的步骤加以同一标号,其说明省略。

(1)~(7)与实施例1相同(步骤S201~S202、S401、S205、S206、S208、S402:第1次)。

(8)信息组变换单元209对信息组存贮单元202中所存贮的链结信息组进行予先确定的规定变换生成变换信息组,信息组组合单元208将该变换信息组组合到密码处理信息组生成明文信息组(步骤S1401)。在此,由链结信息组的初始值Ⅳ生成64位的第1变换信息组,对此64位的第1变换信息组和64位的第1密码处理信息组进行各对应位的“异或”运算生成64位的第1明文信息组(步骤S1401:第1次)。

(9)信息组存贮单元202,将密码文信息组作为新链结信息组更新存贮中的链结信息组(步骤S1402:第1次)。

(10)~(17)与实施例1相同(步骤S210:第1次,S201、S202、S401、S205、S206、S208、S402:第2次)。

(18)在步骤S1401,这里,由第1明文信息组处理时所生成的64位的链结信息组生成64位的第2变换信息组,对此64位的第2变换信息组与64位的第2密码处理信息组进行各对应位的“异或”运算,生成64位的第2明文信息组(步骤S1401:第2次)。

(19)在步骤S1402,这里更新为第2密码文信息组(步骤S1402:第2次)。

(20)~(27)与实施例1相同(步骤S210:第2次,S201、S202、S401、S205、S206、S208、S402:第3次)。

(28)在步骤S1401,这里由第2明文信息处理时所生成的64位的链结信息组生成64位的第3变换信息组,对此64位的第3变换信息组与64位的第3密码处理信息组进行各对应位的“异或”运算,生成64位的第3明文信息组(步骤S1401:第3次)。

(29)在步骤S1402,这里更新为第3密码文信息组(步骤S1402:第3次)。

(30)~(34)与实施例1相同(步骤S210:第3次,S201:第4次,S211~S213)。

实施例7的密码处理装置,将前面的密码文信息组作为链结信息组存贮,在后面的密码处理时进行信息组变换组合进明文信息组和密码处理信息组,每次进行密码处理时更新该链结信息组。

在上述实施例7中虽是以密码文信息组作为新链结信息组,但也可将明文信息组或任何一个中间信息组作为新链结信息组。<实施例8>

本发明实施例8的数据密码化装置10,在第1密码化单元105a、信息组存贮单元102、信息组结合单元107和信息组组合单元108的各个输入上与实施例7不同,处理顺序替换。

本发明实施例8的数据译码装置20,仅信息组存贮单元的输入与数密码化装置10的不同这一点之外,均与数据密码化装置10相同。

密码通信系统的结构与实施例1相同,说明省略。

图36表示本发明实施例8中图2所示数据密码化装置10的详细结构。

与实施例7中图32所示数据密码化装置10共同的结构部分加以同一标号,具有相同功能的结构部分说明省略。

此数据密码化装置10的结构与实施例7相同。

第1密码化单元105a不是如实施例7那样由信息组组合单元108生成的组合明文信息组、而是由信息组变换单元109生成的变换信息组生成第1中间信息组。

第8密码化单元105h不是如实施例7那样的密码文信息组、而是生成密码处理信息组。

第1~8密码化单元105a~105h具有与实施例7同样的功能。这里,由第1~3变换信息组生成各自对应的第1~7中间信息组和第1~3密码处理信息组。

信息组存贮单元102具有信息组更新功能,每次信息组组合单元108生成密码文信息组时,将此密码文信息组作为新链结信息组更新存贮中的链结信息组,用于处理下一信息组。这里的操作与实施例7相同。

信息组组合单元108,不是如实施例7那样将信息组变换单元109生成的变换信息组、而是将第8密码化单元105h生成的密码处理信息组组合到明文信息组生成密码文信息组。在此,当处理第1明文信息组时对64位的第1密码处理信息组与64位的第1明文信息组进行各对应位的“异或”运算生成64位的第1密码文信息组,而当处理第2~3明文信息组时对64位的第2~3密码处理信息组与64位的第2~3明文信息组进行各对应位的“异或”运算生成64位的第2~3密码文信息组。

信息组结合单元107将信息组组合单元108生成的各密码文信息组和尾数数据处理单元106生成的尾数密码文数据相结合生成密码文数据。在此,将各64位的第1~3密码文信息组和8位的尾数密码文数据相结合生成200位的密码文数据。

图37表示本发明实施例8中图2所示数据译码装置20的详细构成。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、部分关键码生成单元204、第1~8密码化单元205i~205p、尾数数据处理单元206、信息组结合单元207、信息组组合单元208和信息组变换单元209构成。

信息组存贮单元202具有信息组更新功能,每次信息组分割单元201生成密码文信息组时,将此密码文信息组作为新链结信息组更新存贮中的链结信息组,用于下一信息组的处理。在此,予先存贮64位的初始值Ⅳ,此初始值Ⅳ被用于处理第1密码文信息组,将第1密码文信息组更新作为新的链结信息组。接着,第1密码文信息组处理时更新的链结信息组用于处理第2密码文信息组,并将第2密码文信息组更新为新的链结信息组。然后,第2密码文信息组处理时更新的链结信息组在处理第3密码文信息组时加以应用,将第3密码文信息组更新为新链结信息组。最后,将第3密码文信息组处理时更新的链结信息组用于处理尾数密码文数据。

与实施例8中图36所示数据密码化装置10同一名称的构成部分具有同样的功能,只有信息组存贮单元202的输入与数据密码化装置10的信息组存贮单元102的输入不同,除这一点外,均与数据密码化装置10相同。

图38表示本发明实施例8的数据密码化装置10中的密码化处理流程。

与实施例7中图34所示数据密码化装置10的操作共同的步骤加以同一标号,其说明省略。

(1)~(3)与实施例7相同(步骤S101、S102、S301:第1次)。

(4)信息组变换单元109对信息组存贮单元102中存贮的链结信息组进行予先确定的规定变换生成变换信息组,第1密码化单元105a根据第1部分关键码由该变换信息组生成第1中间信息组(步骤S1501)。这里,由64位的链结信息组的初始值Ⅳ生成64位的第1变换信息组,由此64位的第1变换信息组生成第1中间信息组(步骤S1501:第1次)。

(5)~(6)与实施例7的(6)~(7)相同(步骤S106、S108:第1次)。

(7)第8密码化单元105h根据第8部分关键码,由第7中间信息组生成密码处理信息组(步骤S1502)。在此,由对应于链结信息组的初始值Ⅳ的第7中间信息组生成第1密码处理信息组(步骤S1502:第1次)。

(8)信息组组合单元108将密码处理信息组组合到明文信息组生成密码文信息组(步骤S1503)。在此,对64位的第1密码处理信息组与64位的第1明文信息组进行各对应位的“异或”运算,生成64位的第1密码文信息组(步骤S1503:第1次)。

(9)~(13)与实施例7相同(步骤S1302、S110:第1次,步骤S101、S102、S301:第2次)。

(14)在步骤S1501,这里由第1明文信息组处理时生成的64位的链结信息组生成64位的第2变换信息组,由64位的第2变换信息组生成第1中间信息组(步骤S1501:第2次)。

(15)~(16)与实施例7的(16)~(17)相同(步骤S106、S108:第2次)。

(17)在步骤S1502,这里由对应于第1明文信息组处理时生成的链结信息组的第7中间信息组生成第2密码处理信息组(步骤S1502:第2次)。

(18)步骤S1503中,在此对64位的第2密码处理信息组与64位的第2明文信息组进行各对应位的“异或”运算,生成64位的第2密码文信息组(步骤S1503:第2次)。

(19)~(23)与实施例7相同(步骤S1302、S110:第2次,S101、S102、S301:第3次)。

(24)步骤S1501中,在此,由第2明文信息组处理时所生成的64位的链结信息组生成64位的第3变换信息组,由64位的第3变换信息组生成第1中间信息组(步骤S1501:第3次)。

(25)~(26)与实施例7的(26)~(27)相同(步骤S106、S108:第3次)。

(27)在步骤S1502,这里,由对应于第2明文信息组处理时所生成的链结信息组的第7中间信息组生成第3密码处理信息组(步骤S1502:第3次)。

(28)在步骤S1503,这里对64位的第3密码处理信息组与64位的第3明文信息组进行各对应位的“异或”运算,生成64位的第3密码文信息组(步骤S1503:第3次)。

(29)~(34)与实施例7相同(步骤S1302、S110:第3次,步骤S101:第4次,第S111~S113)。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

实施例8中数据译码装置20的操作,除信息组存贮单元的输入不同外均与实施例8中数据密码化装置10的操作相同,其说明省略。

实施例8的密码处理装置,将前面的密码文信息组作为链结信息组存贮,在后面的密码处理时执行信息、组变换和密码处理组合进明文信息组和密码文信息组,每次进行密码处理时更新该链结信息组。

上述实施例8中虽以密码文信息组作为新的链结信息组,但也可以将明文信息组或任一中间信息组作为新的链结信息组。

<实施例9>

本发明实施例9仅信息组存贮单元的输入与实施例8不同。

密码通信系统的构成与实施例1同样故省略其说明。

图39表示本发明实施例9中图2所示数据密码化装置10的详细结构。

与实施例8中图36所示数据密码化装置10共同的构成部分加以同一标号,具有同样功能的构成部分的说明省略。

此数据密码化装置10的结构与实施例8的结构相同。

信息组存贮单元102具有信息组更新功能,每次第8密码化单元105h生成密码处理信息组时将此密码处理信息组作为新链结信息组更新存贮中的链结信息组,用于下一信息组的处理。在此,予先存贮64位的初始值Ⅳ,此初始值Ⅳ用于处理第1明文信息组,将这一处理时所生成的第1密码处理信息更新为新的链结信息组。接着,第1明文信息组处理时更新的链结信息组在处理第2明文信息组时应用,将此处理时生成的第2密码处理信息组更新为新链结信息组。然后,第2明文信息组处理时更新的链结信息组用于处理第3明文信息组,而将此处理时所生成的第3密码处理信息组更新为新链结信息组。最后,第3明文信息组处理时更新的链结信息组用于处理尾数明文数据。

图40表示本发明实施例9中图2所示数据译码装置20的详细构成。

此数据译码装置20的构成与实施例8的构成同样,而且与实施例9中图39所示数据密码化装置10同一名称的构成部分具有相同功能,所以其说明省略。

本发明实施例9的数据密码化装置10,除信息组存贮单元102的输入不同外,均与实施例8的数据密码化装置10相同,故省略对其操作的说明。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

实施例9中的数据译码装置20的操作与实施例9中数据密码化装置10的操作同样,所以其说明省略。

实施例9的密码处理装置,将对前面信息组进行密码处理过程中所生成的密码处理信息组作为新的链结信息组存贮,在后面的密码处理时进行信息组变换和密码处理组合进明文信息组和密码文信息组,每次进行密码处理时更新该链结信息组。

<实施例10>

本发明实施例10为对实施例1,在每次处理1信息组时另外增加更新关键数据的功能。

密码通信系统的构成与实施例1相同,其说明省略。

图41表示本发明实施例10中图2所示数据密码化装置10的详细构成。

与实施例1中图3所示数据密码化装置10共同的构成部分加以同一标号,具有相同功能的结构部分的说明省略。

此数据密码化装置10由信息组分割单元101、信息组存贮单元102、关键数据组合单元103、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106、信息组结合单元107和关键数据存贮单元110构成。

图1所示的历来的密码化装置30与图41所示本发明实施例10中的数据密码化装置10的关系与实施例1相同,另外加有关键数据存贮单元110。

关键数据存贮单元110存贮关键数据,在处理最初的信息组时予先存贮关键数据的初始值。

关键数据组合单元103将信息组存贮单元102中存贮的链结信息组组合进关键数据存贮单元110中存贮的关键数据,生成组合关键数据。这里,在处理第1明文信息组时,对64位的链结信息组的初始值Ⅳ与64位的关键数据初始值进行各对应位的“异或”运算,在处理第2~3明文信息组时,对第1~2明文信息组处理时所生成的64位的链结信息组与第1~2明文信息组处理时所生成的64位的关键数据进行各对应位的“异或”运算。

关键数据存贮单元110有关键数据更新功能,每次关键数据组合单元103生成组合关键数据时,即将组合关键数据作为新的关键数据更新存贮中的关键数据,用于下一信息组处理。在这里,予先存贮64位的初始值,将此初始值用于处理第1明文信息组,将此处理时所生成的组合关键数据更新为新的关键数据。接着,第1明文信息组处理时更新的关键数据用于处理第2明文信息组,将此处理时所生成的组合关键数据更新为新的关键数据。然后,第2明文信息组处理时更新的关键数据在处理第3明文信息组时加以利用,将此处理时所生成的组合关键数据更新为新的关键数据。

图42表示本发明实施例10中图2所示数据译码装置20的详细构成。

与实施例1中图8所示数据译码装置20共同的构成部分加以同一标号,具有相同功能的构成部分的说明省略。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、关键数据组合单元203、部分关键码生成单元204、第1~8译码单元205a~205h、尾数数据处理单元206、信息组结合单元207和关键数据存贮单元210构成。

关键数据存贮单元210存贮关键数据。而在处理最初的信息组时予先存贮关键数据的初始值。

关键数据组合单元203将信息组存贮单元202中所存贮的链结信息组组合进关键数据存贮单元210中存贮的关键数据,生成组合关键数据。这里,在处理第1密码文信息组时,对64位的链结信息组的初始值Ⅳ与64位的关键数据初始值进行各对应位的“异或”运算生成第1组合关键数据,而在处理第2~3密码文信息组时,对第1~2密码文信息组处理时分别生成的64位的链结信息组与第1~2密码文信息组处理时分别生成的64位的关键数据进行各对应位的“异或”运算生成第2~3组合关键数据。

关键数据存贮单元210具有关键数据更新功能,每次关键数据组合单元203生成组合关键数据时,将组合关键数据作为新的关键数据更新存贮着的关键数据,用于下一信息组的处理。在此,予先存贮64位的初始值,将此初始值用于处理第1密码文信息组,将此处理时所生成的第1组合关键数据更新为新关键数据。接着,将第1密码文信息组处理时更新的关键数据用于处理第2密码文信息组,并将此处理时生成的第2组合关键数据更新为新关键数据。然后,第2密码文信息组处理时更新的关键数据在处理第3密码文信息组对应用,将此处理时所生成的第3组合关键数据更新为新关键数据。

图43表示本发明实施例10的数据密码化装置10中的密码化处理流程。

与实施例1中图10所示数据密码化装置10的操作共同的步骤加以同一标号,其说明省略。

这里,对实施例1的条件,还在关键数据存贮单元110中予先存贮关键数据的初始值。

(1)~(2)与实施例1同样(步骤S101、S102:第1次)。

(3)关键数据组合单元103将信息组存贮单元102中存贮的链结信息组组合到关键数据存贮单元110中存贮的关键数据生成组合关键数据,关键数据存贮单元110将此组合关键数据作为新关链数据更新自身存贮的关键数据(步骤S1601)。在此,对信息组存贮单元102中存贮的64位的初始值Ⅳ与关键数据存贮单元110中存贮的64位的关键数据的初始值进行各对应位的“异或”运算,生成第1组合关键数据传送给部分关键码生成单元104,将此第1组合关键数据作为新关键数据更新关键数据(步骤S1601:第1次)。

(4)~(12)与实施例1相同(步骤S104~S110:第1次,S101、S102:第2次)。

(13)在步骤S1601,这里对第1明文信息组处理时所生成的64位的链结信息组与第1明文信息组处理时生成的64位的关键数据进行各对应位的“异或”运算,生成第2组合关键数据传送到部分关键码生成单元104,将第2组合关键数据作为新关键数据更新关键数据(步骤S1601:第2次)。

(14)~(22)与实施例1相同(步骤S104~110:第2次,S101、S102:第3次)。

(23)在步骤S1601,这里,对第2明文信息组处理时所生成的64位的链结信息组与第2明文信息组处理时所生成的64位的关键数据进行各对应位的“异或”运算,生成第3组合链数据传送到部分关键码生成单元104,将此第3组合关键数据作为新关键数据更新关键数据(步骤S1601:第3次)。

(24)~(34)与实施例1相同(步骤S104~S110:第3次,步骤S101:第4次,S111~S113)。

图44表示本发明实施例10的数据译码装置20中的密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

与实施例1中图11所示数据译码装置20的操作共同的步骤加以同一标号,其说明省略。

(1)~(2)与实施例1相同(步骤S201、S202:第1次)。

(3)关键数据组合单元203将信息组存贮单元202中存贮的链结信息组组合到关键数据存贮单元210中存贮的关键数据生成组合关键数据,关键数据存贮单元210将此组合关键数据作为新的关键数据更新自身存贮的关键数据(步骤S1701)。在此,对信息组存贮单元202中存贮的64位的初始值Ⅳ与关键数据存贮单元210存贮的64位的关键数据的初始值进行各对应位的“异或”运算,生成第1组合关键数据传送到部分关键码生成单元204,将第1组合关键数据作为新关键数据更新关键数据(步骤S1701:第1次)。

(4)~(12)与实施例1相同(步骤S204S210:第1次,S201、S202:第2次)。

(13)在步骤S1701,这里,对第1密码文信息组处理时生成的64位的链结信息组与第1密码文信息组处理时生成的64位的关键数据进行各对应位的“异或”运算,生成第2组合关键数据传送到部分关键码生成单元204,将第二组合关键数据作为新关键数据更新关键数据(步骤S1701:第2次)。

(14)~(22)与实施例1相同(步骤S204~S210:第2次,S201、S202:第3次)。

(23)在步骤S1701,这里,对第2密码文信息组处理时生成的64位的链结信息组与第2密码文信息组处理时生成的64位的关键数据进行各对应位的“异或”运算,生成第3组合关键数据传送到部分关键码生成单元204,将第3组合关键数据作为新关键数据更新关键数据。<步骤S1703:第3次>。

(24)~(34)与实施例1相同,(步骤S204~S210:第3次,S201:第4次,S211~S213)。

实施例10的密码处理装置,将对前面信息组进行密码处理的过程中所生成的中间信息组和组合关键信息组作为链结信息组和关键信息组存贮,在后面的密码处理时将链结信息组组合到关键信息组,在每次执行密码处理时更新该链结信息组和关键信息组。

虽然是上述实施例10中,在实施例1的数据密码化装置10上增加关键数据存贮单元110,在实施例1的数据译码装置20上增加关键数据存贮单元210,但也可对其他实施例2~9同样地增加关键数据存贮单元110和关键数据存贮单元210。<实施例11>

本发明实施例11为对实施例1另外还增加根据存贮的链结信息组由输出信息组、被作密码处理信息组和中间信息组等中选取1个信息组的功能。

密码通信系统的构成与实施例1相同,其说明省略。

图45表示本发明实施例11中图2所示数据密码化装置10的详细构成。

与实施例1中的图3所示数据密码化10共同的构成部分加以同一标号,具有同一功能的构成部分的说明省略。

此数据密码化装置10由信息组分割单元101、信息组存贮单元102、关键数据组合单元103、部分关键码生成单元104、第1~8密码化单元105a~105h、尾数数据处理单元106、信息组结合单元107和信息组选择单元111构成。

图1所示的历来的密码化装置30与图45所示本发明实施例11中的数据密码化装置10的关系与实施例1同样,另外附加有信息组选择单元111。

信息组选择单元111根据信息组存贮单元102中存贮的链结信息组,由明文信息组、各中间信息组和密码文信息组中选择1个信息组,传送到信息组存贮单元102。具体说,例如,在信息组存贮单元102中存贮的链结信息组的低3位为“001”时选择第1中间信息组,同样地,在“010”~“111”的情况下选择第2中间信息组~第7中间信息组。而在链结信息组的低3位为“000”的情况下,当低位第4位为“0”时选择明文信息组,低位第4位为“1”时选择密码文信息组。

信息组存贮单元102将信息组选择单元111所选择的信息组作为新的链结信息组更新存贮中的链结信息组,在处理下一信息组时利用。这里,予先存贮64位的初始值Ⅳ,此初始值Ⅳ被用于处理第1明文信息组,将根据此初始值Ⅳ的低4位选择的信息组更新作为新的链结信息组。接着,第1明文信息组处理时更新的链结信息组在处理第2明文信息组时应用,将根据此链结信息组的低4位选择的信息组更新为新链结信息组。然后,第2明文信息组处理时更新的链结信息组被用于处理第3明文信息组,将根据此链结信息组的低4位选择的信息组更新为新的链结信息组。最后,第3明文信息组处理时更新的链结信息组被用于处理尾数明文数据。

图46表示本发明实施例11中图2所示数据译码装置20的详细构成。

与实施例1中图8所示数据译码装置20共同的构成部分加以同一标号,具有相同功能的构成部分的说明省略。

此数据译码装置20由信息组分割单元201、信息组存贮单元202、关键数据组合单元203、部分关键码生成单元204、第1~8译码单元205a~205h、尾数数据处理单元206、信息组结合单元207和信息组选择单元211构成。

信息组选择单元211根据信息组存贮单元202中存贮的链结信息组,由密码文信息组、各中间信息组和明文信息组中选择1个信息组,传送到信息组存贮单元202。具体地说,例如,在信息组存贮单元202中存贮的链结信息组的低3位的“001”时选择第1中间信息组,同样地,在“010”~“111”时选择第2中间信息组~第7中间信息组。而在链结信息组的低3位为“000”的情况下,低位第4位为“0”时选择明文信息组,低位第4位为“1”时选择密码文信息组。

信息组存贮单元202将信息组选择单元211选择的信息组作为新链结信息组更新存贮中的链结信息组,用于处理下一信息组。在此,予先存贮64位的初始值Ⅳ,此初始值Ⅳ用于处理第1密码文信息组,将根据此初始值Ⅳ的低4位选择的信息组更新为新链结信息组。接着,将第1密码文信息组处理时更新的链结信息组用于处理第2密码文信息组,将根据此链结信息组低4位选择的信息组更新为新链结信息组。然后,第2密码文信息组处理时更新的链结信息组再用于处理第3密码文信息组,将根据此链结信息组低4位选择的信息组更新为新链结信息组。最后,第3密码文信息组处理时更新的链结信息组用于尾数密码文数据的处理。

图47表示本发明实施例11的数据密码化装置10中的密码化处理流程。

与实施例1中图10所示数据密码文装置10的操作共同的步骤加以同一标号,其说明省略。

(1)~(8)与实施例1的(1)~(6)、(8)、(9)相同(步骤S101~S106、S108、S109:第1次)。

(9)信息组选择单元111根据信息组存贮单元102中存贮的链结信息组,由明文信息组、各中间信息组和密码文信息组中选择1个信息组,信息组存贮单元102将所选择的信息组作为新链结信息组更新存贮中的链结信息组(步骤S1801)。在此,例如,如假定信息组存贮单元102中存贮的链结信息组的初始值Ⅳ的低3位为“011”,即选择对应于第1明文信息组的第3中间信息组,将所选择的第3中间信息组作为新链结信息组更新链结信息组(步骤S1801:第1次)。

(10)~(18)与实施例1相同(步骤S110:第1次,S101~S106、S108、S109:第2次)。

(19)在步骤S1801,这里,例如,第1明文信息组处理时生成选择的链结信息组的低4位为“0000”,即选择第2明文信息组,将所选择的第2明文信息组作为新链结信息组更新链结信息组(步骤S1801:第2次)。

(20)~(28)与实施例1同样(步骤S110:第2次,S101~S106、S108、S109:第3次)。

(29)在步骤S1801中,这里例如第2明文信息组处理时生成选择的链结信息组的低4位为“1000”,即选择第3密码文信息组,将所选择的第3密码文信息组作为新链结信息组更新链结信息组(步骤S1801:第3次)。

(30)~(34)与实施例1相同(步骤S110:第3次,S101:第4次,S111~S113)。

图48表示本发明实施例11的数据译码装置20中的密码化处理流程。

数据译码装置20的操作为数据密码化装置10的操作的逆变换。

与实施例1中图11所示数据译码装置20的操作共同的步骤加以同一标号,其说明省略。

(1)~(8)与实施例的(1)~(6)、(8)、(9)相同(步骤S201~S206、S208、S209:第1次)。

(9)信息组选择单元211根据信息组存贮单元202中存贮的链结信息组,由密码文信息组、各中间信息组和明文信息组中选择一个信息组,信息组存贮单元202将所选择的信息组作为新的链结信息组更新存贮中的链结信息组(步骤S1901)。这里,例如,信息组存贮单元202中存贮的链结信息组的初始值Ⅳ的低3位为“011”,即选择对应于第1密码文信息组的第3中间信息组,将所选择的第3中间信息组作为新链结信息组更新链结信息组(步骤S1901:第1次)。

(10)~(18)与实施例1同样(步骤S210:第1次,S201~S206、S208、S209:第2次)。

(19)在步骤S1901,这里,例如,第1密码文信息组处理时生成选择的链结信息组的低4位为“0000”,即选择第2明文信息组,将所选择的第2明文信息组作为新链结信息组更新链结信息组(步骤S1901:第2次)。

(20)~(28)与实施例1相同(步骤S210:第2次,S201~S206、S208、S209:第3次)。

(29)在步骤S1901,这里例如,第2密码文信息组处理时生成选择的链结信息组的低4位为“1000”,即选择第3密码文信息组,将所选择的第3密码文信息组作为新链结信息组更新链结信息组(步骤S1901:第3次)。

(30)~(34)与实施例1相同(步骤S210:第3次,步骤S201:第4次,S211~S213)。

实施例11的密码处理装置,将对前面信息信息组进行密码处理的过程中生成的中间信息组等作为链结信息组存贮,在后面的密码处理时组合进链结数据,在每次进行密码处理时根据该链结信息组由多个中间信息组等中选择1个信息组更新该链结信息组。

上述实施例11中,是在实施例1的数据密码化装置10上加以信息组选择单元111、在实施例1的数据译码装置20上加以信息组选择单元211,但也可以在其他实施例2~10上同样地加以信息组选择单元111和信息组选择单元211。

(实施例12)

本发明实施例12为改变实施例1的数据密码化装置10中尾数数据处理单元106进行的尾数数据的处理。

密码通信系统的构成与实施例1同样,说明省略。

此数据密码化装置10的结构与实施例1的结构相同。

具有与实施例1中图3所示数据密码化装置10同样功能的构成部分的说明省略。

图49表示本发明实施例12中尾数数据处理单元106的详细结构。

尾数数据处理单元106在由信息组分割单元101接收到尾数明文数据时,将紧接前面处理的密码文信息组传送给第1~8密码化单元105a~105h使之作密码化处理,根据信息组存贮单元102中存贮的链结信息组,对紧前面处理过的密码文信息组进行密码处理生成尾数数据处理用信息组,据此,由尾数明文数据生成与尾数明文数据位数相同的尾数密码文数据,此单元106包含数据匹配单元106a、尾数数据组合单元106b和密码文信息组存贮单元106c。

密码文信息组存贮单元106c存贮在紧接尾数数据处理之前处理过的密码文信息组,在对尾数数据进行处理时,将存贮的密码文信息组传送到第1~8密码化单元105a~105h。在此,存贮第3密码文信息组,在对尾数明文信息组进行处理时,将存贮中的第3密码文信息组传送到第1~8密码化单元105a~105h。

这里,第1~8密码化单元105a~105h,借助执行与实施例1同样的处理,由从密码文信息组存贮单元106c传来的密码文信息组生成尾数数据处理用信息组。在此,由第3密码文信息组生成尾数数据处理用信息组。

数据匹配单元106a由执行密码处理所生成的尾数数据处理用信息组生成与尾数明文数据位数相同的匹配数据。这里,因尾数明文数据为8位,而生成由尾数数据处理用信息组的例如高8位构成的匹配数据。

尾数数据组合单元106b将匹配数据组合到尾数明文数据。这里,对8位的匹配数据与8位的尾数明文数据进行各对应位的“异或”运算,生成8位的尾数密码文数据。

此数据密码化装置10的操作与图10所示实施例1的密码化装置10的操作相同。

图50表示本发明实施例12的数据密码化装置10的尾数数据处理流程。

在此作为举例,对取得200位的明文数据,在信息组存贮单元102中予先存贮初始值Ⅳ,在第1~3明文信息组的密码化已经结束时,将第3密码文信息组存贮进密码文信息组存贮单元106c,剩余的8位作为尾数明文数据由信息组分割单元101向尾数数据处理单元106传送,按DES的算法作为依据加以说明:

(1)关键数据组合单元103,将信息组存贮单元102中存贮的链结信息组组合到关键数据,生成组合关键数据(步骤S2001)。在此,对第3明文信息组处理时所生成的链结信息组与64位的关键数据进行各对应位的“异或”运算,生成组合关键数据传送到部分关键码生成单元104。

(2)部分关键码生成单元104由组合关键数据生成相当于密码化单元数的数量的部分关键码(步骤S2002)。这里,由64位的组合关键数据生成8个的48位部分关键码。

(3)第1密码化单元105a根据第1部分关键码,由密码文信息组存贮单元106c所存贮的紧前面处理的密码文信息组生成第1中间信息组(步骤S2003)。在此,由第3密码文信息组生成第1中间信息组。

(4)第2~7密码化单元105b~105g分别根据第2~7部分关键码由第1~6中间信息组生成第2~7中间信息组(步骤S2004)。在此,由对应于第3密码文信息组的第1~6中间信息组生成第2~7中间信息组。

(5)第8密码化单元105h根据第8部分关键码由第7中间信息组生成尾数数据处理用信息组(步骤S2005)。这里,由对应于第3密码文信息组的第7中间信息组生成尾数数据处理用信息组。

(6)数据匹配单元106a由执行密码处理所生成的尾数数据处理用信息组生成与尾数明文数据相同位数的匹配数据(步骤S2006)。这里因尾数明文数据为8位,故生成由尾数数据处理用信息、组的例如高8位构成的匹配数据。

(7)尾数数据组合单元106b将匹配数据组合进尾数明文数据(步骤S2007)。在此,对8位的匹配数据与8位的尾数明文数据进行各对应位的“异或”运算,生成8位的尾数密码文数据。

(8)信息组结合单元107将第8密码化单元105h生成的各密码文信息组与尾数数据处理单元106生成的尾数密码文数据相结合生成密码文数据(步骤S2008)。这里,将分别对应于第1~3明文信息组的各密码文信息组与尾数密码文数据相结合生成200位的密码文数据。

数据密码化装置10中尾数数据处理单元106进行的尾数数据的处理没有变更,而数据译码装置20中尾数数据处理单元206进行的尾数数据的处理也要变化。其变化内容是,根据链结信息组依靠将前面的密码文信息组作为新的输入信息组进行密码文处理生成尾数数据处理用信息组,据此由尾数明文数据生成与尾数明文数据相同位数的尾数密码文数据,因为是与尾数数据处理单元106相同的变更,所以省略其说明。

在上述实施例12中,虽是变更实施例1的尾数数据处理单元106进行的尾数数据的处理和尾数数据处理单元206进行的尾数数据的处理,但也可在其他实施例2~11中同样地改变尾数数据的处理。

原来的DES算法是要在由各密码处理单元进行密码化处理之前进行初始转置,在经16级密码化处理之后进行最后转置,为了上述各实施例中说明的简单化起见,省略了初始转置、最后转置和9段以后的密码处理单元。

上述各实施例的算法并不限于DES的算法,怎样的算法均可。因而更不用说,密码处理单元的级数也不限于8级,任何级均可。

在上述实施例中,虽主要以第4级的输出作为新的链结信息组,不言而喻,这并不限于第4级,哪一级的输出均可。

上述各实施例中是对链结信息组与关键数据的位数相同的情况加以说明,但它们不一定相同也可以。在将链结信息组等与关键数据组合的各实施例中,在链结信息组与关键数据的位数不同的情况下,由应组合到关键数据的信息组生成与关键数据相同位数的数据,将其组合到关键数据。例如这里,在关键数据的位数大于64位时,依靠对应组合到关键数据的信息组作扩大转置等生成与关键数据相同位数的数据,而在关键数据的位数小于64位时,则生成由关键数据的位数大小的高位来构成的数据,将其组合到关键数据。

上述各实施例中是由数据密码化装置10输入明文数据进行密码化,而由数据译码装置20对密码文数据进行译码,但因为数据密码化装置10中的密码化与数据译码装置20中的译码存在着逆变换的关系,所以各自既可成为密码化装置也可成为译码装置。因此在上述各实施例中也可以是上述各数据译码化装置20输入明文数据进行密码化,而上述各数据密码化装置10对密码文数据进行译码。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号