共享密钥生成装置、加密装置、解密装置、共享密钥生成方法、加密方法、解密方法以及程序的制作方法

文档序号:7793844阅读:178来源:国知局
共享密钥生成装置、加密装置、解密装置、共享密钥生成方法、加密方法、解密方法以及程序的制作方法
【专利摘要】由公开数据取得部(22)取得包含质数p、自然数d、矩阵Q、以及矩阵S的公开数据,由密钥生成部(24)生成包含自然数nA、kA的密钥。由非交换矩阵生成部(26)计算矩阵MA(MA=S-kAQnASkA)并发送给通信对象,从通信对象取得矩阵MB(MB=S-kBQnBSkB)。由共享密钥计算部(28)算出矩阵MAB(MAB=S-kAMBnASkA)作为共享密钥。由此,加密解密装置能够高速地生成安全的共享密钥。
【专利说明】共享密钥生成装置、加密装置、解密装置、共享密钥生成方 法、加密方法、解密方法从及程序

【技术领域】
[0001] 本发明设及共享密钥生成装置、加密装置、解密装置、共享密钥生成方法、加密方 法、解密方法W及程序。

【背景技术】
[0002] W往,已知有一种信息公开型并且非交换式的编码方法W及加密方法(日本特开 2001-202010号公报)。另外,已知有一种使用了有限非交换群的公钥密码系统、使用了作 为非交换体的环R的公钥密码系统(日本特表2004-534971号公报、日本特表2000-516733 号公报)。
[0003] 另外,已知有一种基于公钥密码体制的网络上的相互认证W及公钥相互交换系 统、基于控制向量的公钥密码系统的密钥管理(日本特开2006-262425号公报、日本特开平 5-216409 号公报)。


【发明内容】

[0004] 发明所要解决的问题
[0005] 本发明的目的在于提供一种能够高速地生成安全的共享密钥的共享密钥生成装 置、加密装置、解密装置、共享密钥生成方法、加密方法、解密方法W及程序。
[0006] 用于解决问题的方案
[0007] 为了实现上述目的,第一实施方式的共享密钥生成装置包含了 W下部分而构成: 公开数据设定部,设定包含质数P、自然数t行列式的值不为1的dXd矩阵Q(mod P)、W 及存在逆矩阵的dXd矩阵S(mod P)的公开数据;密钥生成部,生成包含自然数nA(mod P)、 k, (mod P)的密钥;矩阵计算部,使用所述密钥,根据下式(I)计算dXd矩阵Ma (mod P), 发送给通信对象;矩阵取得部,取得使用所述通信对象的密钥中包含的自然数nc (mod p)、 ke (mod p)并根据下式(II)计算的dXd矩阵Me (mod p) 及共享密钥计算部,使用由所述 矩阵取得部取得的矩阵Me,根据下式(III)算出dXd矩阵Mw(mod P)作为共享密钥。
[000引 Ma= S-k^SkA…(I)
[0009] Mb= S_kBQ址SkB... (II)
[0010] M邮=…(III)
[0011] 第二实施方式的程序用于使计算机作为W下部分发挥功能:公开数据设定部,设 定包含质数P、自然数t行列式的值不为1的dx d矩阵Q (mod P)、W及存在逆矩阵的dx d 矩阵S (mod p)的公开数据;密钥生成部,生成包含自然数riA (mod p)、kA (mod p)的密钥;矩 阵计算部,使用所述密钥,根据下式(IV)计算dXd矩阵Ma(mod p),发送给通信对象;矩阵 取得部,取得使用所述通信对象的密钥中包含的自然数nc(mod p)、kc(mod P)并根据下式 (V)计算的dXd矩阵Mc(mod P);化及共享密钥计算部,使用由所述矩阵取得部取得的矩阵 Me,根据下式(VI)算出dXd矩阵Mab(mo化)作为共享密钥。
[001 引 Ma= S-k^SkA…(IV)
[001 引 Mb= S-kBQ址SkB…(V)
[0014] M邮=S_'"V'skA…(W
[0015] 如此,通过将使用公开数据和密钥进行计算而得的矩阵与通信对象进行交换,并 使用从通信对象得到的矩阵算出共享密钥,从而能够高速地生成安全的共享密钥。
[0016] 第立实施方式的密钥生成部能够在每次与所述通信对象通信时,生成并更新包含 自然数% (mod p)、k;A (mod P)的密钥。由此,能够生成更安全的共享密钥。
[0017] 另外,第四实施方式的加密装置构成为包含W下构件;矩阵生成部,基于设定为与 解密装置共用的、由技术方案1或2的共享密钥生成装置生成的共享密钥MabW及两个质数 pl、p2,生成两个非交换矩阵A1、A2 ;矩阵作用部,使非交换矩阵A1作用于设定为与所述解 密装置共用的d维初始向量V。或上次求得的d维向量V 求出向量v/,并且使非交换矩 阵A2作用于所述初始向量V。或上次求得的d维向量V y2,求出向量Vi2,该矩阵作用部将使 所述非交换矩阵A1、A2作用时的或运算W及与运算的至少一方,置换成预先确定的、组合 了多种运算符的运算方法,使非交换矩阵A1、A2作用;位串变换部,对由所述矩阵作用部求 得的向量v/进行非线性变换而变换成位串,使所述变换而得的位串与上次求得的位串化 结合而求出所述位串W1,并且对向量Vi2进行非线性变换而变换成位串,使所述变换而得的 位串与上次求得的位串W2结合而求出所述位串W2 ;位数判定部,反复进行由所述矩阵作用 部进行的作用W及由所述位串变换部进行的变换与结合,直至由所述位串变换部求得的所 述位串化W及所述位串W2各自的位数达到表示加密对象数据的位串的位数;伪随机数列 产生部,计算所述位串W1 W及所述位串W2的异或,求出伪随机数位串;W及加密部,计算由 所述伪随机数列产生部求得的伪随机数位串和表示所述加密对象数据的位串的异或,由此 将所述加密对象数据加密。
[001引如此,将使非交换矩阵A1、A2作用时的或运算W及与运算的至少一方,置换成组 合了多种运算符的运算方法,使非交换矩阵A1、A2反复作用于向量并且进行非线性变换, 计算得到的位串W1、W2的异或,求出伪随机数位串。通过使用伪随机数位串进行加密,从而 在加密对象数据的位数可变的情况下,能够使加密处理高速化并强化密码译解强度。
[0019] 第五实施方式的加密装置的矩阵作用部能够使非交换矩阵A1作用于所述初始向 量V。或上次求得的向量V 在求取所述向量V时,按向量V /的每个元素,使非交换矩阵 A1作用于已置换成进行了计算的向量V的元素的所述初始向量V。或所述向量V 计算 向量V的所述元素;使非交换矩阵A2作用于所述初始向量V。或上次求得的向量V 在 求取所述向量VfS时,按向量VfS的每个元素,使非交换矩阵A2作用于已置换成进行了计算 的向量Vi2的元素的所述初始向量V。或所述向量V 计算向量Vi2的所述元素。由此,能 够更加强化密码译解强度。
[0020] 第六实施方式的加密装置的位串变换部作为所述非线性变换,能将由所述矩阵作 用部求得的向量v/变换成位串,对变换而得的位串进行将满足预先确定的条件的起始位 串截去的截断处理,使被截去所述起始位串的所述位串与上次求得的位串化结合,并且将 向量Vi2变换成位串,对变换而得的位串进行所述截断处理,使被截去所述起始位串的所述 位串与上次求得的位串W2结合。由此,能够更加强化密码译解强度。
[0021] 另外,第走实施方式的加密装置的位串变换部作为所述截断处理能进行下述处 理;对所述变换而得的位串,作为满足所述预先确定的条件的起始位串,将由从起始起连续 的0和从起始起最初出现的1构成的起始位串截去,并且从已截去所述起始位串的所述位 串中,截去预先确定的位数的起始位串。由此,能够更加强化密码译解强度。
[0022] 第八实施方式的解密装置构成为包含;矩阵生成部,基于设定为与加密装置共用 的、由技术方案1或2的共享密钥生成装置生成的共享密钥MabW及两个质数Pl、P2,生成 两个非交换矩阵A1、A2 ;矩阵作用部,使非交换矩阵A1作用于设定为与所述加密装置共用 的d维初始向量V。或上次求得的d维向量V 求出向量v/,并且使非交换矩阵A2作用于 所述初始向量V。或上次求得的d维向量V 求出向量Vi2,该矩阵作用部将使所述非交换 矩阵A1、A2作用时的或运算W及与运算的至少一方,置换成预先确定的、组合了多种运算 符的运算方法,使非交换矩阵A1、A2作用;位串变换部,对由所述矩阵作用部求得的向量v/ 进行非线性变换而变换成位串,使所述变换而得的位串与上次求得的位串化结合求出所 述位串W1,并且对向量Vi 2进行非线性变换而变换成位串,使所述变换而得的位串与上次求 得的位串W2结合而求出所述位串W2 ;位数判定部,反复进行由所述矩阵作用部进行的作用 W及由所述位串变换部进行的变换与结合,直至由所述位串变换部求得的所述位串W1 W 及所述位串W2各自的位数达到表示解密对象数据的位串的位数;伪随机数列产生部,计算 所述位串化W及所述位串W2的异或,求出伪随机数位串;W及解密部,计算由所述伪随机 数列产生部求得的伪随机数位串和表示所述解密对象数据的位串的异或,由此将所述解密 对象数据解密。
[002引发明的效果
[0024] 根据本发明的一个实施方式的共享密钥生成装置、方法、W及程序,通过将使用公 开数据和密钥进行计算而得的矩阵与通信对象进行交换,使用从通信对象得到的矩阵算出 共享密钥,从而能够高速地生成安全的共享密钥。
[0025] 根据本发明的一个实施方式的加密装置、加密方法、解密装置、W及解密方法,将 使非交换矩阵A1、A2作用时的或运算W及与运算的至少一方,置换成组合了多种运算符的 运算方法,使非交换矩阵A1、A2反复作用于向量并且进行非线性变换,计算得到的位串W1、 W2的异或,求出伪随机数位串。通过使用伪随机数位串进行加密或解密,从而在加密对象数 据或解密对象数据的位数可变的情况下,能使加密处理或解密处理高速化并强化密码译解 强度。

【专利附图】

【附图说明】
[0026] 图1是表示本发明的实施方式的加密处理系统的结构的概要图。
[0027] 图2是表示本发明的实施方式的加密解密装置的结构的概要图。
[002引图3是用于说明计算共享密钥的方法的图。
[0029] 图4A是用于说明加密方法的图。
[0030] 图4B是用于说明解密方法的图。
[0031] 图5是表示本发明的实施方式的加密解密装置中的共享密钥计算处理例程的内 容的流程图。
[0032] 图6是表示本发明的实施方式的加密解密装置中的伪随机数列产生处理例程的 内容的流程图。
[0033] 图7是表示计算机上的实验结果的图。
[0034] 图8是表示移动终端上的实验结果的图。

【具体实施方式】
[0035] W下,参考附图详细说明本发明的实施方式。
[0036] <系统结构〉
[0037] 如图1所示,本发明的实施方式的加密处理系统10具备加密解密装置12A、12B、多 个用户终端14A、多个用户终端14B、W及互联网接入网络16。此外,加密解密装置12AU2B 为加密装置、解密装置的一例。
[003引多个用户终端14A与加密解密装置12A连接,加密解密装置12A连接到互联网接 入网络16。另外,多个用户终端14B与加密解密装置12B连接,加密解密装置12B连接到互 联网接入网络16。加密解密装置12AU2B经由互联网接入网络16相互连接。
[0039] 在用户终端14A进行经由互联网接入网络16的数据发送的情况下,发送数据经由 加密解密装置12A被输出给互联网接入网络16。另一方面,在用户终端14A进行经由互联 网接入网络16的数据接收的情况下,接收数据经由加密解密装置12A,从互联网接入网络 16被输入。
[0040] 另外,在用户终端14B进行经由互联网接入网络16的数据发送的情况下,发送数 据经由加密解密装置12B被输出给互联网接入网络16。另一方面,在用户终端14B进行经 由互联网接入网络16的数据接收的情况下,接收数据经由加密解密装置12B,从互联网接 入网络16被输入。
[004^ 加密解密装置12A、12B由具备CPU (Central Processing化it ;中央处理器)、 RAM (Random Access Memo巧:随机存取存储器)、W及储存了用于执行后述的共享密钥生成 处理例程W及伪随机数列产生处理例程的程序的ROM巧ead化ly Memo巧;只读存储器)的 计算机构成,功能上构成为如下所示。如图2所示,加密解密装置12AU2B具备通信部20、 公开数据取得部22、密钥生成部24、非交换矩阵生成部26、共享密钥计算部28、数据输入输 出部32、共用数据设定部34、伪随机数列产生部36、加密部38、W及解密部40。此外,非交 换矩阵生成部26为矩阵计算部的一例,共享密钥计算部28为矩阵取得部W及共享密钥计 算部的一例。另外,伪随机数列产生部36为矩阵生成部、矩阵作用部、位串变换部、位数判 定部W及伪随机数列产生部的一例。
[0042] 通信部20经由互联网接入网络16进行数据的发送接收。
[0043] 数据输入输出部32被输入从用户终端14AU4B输出的数据,并且对用户终端14A、 14B输出数据。
[0044] 加密解密装置12AU2B的公开数据取得部22经由通信部20,取得质数P、自然数 cUdXd矩阵Q(mod p)、W及存在逆矩阵的dXd矩阵S(mod P)作为在与通信对象的通信中 使用的公开数据。其中,det Q声1,(mod P)表示变量或矩阵的元素的值为质数P的余数。
[0045] 加密解密装置12A的密钥生成部24生成由自然数nA(mod p)、kA(mod P)构成的密 钥。
[0046] 加密解密装置12B的密钥生成部24生成由自然数咕(mod p)、ke (mod P)构成的密 钥。
[0047] 密钥生成部24在每次进行通信时,生成新的密钥并更新密钥。
[0048] 加密解密装置12A的非交换矩阵生成部26使用密钥riA,k,,根据下式(1),计算 dXd的矩阵MA(mod P),经由通信部20,发送矩阵Ma给通信对象即加密解密装置12B。
[0049] Ma= S-k^SkA…(1)
[0化0] 加密解密装置12B的非交换矩阵生成部26使用密钥rv ke,根据下式(2),计算 dXd的矩阵Mb (mod P),经由通信部20,向作为通信对象的加密解密装置12A发送矩阵Mb。
[005U Mb= S-kBQ址SkB…(2)
[0052] 加密解密装置12A的共享密钥计算部28取得由通信部20接收的矩阵地,使用取 得的矩阵Mb,根据下式(3)算出dXd矩阵Mw (mod P)。
[005引 M邮=S_'"VskA…(3)
[0化4] 加密解密装置12B的共享密钥计算部28取得由通信部20接收的矩阵Ma,使用取 得的矩阵Ma,根据下式(4)算出dXd矩阵McA(mod P)。
[005引 Mba= S -陆Ma址S陆…(4)
[0056] 此处,如图3所示,上述做式如下变换成妨式。
[0057] M邮=S-"X"^SKA
[005引 Mae = S 仅邸9址5邸)^SKA
[0059] Mae = S -*"^邸怕址)^S?SKA
[0060] M邮=S -(邮邮Q地祉S脑+風…巧)
[0061] 另外,上述(4)式如下变换成化)式。
[0062] S-kbMa址 S邸=Mba
[0063] S-? (S-KV^SKA) = M ba
[0064] S-KBS-KA 怕"^)址5*"^5邸=M ba
[0065] S_脑+邮地S (邮風=M ba…巧)
[0066] 由上述妨式、(6)式可得下式(7),证明心与Mca相等。
[0067] M邮=S -(邮邮Q祉地S脑姻=S -皮刪)Q祉地S曲刷)=M BA... (7)
[0068] 因此,加密解密装置12AU2B的共享密钥计算部28将算出的矩阵Mab、MeA作为共 享密钥输出给共用数据设定部34。
[0069] 共用数据设定部34设定在加密解密装置12A、12B中共用的数据。具体地说,共享 密钥即矩阵心(Mca);私密数据即质数Pl、p2 及初始向量V。被设定为共用的数据。
[0070] 伪随机数列产生部36通过后述的方法,使用共享密钥即矩阵M^(Mca)、私密数据即 质数pi、p2、W及初始向量V。,产生伪随机数位串。
[0071] 加密部38通过将由伪随机数列产生部36产生的伪随机数位串用作0TP(one time pad ;-次一密)加密密钥,从而对由数据输入输出部32输入的加密对象数据进行流加密。 例如,加密部38如图4A所示,通过对W位串表示的明文(plain text)和作为加密密钥的 伪随机数位串的X0R进行运算,从而自前方起按每一位(或每一字节)进行加密。由加密 部38进行加密后的数据由通信部20进行数据发送。
[0072] 解密部40通过将由伪随机数列产生部36产生的伪随机数位串用作一次一密加密 的密钥,从而对由通信部20接收的解密对象数据进行解密。例如,解密部40如图4B所示, 通过对W位串表示的密文(cypher text)和作为加密密钥的伪随机数位串的X0R运算,从 而自前方起按每一位(或每一字节)进行解密。由解密部40进行解密后的数据由数据输 入输出部32输出给数据终端14AU4B。
[0073] 接着,就本实施方式中的产生伪随机数位串的原理进行说明。
[0074] 首先,伪随机数列产生部36使用作为共享密钥生成的dXd矩阵Mab(或地A) W及 被设定作为共用的私密数据的质数pl、p2,如下生成两个非交换矩阵A1、A2。此外,W下,W 矩阵Mab为2 X 2矩阵的情况为例进行说明。
[0075] 伪随机数列产生部36如下式(8)所示,使用矩阵Mw和质数pl,计算矩阵A1'。
[0076] [数学式U
[0077] ? * ? ( 8 )
[007引然后,伪随机数列产生部36求出使<g〉= (1,…,Pi-l}的生成器g。例如,pi = 7的生成器如下,为<3〉= (1,…,6}。
[0079] 31= 3, 3 2= 9mod7 = 2, 3 3= 27mod7 = 6, 3 4= 81mod7 = 4, 3 5= 243mod7 = 5,…
[0080] 然后,当将Ai"W下式(9)表示时,伪随机数列产生部36改变d' W使det Ai" = g,将改变d'而得的A"i设为非交换矩阵Al。
[0081] [数学式2]
[0082] ? ? ? ( 9 )
[0083] 另外,伪随机数列产生部36如下式(10)所示,使用矩阵Mab和质数p2,计算矩阵 A2',与上述相同地生成非交换矩阵A2。
[0084] [数学式3]
[0085] ... (10)
[0086] 此处,使用非交换矩阵A1,A2生成的伪随机数列的周期的长度0(A)使用用于非交 换矩阵A1、A2的生成的任意质数P,可W写成下式(11)。

【权利要求】
1. 一种共享密钥生成装置,包含: 公开数据设定部,设定包含质数P、自然数d、行列式的值不为1的dXd矩阵Q(mod p)、 以及存在逆矩阵的dXd矩阵S (mod p)的公开数据; 密钥生成部,生成包含自然数nA(mod p)、kA(mod p)的密钥; 矩阵计算部,使用所述密钥,根据下式(I)计算dXd矩阵MA(mod p),发送给通信对象; 矩阵取得部,取得使用所述通信对象的密钥中所包含的自然数%〇11〇(1 p)、kB(mod p)并 根据下式(II)计算的dXd矩阵MB(mod p);以及 共享密钥计算部,使用由所述矩阵取得部取得的矩阵魄,根据下式(III)算出dXd矩 阵MAB(mod p)作为共享密钥, MA= S ... (I) mb= ...(II) Mab= …(III)。
2. 根据权利要求1所述的共享密钥生成装置, 所述密钥生成部在每次与所述通信对象通信时,生成并更新包含自然数nA(mod p)、 kA(mod p)的密钥。
3. -种加密装置,包含: 矩阵生成部,基于设定为与解密装置共用的、由权利要求1或2的共享密钥生成装置生 成的共享密钥MAB以及两个质数pl、p2,生成两个非交换矩阵Al、A2 ; 矩阵作用部,使非交换矩阵A1作用于设定为与所述解密装置共用的d维初始向量V(l或 上次求得的d维向量Vi_/,求出向量v/,并且使非交换矩阵A2作用于所述初始向量V(l或上 次求得的d维向量Vi_i2,求出向量\2,该矩阵作用部将使所述非交换矩阵A1、A2作用时的 或运算以及与运算的至少一方,置换成预先确定的、组合了多种运算符的运算方法,使非交 换矩阵A1、A2作用; 位串变换部,对由所述矩阵作用部求得的向量v/进行非线性变换而变换成位串,使所 述变换而得的位串与上次求得的位串W1结合而求出所述位串W1,并且对向量Vi2进行非线 性变换而变换成位串,使所述变换而得的位串与上次求得的位串W2结合而求出所述位串 W2 ; 位数判定部,反复进行由所述矩阵作用部进行的作用以及由所述位串变换部进行的变 换与结合,直至由所述位串变换部求得的所述位串W1以及所述位串W2各自的位数达到表 示加密对象数据的位串的位数; 伪随机数列产生部,计算所述位串W1以及所述位串W2的异或,求出伪随机数位串;以 及 加密部,计算由所述伪随机数列产生部求得的伪随机数位串和表示所述加密对象数据 的位串的异或,由此将所述加密对象数据加密。
4. 一种解密装置,包含: 矩阵生成部,基于设定为与加密装置共用的、由权利要求1或2的共享密钥生成装置生 成的共享密钥MAB以及两个质数pl、p2,生成两个非交换矩阵Al、A2 ; 矩阵作用部,使非交换矩阵A1作用于设定为与所述加密装置共用的d维初始向量V(l或 上次求得的d维向量Vi_/,求出向量v/,并且使非交换矩阵A2作用于所述初始向量V(l或上 次求得的d维向量Vi_i2,求出向量\2,该矩阵作用部将使所述非交换矩阵A1、A2作用时的 或运算以及与运算的至少一方,置换成预先确定的、组合了多种运算符的运算方法,使非交 换矩阵A1、A2作用; 位串变换部,对由所述矩阵作用部求得的向量v/进行非线性变换而变换成位串,使所 述变换而得的位串与上次求得的位串W1结合而求出所述位串W1,并且对向量Vi2进行非线 性变换而变换成位串,使所述变换而得的位串与上次求得的位串W2结合而求出所述位串 W2 ; 位数判定部,反复进行由所述矩阵作用部进行的作用以及由所述位串变换部进行的变 换与结合,直至由所述位串变换部求得的所述位串W1以及所述位串W2各自的位数达到表 示解密对象数据的位串的位数; 伪随机数列产生部,计算所述位串W1以及所述位串W2的异或,求出伪随机数位串;以 及 解密部,计算由所述伪随机数列产生部求得的伪随机数位串和表示所述解密对象数据 的位串的异或,由此将所述解密对象数据解密。
5. -种程序,用于使计算机作为以下部分发挥功能: 公开数据设定部,设定包含质数P、自然数d、行列式的值不为1的dXd矩阵Q(mod p)、 以及存在逆矩阵的dXd矩阵S (mod p)的公开数据; 密钥生成部,生成包含自然数nA(mod p)、kA(mod p)的密钥; 矩阵计算部,使用所述密钥,根据下式(IV)计算dXd矩阵MA(mod p),发送给通信对 象; 矩阵取得部,取得使用所述通信对象的密钥中包含的自然数nB(mod p)、kB(mod p)并根 据下式(V)计算的dXd矩阵MB(mod p);以及 共享密钥计算部,使用由所述矩阵取得部取得的矩阵MB,根据下式(VI)算出dX d矩阵 M# (mod p)作为共享密钥, Ma= S ... (IV) mb= …(V) Mab= ...(VI)。
6. -种共享密钥生成方法,包含以下步骤: 由公开数据设定部,设定包含质数P、自然数d、行列式的值不为1的dXd矩阵Q(mod P)、以及存在逆矩阵的dXd矩阵S(mod p)的公开数据的步骤; 由密钥生成部,生成包含自然数nA(mod p)、kA(mod p)的密钥的步骤; 由矩阵计算部,使用所述密钥,根据下式(VII)计算dXd矩阵MA(mod p),发送给通信 对象的步骤; 由矩阵取得部,取得使用所述通信对象的密钥中所包含的自然数nB(mod p)、kB(mod p) 并根据下式(VIII)计算的dXd矩阵MB(mod p)的步骤;以及 由共享密钥计算部,使用由所述矩阵取得部取得的矩阵MB,根据下式(IX)算出dX d矩 阵MAB (mod p)作为共享密钥的步骤, MA= S ...(VII) mb= …(VIII) mab= s'm/s1^ …(ix)〇
7. -种加密方法,包含以下步骤: 由矩阵生成部,基于设定为与解密装置共用的、由权利要求6的共享密钥生成方法生 成的共享密钥MAB以及两个质数pl、p2,生成两个非交换矩阵Al、A2的步骤; 由矩阵作用部,使非交换矩阵A1作用于设定为与所述解密装置共用的d维初始向量V(l或上次求得的d维向量Vi_/,求出向量v/,并且使非交换矩阵A2作用于所述初始向量vQ或 上次求得的d维向量vg2,求出向量\2,该矩阵作用部将使所述非交换矩阵Al、A2作用时 的或运算以及与运算的至少一方,置换成预先确定的、组合了多种运算符的运算方法,使非 交换矩阵A1、A2作用的步骤; 由位串变换部,对由所述矩阵作用部求得的向量V进行非线性变换而变换成位串,使 所述变换而得的位串与上次求得的位串W1结合而求出所述位串W1,并且对向量Vi2进行非 线性变换而变换成位串,使所述变换而得的位串与上次求得的位串W2结合而求出所述位 串W2的步骤; 由位数判定部,反复进行由所述矩阵作用部进行的作用以及由所述位串变换部进行的 变换与结合,直至由所述位串变换部求得的所述位串W1以及所述位串W2各自的位数达到 表示加密对象数据的位串的位数的步骤; 由伪随机数列产生部,计算所述位串W1以及所述位串W2的异或,求出伪随机数位串的 步骤;以及 由加密部,计算由所述伪随机数列产生部求得的伪随机数位串和表示所述加密对象数 据的位串的异或,由此将所述加密对象数据加密的步骤。
8. -种解密方法,包含以下步骤: 由矩阵生成部,基于设定为与加密装置共用的、由权利要求1或2的共享密钥生成方法 生成的共享密钥MAB以及两个质数pl、p2,生成两个非交换矩阵Al、A2的步骤; 由矩阵作用部,使非交换矩阵A1作用于设定为与所述加密装置共用的d维初始向量V(l或上次求得的d维向量Vi_/,求出向量v/,并且使非交换矩阵A2作用于所述初始向量vQ或 上次求得的d维向量vg2,求出向量\2,该矩阵作用部将使所述非交换矩阵Al、A2作用时 的或运算以及与运算的至少一方,置换成预先确定的、组合了多种运算符的运算方法,使非 交换矩阵A1、A2作用的步骤; 由位串变换部,对由所述矩阵作用部求得的向量V进行非线性变换而变换成位串,使 所述变换而得的位串与上次求得的位串W1结合而求出所述位串W1,并且对向量Vi2进行非 线性变换而变换成位串,使所述变换而得的位串与上次求得的位串W2结合而求出所述位 串W2的步骤; 由位数判定部,反复进行由所述矩阵作用部进行的作用以及由所述位串变换部进行的 变换与结合,直至由所述位串变换部求得的所述位串W1以及所述位串W2各自的位数达到 表示解密对象数据的位串的位数的步骤; 由伪随机数列产生部,计算所述位串W1以及所述位串W2的异或,求出伪随机数位串的 步骤;以及 由解密部,计算由所述伪随机数列产生部求得的伪随机数位串和表示所述解密对象数 据的位串的异或,由此将所述解密对象数据解密的步骤。
【文档编号】H04L9/08GK104488218SQ201380034391
【公开日】2015年4月1日 申请日期:2013年7月4日 优先权日:2012年7月5日
【发明者】大矢雅则, 入山圣史, 路易吉·阿卡尔迪, 马西莫·雷戈利 申请人:克里普特欧贝西克株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1