CN1405703A - 转换器、转换方法、加密/解密系统、程序和记录媒体 - Google Patents

转换器、转换方法、加密/解密系统、程序和记录媒体 Download PDF

Info

Publication number
CN1405703A
CN1405703A CN02146995A CN02146995A CN1405703A CN 1405703 A CN1405703 A CN 1405703A CN 02146995 A CN02146995 A CN 02146995A CN 02146995 A CN02146995 A CN 02146995A CN 1405703 A CN1405703 A CN 1405703A
Authority
CN
China
Prior art keywords
data
total length
converter
input
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN02146995A
Other languages
English (en)
Other versions
CN1332338C (zh
Inventor
梅野健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
INDEPENDENT ADMINISTRATIVE LEGAL PERSON COMMUNICATION GENERAL INST
Original Assignee
INDEPENDENT ADMINISTRATIVE LEGAL PERSON COMMUNICATION GENERAL INST
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by INDEPENDENT ADMINISTRATIVE LEGAL PERSON COMMUNICATION GENERAL INST filed Critical INDEPENDENT ADMINISTRATIVE LEGAL PERSON COMMUNICATION GENERAL INST
Publication of CN1405703A publication Critical patent/CN1405703A/zh
Application granted granted Critical
Publication of CN1332338C publication Critical patent/CN1332338C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种转换器101使用预设参数a。一发生单元102接收发生的输入,x1,x2,…,xn,并使用循环公式y1=F1(x1,a),和yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);来产生发生的输出,y1,y2,…yn,。一密钥接收单元103接收密钥输入,k1,k2,…,kn,并将所接收的密钥输入作为发生的输入输给所述发生单元102。一重复控制器104将发生的输出作为发生的输入输给所述发生单元102,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn。数据接收单元105接收数据输入,d1,d2,…,dn。转换单元106使用ei=di☆ri转换数据,并输出数据输出,e1,e2,…,en。转换器101能够用于加密和解密数据。

Description

转换器、转换方法、加密/解密系统、程序和记录媒体
技术领域
本发明涉及一种转换器,一种加密/解密系统,一种多级转换器,一种转换方法,一种多级转换方法,一种程序和一种记录信息的信息记录媒体,它们更适用于一种矢量流专用密钥加密系统。
背景技术
通常,作为一种专用密钥加密系统,分组加密方法或流加密方法是众所周知的。分组加密方法的标准包括DES,RC5等,而流加密方法的标准包括RC4,SEAL1.0等。
根据流加密方法,产生一种随机位串,在将被加密的目标数据和所产生的随机位串之间应用一专用OR操作,从而加密目标数据。因此,加密速度取决于随机位串的形成速度,以便通常能够实现高速加密。流加密方法更适用于其中比特误差是不能忽视的内容(移动通信等),它能够实现数据格式的灵活改变。
在分组加密方法中,使用的是非线性数据混合,即“S”函数。在分组单元中执行数据处理,它的优点是在这种加密方法中可使用不同的数据格式(图像数据,声频数据,活动图像等)。但是,如果在数据中存在比特误差,就可能扩散这种误差。
因此,就非常需要一种同时具有所述流加密技术优点和分组加密技术优点的专用密钥加密系统。
特别是,需要一种适合加密大量数据,如大规模数据库,图像数据,声频数据,活动图像等的专用密钥加密系统。
发明内容
本发明已考虑了所述需求。因此本发明的一个目的是提供一种转换器,一种加密/解密系统,一种多级转换器,一种转换方法,一种多级转换方法,一种程序和一种信息记录媒体,它们更适用于一种矢量流专用密钥加密系统。统。
为了实现所述目的,根据本发明的第一种方案,提供一种转换器(101),它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),相对于域A而言;
二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A,其中:
对于任意的x∈A,y∈A,满足条件:
(x☆y)◎y=x,和
(x◎y)☆y=x;
一预设的参数,a∈A,和
转换器(101)包括一发生单元(102),一密钥接收单元(103),一重复控制器(104),一数据接收单元(105)和一转换单元(106),其中:
发生单元(102)使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
密钥接收单元(103)接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,将所接收的密钥输入作为发生的输入输给发生单元(102);
重复控制器(104)将来自发生单元(102)的发生的输出作为发生的输入输给发生单元,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;
数据接收单元(105)接收数据输入,d1,d2,…,dn∈A,其总长度是“n”;
转换单元(106)使用公式对1和“n”之间范围内的任何整数“i”进行数据转换,所述公式是
ei=di☆ri,和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
为了实现所述目的,根据本发明的第二个方案,提供一种转换器(301),它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),相对于域A而言;
二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A,其中:
对于任意的x∈A,y∈A,满足条件:
(x☆y)◎y=x,和
(x◎y)☆y=x;
一预设的参数,a∈A,和
转换器(301)包括一发生单元(302),一密钥接收单元(303),一重复控制器(304),一数据接收单元(305)和一转换单元(306),其中:
发生单元(302)使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,xi)((1≤i≤n-1);
密钥接收单元(303)接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,将所接收的密钥输入作为发生的输入输给发生单元(302);
重复控制器(3104)将来自发生单元(302)的发生的输出作为发生的输入输给发生单元,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;
数据接收单元(305)接收数据输入,d1,d2,…,dn∈A,其总长度是“n”;和
转换单元(306)使用公式对1和“n”之间范围内的任何整数“i”进行数据转换,所述公式为
ei=di☆ri,和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
在所述转换器中,每个二进制算术操作◎和☆都可以是专用的OR。
在所述转换器中,
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b1<x≤Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
在转换器中,
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=x1(q<x1)
Fi(y,b)=x2(x1≤q)
其中
x1=floor(M-s by)
x2=ceil((M-s b-1)y+Ms),
q=b(x2-Ms)/(b-Ms)
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
为了实现所述目的,根据本发明的第三个方案,提供一种加密/解密系统(501),它包括作为加密单元(502)的所述转换器和作为解密单元(503)的与该转换器具有相同结构的另一个转换器,其中:
“Fi”,◎和“a”通常被加密单元和解密单元使用;
对于任意的x∈A,y∈A,满足条件:x☆y=x◎y;
加密单元(502)和解密单元(503)通常接收密钥输入,k1,k2,…,kn
加密单元(502)接收作为数据输入的原始数据,其长度为“n”,输出作为加密数据的数据输出,其长度“n”;
解密单元(503)接收作为数据输入的加密数据,其长度为“n”,输出作为解密数据的数据输出,其长度为“n”。
为了实现所述目的,根据本发明的第四个方案,提供一种转换器,它使用:
“n”(n≥1)个转换函数Fi:A×A→A(1≤i≤n),以及它们的逆转换函数Gi:A×A→A,相对于域A而言;其中,对于任意的x∈A,y∈A,满足条件:
Fi(Gi(x,y),y)=x,和
Gi(Fi(x,y),y)=x,
二进制算术操作,☆:An→An,以及它的逆二进制算术操作,◎:An→An,其中:
对于任意的z∈An,满足条件:
☆(◎z)=z,和
◎(☆z)=z;
一预设的参数,a∈A,和
该转换器包括一发生单元,一数据接收单元,一重复控制器,和一转换单元,其中:
发生单元使用循环公式接收发生的输出,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
yi=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
数据接收单元接收数据输入,k1,k2,…,kn∈A,其总长度是“n”,将所接收的数据输入作为发生的输入输给发生单元;
重复控制器将来自发生单元的发生的输出作为发生的输入输给发生单元,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;和
转换单元将单项算术操作☆作用于随机数串,r1,r2,…,rn∈A,以执行其数据转换,即,
(e1,e2,…,en)=☆(r1,r2,…,rn)和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
为了实现所述目的,根据本发明的第五个方案,提供一种转换器(301),它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),以及它们的逆转换函数Gi:A×A→A,相对于域A而言;其中,对于任意的x∈A,y∈A,满足条件:
Fi(Gi(x,y),y)=x,和
Gi(Fi(x,y),y)=x,
二进制算术操作,☆:An→An,以及它的逆二进制算术操作,◎:An→An,其中:
对于任意的z∈An,满足条件:
☆(◎z)=z,和
◎(☆z)=z;
一预设的参数,a∈A,和
该转换器包括一发生单元,一数据接收单元,一转换单元,和一重复控制器,其中:
发生单元使用循环公式接收发生的输出,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=G1(x1,a),和
yi+1=Gi+1(xi+1,yi)((1≤i≤n-1);
数据接收单元接收数据输入,h1,h2,…,hn∈A,其总长度是“n”;
转换单元将单项算术操作☆作用于数据输入h1,h2,…,hn以执行其数据转换,即,
(v1,v2,…,vn)=☆(h1,h2,…,hn),和
将数据转换的结果v1,v2,…,vn输给发生单元;和
重复控制器将来自发生单元的发生的输出作为发生的输入输给发生单元,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为数据输出,s1,s2,…,sn∈A,其总长度是“n”。
在所述转换器中,
假设“A”表示“t”数个比特空间,且“z∈An”对应于具有长度为“tn”比特的位串,则在单项算术操作◎中,可在设定方向上以预定数量比特来移动位串中的比特,其形成的位串可设定成对应于An,因此可以获得单项算术操作◎的结果。
在转换器中,
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b<x≤Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
在转换器中,
至少用正整数M,S定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(y,b)=x1(q<x1)
Fi(y,b)=x2(x1≤q)
其中
x1=floor(M-s by)
x2=ceil((M-s b-1)y+Ms),
q=b(x2-Ms)/(b-Ms)
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
为了实现所述目的,根据本发明的第六个方案,提供一种加密/解密系统,它包括作为加密单元的所述前转换器和作为解密单元的所述后转换器,其中:
“Fi”,“Gi”,“☆”,“◎”和“a”通常被加密单元和解密单元使用;
加密单元接收作为数据输入的原始数据,k1,k2,…,kn,其总长度为“n”,和输出作为加密数据的数据输出e1,e2,…,en,其总长度为“n”;和
解密单元接收作为数据输入的加密数据,h1,h2,…,hn,其总长度为“n”,输出作为解密数据的数据输出s1,s2,…,sn,其总长度“n”。
为了实现所述目的,根据本发明的第七个方案,提供一种加密/解密系统,它包括作为加密单元的所述前转换器和作为解密单元的所述后转换器,其中:
“Fi”,“Gi”,“☆”,“◎”和“a”通常被加密单元和解密单元使用;
加密单元接收作为数据输入的原始数据,h1,h2,…,hn,其总长度为“n”,和输出作为加密数据的数据输出s1,s2,…,sn,其总长度为“n”;和
解密单元接收作为数据输入的的加密数据,k1,k2,…,kn,其总长度为“n”和输出作为解密数据的数据输出e1,e2,…,en,其总长度“n”。
为了实现所述目的,根据本发明的第八个方案,提供一种多级转换器,它包括:
“u”个所述后转换器(第“j”个转换器称为转换器Mj(1≤j≤u));和
多级密钥输入接收单元,它接收参数输入a1,a2,…,an∈A,设定包括在所接收的参数输入中的第“j”个参数输入aj作为转换器Mj的预设参数“a”,其中
包括在“u”个转换器中的一个转换器Mi接收其总长度为“n”的多级转换输入,k1,k2,…,kn,作为数据输入,
包括在“u”个转换器中的一个转换器Mi(1≤i≤u-1)输出的数据输出输给包括在“u”个转换器中的一个转换器Mi+1作为数据输入,
包括在“u”个转换器中的一个转换器Mu输出其总长度为“n”的数据输出,e1,e2,…,en,作为多级转换输出。
为了实现所述目的,根据本发明的第九个方案,提供一种多级转换器,它包括:
根据权利要求7所述的“u”个所述后转换器(第“j”个转换器称为转换器Mj(1≤j≤u));和
多级密钥输入接收单元,它接收参数输入a1,a2,…,an∈A,设定包括在所接收的参数输入中的第“j”个参数输入aj作为转换器Mj的预设参数“a”,其中
包括在“u”个转换器中的一个转换器Mu接收其总长度为“n”的多级转换输入,h1,h2,…,hn,作为数据输入,
包括在“u”个转换器中的一个转换器Mi+1(1≤i≤u-1)输出的数据输出输给包括在“u”个转换器中的一个转换器Mi,作为数据输入,
包括在“u”个转换器中的一个转换器Mi输出其总长度为“n”的数据输出,s1,s2,…,sn,作为多级转换输出。
为了实现所述目的,根据本发明的第十个方案,提供一种加密/解密系统,它包括作为加密单元的所述前多级转换器和作为解密单元的所述后多级转换器,其中:
“Fi”,“Gi”,“☆”,“◎”和通常被加密单元和解密单元使用;
参数输入,a1,a2,…,an,通常被加密单元和解密单元使用;
加密单元接收作为多级转换输入的原始数据,k1,k2,…,kn,,其总长度为“n”,和输出作为加密数据的多级转换输出e1,e2,…,en,,其总长度为“n”;和
解密单元接收作为多级转换输入的加密数据h1,h2,…,hn,其总长度为“n”,和输出作为解密数据的数据输出s1,s2,…,sn,其总长度“n”。
为了实现所述目的,根据本发明的第十一个方案,提供一种加密/解密系统,它包括作为加密单元的所述后多级转换器和作为解密单元的所述前多级转换器,其中:
“Fi”,“Gi”,“☆”,“◎”和通常被加密单元和解密单元使用;
参数输入,a1,a2,…,an,通常被加密单元和解密单元使用;
加密单元接收作为多级转换输入的原始数据,h1,h2,…,hn,其总长度为“n”,和输出作为加密数据的多级转换输出s1,s2,…,sn,其总长度为“n”;和
解密单元接收作为多级转换输入的加密数据,k1,k2,…,kn,其总长度为“n”,和输出作为解密数据的数据输出e1,e2,…,en,其总长度“n”。
为了实现所述目的,根据本发明的第十二种方案,提供一种转换方法,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),对于域A而言;
二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A,其中:
对于任意的x∈A,y∈A,满足条件:
(x☆y)◎y=x,和
(x◎y)☆y=x;
一预设的参数,a∈A,和
该转换方法包括一发生步骤,一密钥接收步骤,一重复控制步骤,一数据接收步骤和一转换步骤,其中:
发生步骤包括使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
密钥接收步骤接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,将所接收的密钥输入作为发生的输入输给发生步骤;
重复控制步骤包括将来自发生步骤的发生输出作为发生的输入输给发生步骤,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;
数据接收步骤包括接收数据输入,d1,d2,…,dn∈A,其总长度是“n”;
转换步骤包括使用公式对1和“n”之间范围内的任何整数“i”进行数据转换,所述公式为
ei=di☆ri,和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
为了实现所述目的,根据本发明的第十三个方案,提供一种转换方法,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),相对于域A而言;
二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A,其中:
对于任意的x∈A,y∈A,满足条件:
(x☆y)◎y=x,和
(x◎y)☆y=x;
一预设的参数,a∈A,和
转换方法包括一发生步骤,一密钥接收步骤,一重复控制步骤,一数据接收步骤和一转换步骤,其中:
发生步骤包括使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,xi)((1≤i≤n-1);
密钥接收步骤包括接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,将所接收的密钥输入作为发生的输入输给发生步骤;
重复控制步骤包括将来自发生单元的发生输出作为发生的输入输给发生步骤,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;
数据接收步骤接收数据输入,d1,d2,…,dn∈A,其总长度是“n”;和
转换步骤包括使用公式对1和“n”之间范围内的任何整数“i”进行数据转换,所述公式为
ei=di☆ri,和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
每个二进制算术操作◎和☆都可以是专用的OR。
在所述转换方法中,
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b<x≤Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
在该转换方法中,
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(y,b)=x1(q<x1)
Fi(y,b)=x2(x1≤q)
其中
x1=floor(M-s by)
x2=ceil((M-sb-1)y+Ms),
q=b(x2-Ms)/(b-Ms)
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
为了实现所述目的,根据本发明的第十四个方案,提供一种转换方法,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),以及它们的逆转换函数,Gi:A×A→A,相对于域A而言;其中,对于任意的x∈A,y∈A,满足条件:
Fi(Gi(x,y),y)=x,和
Gi(Fi(x,y),y)=x,
二进制算术操作,☆:An→An,以及它的逆二进制算术操作,◎:An→An,其中:
对于任意的x∈An,满足条件:
☆(◎z)=z,和
◎(☆z)=z;
一预设的参数,a∈A,和
该转换方法包括一发生步骤,一数据接收步骤,一重复控制步骤和一转换步骤,其中:
发生步骤包括使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
数据接收步骤包括接收数据输入,k1,k2,…,kn∈A,其总长度是“n”;将所接收的数据输入作为发生的输入输给发生步骤;
重复控制步骤包括将来自发生步骤的发生的输出作为发生的输入输给发生步骤,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;和
转换步骤包括将单项算术操作☆作用于随机数串,r1,r2,…,rn∈A,以执行其数据转换,即,
(e1,e2,…,en)=☆(r1,r2,…,rn)
输出数据输出,e1,e2,…,en,其总长度是“n”。
为了实现所述目的,根据本发明的第十五个方案,提供一种转换方法,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),以及它们的逆转换函数Gi:A×A→A,相对于域A而言;其中,对于任意的x∈A,y∈A,满足条件:
Fi(Gi(x,y),y)=x,和
Gi(Fi(x,y),y)=x,
二进制算术操作,☆:An→An,以及它的逆二进制算术操作,◎:An→An,其中:
对于任意的z∈An,满足条件:
☆(◎z)=z,和
◎(☆z)=z;
一预设的参数,a∈A;和
该转换方法包括一发生步骤,一数据接收步骤,一转换步骤和一重复控制步骤,其中:
发生步骤包括使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=G1(x1,a),和
yi+1=Gi+1(xi+1,xi)((1≤i≤n-1);
数据接收步骤接收数据输入,h1,h2,…,hn∈A,其总长度是“n”;
转换步骤将单项算术操作☆作用于数据输入h1,h2,…,hn,执行其数据转换,即,
(v1,v2,…,vn)=☆(h1,h2,…,hn),和
将数据转换的结果v1,v2,…,vn输给发生步骤;和
重复控制步骤包括将来自发生步骤的发生的输出作为发生的输入输给发生步骤,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为数据输出,s1,s2,…,sn∈A,其总长度是“n”。
在所述转换方法中,假设“A”表示“t”数个比特空间,且“z∈An”对应于具有长度为“tn”比特的位串,则在单项算术操作◎中,可在设定方向上以预定数量比特来移动位串中的比特,其形成的位串可设定成对应于An,因此可以获得单项算术操作◎的结果。
在该转换方法中,
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b<x≤Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
在该转换方法中,
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=x1(q<x1)
Fi(y,b)=x2(x1≤q)
这里
x1=floor(M-sby)
x2=ceil((M-sb-1)y+Ms),
q=b(x2-Ms)/(b-Ms)
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
为了实现所述目的,根据本发明的第十六个方案,提供一种多级转换方法,它包括:
使用根据权利要求23所述的转换方法的“u”个转换步骤(第“j”个转换步骤称为转换步骤Mj(1≤j≤u));
多级密钥输入接收步骤,它接收参数输入a1,a2,…,an∈A,其总长度为“n”,设定包括在所接收的参数输入中的第“j”个参数输入aj作为转换步骤Mj的预设参数“a”,其中
包括在“u”个转换步骤中的一个转换步骤M1接收其总长度为“n”的多级转换输入,k1,k2,…,kn,作为数据输入,
将包括在“u”个转换步骤中的一个转换步骤Mi(1≤i≤u-1)输出的数据输出输给包括在“u”个转换步骤中的一个转换步骤Mi+1,作为数据输入,和
包括在“u”个转换步骤中的一个转换步骤Mu包括输出其总长度为“n”的数据输出,e1,e2,…,en,作为多级转换输出。
为了实现所述目的,根据本发明的第十七个方案,提供一种多级转换方法,它包括:
使用根据权利要求24所述的转换方法的“u”个转换步骤(第“j”个转换器称为转换器Mj(1≤j≤u));
多级密钥输入接收步骤,它接收参数输入a1,a2,…,an∈A,设定包括在所接收的参数输入中的第“j”个参数输入aj作为转换步骤Mj的预设参数“a”,其中
包括在“u”个转换步骤中的一个转换步骤Mu包括接收其总长度为“n”的多级转换输入,h1,h2,…,hn,作为数据输入,
将包括在“u”个转换步骤中的一个转换步骤Mi+1(1≤i≤u-1)输出的数据输出输给包括在“u”个转换步骤中的一个转换步骤Mi,作为数据输入,
包括在“u”个转换步骤中的一个转换步骤M1包括输出其总长度为“n”的数据输出,s1,s2,…,sn,作为多级转换输出。
为了实现所述目的,根据本发明的第十八个方案,提供一种程序,它用于控制用作任一所述转换器或任一所述多级转换器的计算机,或提供一种程序,用于控制执行任一所述转换方法或任一所述多级转换方法的计算机。
为了实现所述目的,根据本发明的第十九个方案,提供一种记录任何程序的信息记录媒体。
作为所述信息记录媒体,可使用光盘,软盘,硬盘,磁光盘,数字视频盘,磁带和半导体存储器。
与执行程序的计算机相分离,本发明的程序可被通过计算机通信网络分发或出售。此外,与执行程序的计算机相分离,本发明的信息记录媒体可被通过一般的商业交易分发或出售。
附图说明
通过阅读以下的详细的描述和附图,本发明的目的和其它目的与优点将变得更为清楚,在附图中:
图1是表示根据本发明第一实施例转换器的示意结构的实例图;
图2是表示通过用作转换器的串行计算机实现转换过程的程序流程图;
图3是表示根据本发明第二实施例转换器的示意结构的实例图;
图4是表示通过用作图3的转换器的串行计算机实现转换过程的程序流程图;
图5是表示包括分别作为加密单元和解密单元的转换器的一种加密系统/解密系统的示意结构的实例图;
图6是表示包括分别作为加密单元和解密单元的转换器的一种加密系统/解密系统的示意结构的实例图;
图7是表示根据本发明第四实施例转换器的示意结构的实例图;
图8是表示通过用作图7的转换器的串行计算机实现转换过程的程序流程图;
图9是表示根据本发明第五实施例转换器的示意结构的实例图;
图10是表示通过用作图9的转换器的串行计算机实现转换过程的程序流程图;
图11是表示包括作为加密单元的转换器和作为解密单元的转换器的一种加密/解密系统的实例图;
图12是表示包括作为加密单元的转换器和作为解密单元的转换器的一种加密/解密系统的实例图;
图13是表示根据本发明第七实施例多级转换器的示意结构的实例图;
图14是表示根据本发明第八实施例多级转换器的示意结构的实例图;
图15是表示根据本发明第九实施例,包括相互是成对关系的多级转换器的一种加密/解密系统的示意结构的实例图;
图16是表示根据本发明第十实施例,包括相互是成对关系的多级转换器的一种加密/解密系统的示意结构的实例图;
图17是表示根据本发明技术产生的数据分布的分布图。
具体实施方式
现在将描述实施本发明的优选实施例。下面将解释的实施例是用于说明本发明的,不是用于限制本发明的保护范围。对于本领域的技术人员来说,本发明可适用于包括与本发明每个或全部部件等效的替代元件的实施例,因此,这样的实施例属于本发明的保护范围。
在下面的解释中,将在本发明的第一和第二实施例中描述用于使用矢量流专用密钥的加密系统的转换器,将在本发明的第三实施例中描述使用第一和第二实施例中的任何一个的加密系统的加密/解密系统。
在本发明的优选实施例中,相对于域A而言,存在“n”(n≥1)个转换函数(S),Fi:A×A→A(1≤i≤n),二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A。在此情况下,对于任意的x∈A,y∈A,应当满足条件:(x☆y)◎y=x;和(x◎y)☆y=x。
作为这样的二进制算术操作◎和☆,在下面的实施例中将使用专用的OR。
在下面的解释中,“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和”floor(.)”表示在“M”数值系统中小数应该被去除。
在下面的实施例中,至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件:
Fi(x,b)=ceil(x Ms/b)(1≤x≤b);
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b≤x≤Ms),
对于任意的整数参数b(1≤b≤Ms)而言。这种转换函数相对于具有参数的Masuda-Aihara映射(IEICE Trans.on Communication,1999,July,Vol.J82-A,No.7,pp,1042-1046)。这种映射也称为偏斜帐篷映射。
在下面的实施例中,除了所述转换函数Fi,还可以使用一种用正整数M,s定义的函数(所述具有参数的Masuda-Aihara映射的逆映射),对于任意的整数参数b(1≤b≤Ms)而言,满足下列条件:Fi(y,b)=x1(q<x1)Fi(y,b)=x2(x1≤q)其中x1=floor(M-sby)x2=ceil((M-sb-1)y+Ms),q=b(x2-Ms)/(b-Ms)
在下面的实施例中,除了所述转换函数Fi,还可使用一种用正整数M,s定义的函数,它是一个x二级多项式的Ms阶,对于任意的整数参数b(1≤b≤Ms)而言,满足下列条件:
Fi(x,b)=2x(x+g(b))modMs
                     第一实施例
图1是根据本发明第一实施例转换器的示意结构的实例图。
一转换器101使用一设定参数a∈A。该转换器101包括包括一发生单元102,一密钥接收单元103,一重复控制器104,一数据接收单元105和一转换单元106。
发生单元102接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,和
使用下面的循环公式产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
密钥接收单元103接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,将所接收的密钥输入作为发生的输入输给发生单元102;
重复控制器104将来自发生单元102的发生的输出作为发生的输入输回给发生单元102,重复次数“m”(m≥0),在此情况下,最终将被输出的发生输出是一随机数串,r1,r2,…,rn∈A,其总长度是“n”。
数据接收单元105接收数据输入,d1,d2,…,dn∈A,其总长度是“n”。
转换单元106使用公式对1和“n”之间范围内的任何整数“i”执行数据转换,所述公式为
ei=di☆ri,和
以便能够输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
这种计算(数据转换)能够通过具有管线处理函数的并行计算机高速执行。但在下面的解释中,所述计算由常用的串行计算机执行。
图2是用于解释由用作转换器101的串行计算机实现的转换过程的流程图。
转换器101接收密钥输入变量,k1,k2,…,kn∈A(步骤S201)。
转换器101分别用所接收的变量替换变量x1,x2,…,xn∈A(步骤S202)。
此后,转换器101用值“m”替换计数变量“c”(步骤S203)。
而且,转换器101使用下面的循环公式计算变量y1,y2,…,yn∈A(步骤S204):
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
转换器101检查计数变量“c”是否为0(步骤S205)。在它确定计数变量“c”不为0的情况下(步骤S205;No),转换器101用变量变量y1,y2,…,yn∈A替换x1,x2,…,xn∈A(步骤S206)。此后,转换器101以1递减计数变量“c”(步骤S207),该流程返回至步骤S204的程序。
在它确定计数变量“c”为0的情况下(步骤S205;Yes),转换器101用变量y1,y2,…,yn∈A替换变量r1,r2,…,rn∈A(步骤S208)。
转换器101接收将被加密的目标数据输入d1,d2,…,dn∈A(步骤S209)。
转换器101使用公式对1和“n”之间范围内的任何整数“i”执行数据转换,所述公式为
ei=di☆ri,(步骤S210)。
最后,转换器101输出变量,e1,e2,…,en∈A,(步骤S211)。
通过所述过程,将会实现在本发明加密/解密系统中使用的转换过程。
                        第二实施例
图3是表示根据本发明第二实施例转换器的示意结构的实施例图。现在参考图3将详细地解释根据本实施例的转换器。
转换器301基本上与转换器101具有相同的结构。转换器301具有对应于发生单元102的发生单元302,对应于密钥接收单元103的密钥接收单元303,对应于重复控制器104的重复控制器304,对应于数据接收单元105的数据接收单元305,和对应于数据接收单元106的转换单元306。
该发生单元302使用与发生单元102所使用循环公式不同的循环公式。具体的说,发生单元302使用循环公式:
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,xi)((1≤i≤n-1)
图4是由于解释由用作转换器301的串行计算机实现的转换过程的流程图。通过转换器301执行的转换过程的程序基本上与通过转换器101执行的转换过程的程序相同,将通过转换器301执行的步骤S401至S411的程序分别对应于通过转换器101执行的步骤S201至S211的程序。
步骤S404中使用的循环公式不同于步骤S204中使用的循环公式。即,在步骤S404中,转换器301使用循环公式:
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,xi)((1≤i≤n-1)。
                     第三实施例
根据本发明第三实施例的一种加密/解密系统包括作为加密单元的转换器101或者转换器301,还包括作为解密单元的转换器101或者转换器301。
图5是表示包括用作加密单元和解密单元的两个转换器101的加密/解密系统的示意结构实例图。
加密/解密系统501包括加密单元502和解密单元503。每个加密单元502和解密单元503都包括转换器101。
加密单元502和解密单元503使用相同的“Fi”和“a”。在本实施例中,符号◎和☆表示专用OR的函数,这样对于任意的x∈A,y∈A,应该满足条件:x☆y=x◎y。
每个加密单元502和解密单元503接收共同的密钥输入,k1,k2,…,kn
加密单元502接收作为数据输入的原始数据,其总长度为“n”,输出作为加密数据的数据输出,其总长度为“n”。
解密单元503接收作为数据输入的编码数据,其总长度为“n”,输出作为解码数据的数据输出,其总长度为“n”。
这样,因此就能实现矢量流专用密钥加密系统。
图6是表示包括用作加密单元和解密单元的两个转换器301的一种加密/解密系统的示意结构的实例图。在本实施例中,加密/解密系统501也包括加密单元502和解密单元503。除了每个加密单元502和解密单元503都包括转换器301之外,加密/解密系统501与图5中的具有相同的结构。
还是根据本实施例,可实现矢量流专用密钥加密系统。
在下面的解释中,在本发明的第四和第五实施例中都将描述适用于矢量流专用密钥加密系统的转换器,在本发明的第六实施例中将描述使用第四和第五实施例的任一加密系统的加密/解密系统。
在下面的解释中,使用“n”(1≤n)个转换函数,Fi:A×A→A(1≤i≤n),以及它们的逆转换函数Gi:A×A→A,相对于域A而言;对于任意的x∈A,y∈A,应该满足条件:
Fi(Gi(x,y),y)=x;
Gi(Fi(x,y),y)=x。
下面将采用单项二进制算术操作,☆:An→An和它的逆单项二进制算术操作,◎:An→An。根据这些算术操作,对于任意的x∈An,应该满足条件:
☆(◎z)=z;
◎(☆z)=z。
特别是在以下的解释中,在“A”表示“t”数个比特空间,且“z∈An”对应于具有长度为“tn”字节的位串的情况下,在单项算术操作◎中,可在设定方向上以预设数量的比特来循环移动位串中的比特。此后,其形成的位串可设定成对应于An,因此可以获得单项算术操作◎的结果。
在下面的解释中,“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数,而和”floor(.)”表示在“M”数值系统中小数应该被去除。
在下面的实施例中,至少用正整数M,s定义的其中一个转换函数Fi应该满足下列条件:
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b≤x≤Ms),
对于任意的整数参数b(1≤b≤Ms)而言。至少一种转换函数对应于所述具有参数的Masuda-Aihara映射。
在下面的实施例中,除了所述转换函数Fi,可使用一种用正整数M,s定义的函数(所述具有参数的Masuda-Aihara映射的逆映射),对于任意的整数参数b(1≤b≤Ms)而言,满足下列条件:
Fi(y,b)=x1(q<x1),
Fi(y,b)=x2(x1≤q);
其中
x1=floor(M-sby)
x2=ceil((M-sb-1)y+Ms),
q=b(x2-Ms)/(b-Ms)
                     第四实施例
图7是表示根据本发明第四实施例转换器的示意结构的实例图。
转换器701使用预设参数a∈A。转换器701包括发生单元702,数据接收单元703,重复控制器704和转换器705。
发生单元702使用下面的循环公式接收发生的输出,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
数据接收单元703接收数据输入,k1,k2,…,kn∈A,其总长度是“n”,将所接收的数据输入输给发生单元702。
重复控制器704将从发生单元102发送的的发生输出作为发生的输入输回给发生单元702,重复次数“m”(m≥0)。在此情况下,最终将被输出的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度为“n”。
转换单元705将单项算术操作☆应用于随机数串r1,r2,…,rn∈A,以执行其数据转换,即:
(e1,e2,…,en)=☆(r1,r2,…,rn),
以便输出数据输出,e1,e2,…,en,其总长度是“n”。
这种算术操作能够通过具有管线处理函数的并行计算机高速执行,还可通过常用的串行计算机执行。
图8是用于解释由用作转换器701的串行计算机实现的转换过程的流程图;
转换器701接收数据输入,k1,k2,…,kn∈A,其总长度为“n”(步骤S801)。
转换器701分别用所接收的数据替换x1,x2,…,xn∈A(步骤S802)。
此后,转换器701用值“m”替换计数变量“c”(步骤S803)。
然后,转换器701使用循环公式计算变量y1,y2,…,yn∈A(步骤S804),所述循环公式为
y1=F1(x1,a);
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
转换器701检查计数变量“c”是否为0(步骤S805)。在它确定计数变量“c”不为0的情况下(步骤S805;No),转换器701分别用变量y1,y2,…,yn替换变量x1,x2,…,xn(步骤S806),并以1递减计数变量“c”(步骤S807),该流程返回至步骤S804的程序。
在它确定计数变量“c”为0的情况下(步骤S805;Yes),转换器701分别用变量y1,y2,…,yn替换变量r1,r2,…,rn∈A(步骤S808)。
转换器701对变量r1,r2,…,rn∈A使用单项算术操作☆,以执行其数据转换,即:
(e1,e2,…,en)=☆(r1,r2,…,rn),
最后,转换器701输出变量,e1,e2,…,en,(步骤S810)。
                        第五实施例
图9是表示与所述转换器701是成对关系的转换器的示意结构的实例图;
根据本发明第五实施例的转换器901使用与转换器701所使用的相同算术操作,函数,参数,如“Fi”,“Gi”,◎,☆,“a”,“m”。
转换器901使用参数“a”。该转换器901包括一发生单元902,一数据接收单元903,一转换单元904和一重复控制器905。
发生单元902使用下面的循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并输出发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=G1(x1,a),和
yi+1=Gi+1(xi+1,xi)((1≤i≤n-1);
数据接收单元903接收数据输入,h1,h2,…,hn∈A。
转换单元905对数据输入h1,h2,…,hn∈A使用单项算术操作◎以执行其数据转换,即,
(v1,v2,…,vn)=◎(h1,h2,…,hn),和
将转换结果(v1,v2,…,vn)输给发生单元902。
重复控制器905将从发生单元902发送的发生的输出作为发生的输入输回给发生单元902,重复次数“m”(m≥0)。在此情况下,最终将被输出的发生输出为数据输出,s1,s2,…,sn∈A,其总长度是“n”。
这种计算(数据转换)能够通过具有管线处理函数的并行计算机高速执行。但是所述计算也可通过常用的串行计算机来执行。
图10是表示用于解释通过用作转换器901的串行计算机实现转换过程的流程图。
转换器901接收数据输入,h1,h2,…,hn∈A,其总长度为“n”(步骤S1001)。
转换器901对数据输入h1,h2,…,hn使用单项算术操作◎以执行其数据转换(步骤S1002),即,
(v1,v2,…,vn)=◎(h1,h2,…,hn),
转换器901分别用变量v1,v2,…,vn∈A替换变量x1,x2,…,xn∈A(步骤S1003)。
转换器901用值“m”替换计数变量“c”(步骤S1004)。
而且,转换器901使用循环公式计算变量y1,y2,…,yn∈A(步骤S1005)。所述循环公式为
y1=G1(x1,a),和
yi+1=Gi+1(xi+1,xi)((1≤i≤n-1);
转换器901检查计数变量“c”是否为0(步骤S1006)。在它确定计数变量“c”不为0的情况下(步骤S1006;No),转换器901分别用变量y1,y2,…,yn替换变量x1,x2,…,xn(步骤S1007),并以1递减计数变量“c”(步骤S1008),该流程返回至步骤S1005的程序。
相反,在它确定计数变量“c”为0的情况下(步骤S1006;Yes),转换器901分别用变量y1,y2,…,yn替换变量s1,s2,…,sn∈A(步骤S109)。
最后,转换器901输出变量,s1,s2,…,sn(步骤S1010)。
                          第六实施例
现在将解释包括相互是成对关系的所述转换器701和901的一种加密/解密系统。转换器701或者转换器901用作加密单元,而另一个将用作解密单元,这样根据这两个转换器的组合有两种不同类型的系统。
图11是示出包括作为加密单元转换器701和作为解密单元转换器901的一种加密/解密系统的示意结构的实例图。
根据本发明第六实施例的一种加密/解密系统1101包括加密单元1102和解密单元1103。加密单元1102包括所述转换器701,而解密单元1103包括与转换器701是成对关系的转换器901。
加密单元1103接收作为数据输入,k1,k2,…,kn的原始数据,其总长度为“n”,并输出作为加密数据的数据输出e1,e2,…,en,其总长度为“n”。
解密单元1104接收作为数据输入的加密数据,h1,h2,…,hn,其总长度为“n”,输出作为解密数据的数据输出s1,s2,…,sn,其总长度“n”。
根据该结构,能够实现矢量流专用密钥加密系统。
图12是表示包括用作加密单元转换器901和用作解密单元转换器701的一种加密/解密系统1201的示意结构的实例图。
该加密/解密系统1201包括加密单元1202和解密单元1203。加密单元1202包括所述转换器901,而解密单元1203包括与转换器201是成对关系的转换器701。
加密单元1202接收原始数据h1,h2,…,hn作为数据输入,其总长度为“n”,并输出作为加密数据的数据输出s1,s2,…,sn,其总长度为“n”。
解密单元1203接收加密数据k1,k2,…,kn作为数据输入,其总长度为“n”,并输出作为解密数据的数据输出e1,e2,…,en,其总长度“n”。
与所述相同,同样根据该实施例,能够实现矢量流专用密钥加密系统。
现在将举例描述在本发明第四至第六实施例中使用的单项算术操作◎和☆。在“A”表示一个比特空间而“z∈An”对应于具有长度为“n”比特的位串的情况下,在单项算术操作◎中可使用下面特定的计算:
◎(z1,z2,…,za-1,za,…,zn)=(za,…,zn,z1,z2,…,za-1)
这是“a-1”比特循环(循环移位)算术操作(也称为“n-a+1”比特循环算术操作)。根据算术操作☆,在与算术操作◎情况下相反的方向上可使用相反的比特循环算术操作进行位串中的移位。该实例是:
☆(za,…,zn,z1,z2,…,za-1)=(z1,z2,…,za-1,za,…,zn)
即使在A是t(t>1)的情况下,这样的比特循环算术操作仍能被自发地扩展并能够适用于本发明。
在下面的解释中,将在第七和第八实施例中描述一种多级转换器,它包括多级中相互是成对关系的转换器701和转换器901。而且,将在第九和第十实施例中描述使用所述多级转换器的加密/解密系统。
                        第七实施例
图13是表示根据本发明第七实施例多级转换器1301的示意结构的实例图。
多级转换器1301包括“u”个转换器701(第“j”个转换器称之为转换器Mj(1≤j≤u))和多级密钥输入接收单元1302。
多级密钥输入接收单元1302接收参数输入a1,a2,…,an∈A,其总长度为“u”。多级密钥输入接收单元1302设定第“j”个参数输入aj作为对应转换器701Mj的预设参数。
转换器701M1接收多级转换输入,k1,k2,…,kn,作为数据输入。
转换器701Mi(1≤i≤u-1)输出的这些数据输出输给转换器701Mi+1作为数据输入。
转换器701Mu输出其总长度为“n”的数据输出,e1,e2,…,en,作为多级转换输出。
                       第八实施例
图14是表示与所述多级转换器1301是成对关系的多级转换器1401示意结构的实例图。
多级转换器1401包括“u”个转换器901(第“j”个转换器称之为转换器Nj(1≤j≤u))和多级密钥输入接收单元1402。
多级密钥输入接收单元1402接收参数输入a1,a2,…,an∈A,其总长度为“n”。多级密密钥输入接收单元1402设定第“j”个参数输入aj作为对应转换器901Nj的预设参数。
转换器901Nu接收其总长度为“n”的多级转换输入,h1,h2,…,hn,作为数据输入。
转换器901Ni+1(1≤i≤u-1)输出的这些数据输出输给转换器901N1,作为数据输入。
转换器901N1输出其总长度为“n”的数据输出,s1,s2,…,sn,作为多级转换输出。
                         第九实施例
图15是表示包括相互是成对关系的所述多级转换器1301和多级转换器1401的一种加密/解密系统1501示意结构的实例图。
加密/解密系统1501包括用作加密单元1502的所述多级转换器1301和用作解密单元1503的所述多级转换器1401。
Fi,Gi,☆和◎通常被加密单元1502和解密单元1503使用。
那些参数输入,a1,a2,…,an,通常被加密单元1502和解密单元1503接收。
加密单元1502接收原始数据k1,k2,…,kn作为多级转换输入,其总长度为“n”,和输出作为加密数据的多级转换输出e1,e2,…,en,其总长度为“n”。
解密单元1503接收加密数据h1,h2,…,hn作为多级转换输入,其总长度为“n”,并输出作为解密数据的多级转换输出s1,s2,…,sn,其总长度为“n”。
根据本实施例,能够实现矢量流专用密钥加密系统。
                            第十实施例
图16是表示包括相互是成对关系的所述多级转换器1301和多级转换器1401的一种加密/解密系统1601示意结构的实例图。
加密/解密系统1601包括用作加密单元1602的所述多级转换器1401和用作解密单元1603的所述多级转换器1301。
Fi,Gi,☆和◎通常被加密单元1602和解密单元1603使用。
那些参数输入,a1,a2,…,an,通常被加密单元1602和解密单元1603接收。
加密单元1602接收原始数据h1,h2,…,hn作为多级转换输入,其总长度为“n”,和输出作为加密数据的多级转换输出s1,s2,…,sn,其总长度为“n”。
而且,解密单元1603接收加密数据k1,k2,…,kn作为多级转换输入,其总长度为“n”,和输出作为解密数据的多级转换输出e1,e2,…,en,其总长度为“n”。
根据本实施例,也能够实现矢量流专用密钥加密系统。
在矢量流专用密钥加密系统中,如果维数“n”设定较大,就能够提高其计算的并行性。因此,由于使用FPGA(现场可编程门阵列)等,或具有适用于使用专用芯片的并行处理的结构等,还可期望获得高速处理。
                       第十一实施例
与专利No.3030341和未经审查的日本专利申请KOKAI出版物No.2001-175168公开的一样,本发明的基本转换具有平均分布时,它也在该转换的合成转换中产生多维向量的平均分布。
图17示出了通过三维矢量流专用密钥加密系统以三次幂[0,1]3产生的数据的数据分布。
从图17可以看出,显然数据是以三次幂平均分布的。
在加密过程中,与等频率特性一样,需要统计的稳定性。从图17显然可知,根据本发明的技术,该数据分布显示等频率特性。
本发明的系统能够通过常用的计算机实现,而无需专用系统。用于控制计算机以执行所述过程的程序和数据可被记录和分布在媒体(软盘,CD-ROM,DVD等)上,程序可安装在计算机上,并在OS(操作系统)上运行以执行所述过程,因此可以实现本发明的系统。所述程序和数据可被存储在互联网上的服务器设备中的磁盘设备等内,并可被装入载波中。装入载波中的程序和数据可被下载到计算机中以能实现本发明的系统。
可在未脱离本发明宽广的精神和保护范围的情况下对其作出不同的实施例和改变。所述实施例的意图是用于解释本发明的,而不是用于限制本发明的保护范围。本发明的保护范围以附加的权利要求而非实施例来表示。在本发明权利要求等效意义的范围内和权利要求范围内作出的各种修改可被认为是在本发明的保护范围内的。

Claims (41)

1.一种转换器,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),相对于域A而言;
二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A,其中:
对于任意的x∈A,y∈A,满足条件:
(x☆y)◎y=x,和
(x◎y)☆y=x;和
一预设的参数,a∈A,和
所述转换器(101),包括一发生单元(102),一密钥接收单元(103),一重复控制器(104),一数据接收单元(105)和一转换单元(106),其中:
所述发生单元(102)使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
所述密钥接收单元(103)接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,并将所接收的密钥输入作为发生的输入输给所述发生单元(102);
所述重复控制器(104)将来自所述发生单元(102)的发生的输出作为发生的输入输给所述发生单元,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;
所述数据接收单元(105)接收数据输入,d1,d2,…,dn∈A,其总长度是“n”;和
所述转换单元(106)使用公式对1和“n”之间范围内的任何整数“i”进行数据转换,所述公式为
ei=di☆ri,和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
2.一种转换器(301),它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),相对于域A而言;
二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A,其中:
对于任意的x∈A,y∈A,满足条件:
(x☆y)◎y=x,和
(x◎y)☆y=x;和
一预设的参数,a∈A,和
所述转换器(301),包括一发生单元(302),一密钥接收单元(303),一重复控制器(304),一数据接收单元(305)和一转换单元(306),其中:
所述发生单元(302)使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,xi)((1≤i≤n-1);
所述密钥接收单元(303)接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,并将所接收的密钥输入作为发生的输入输给所述发生单元(302);
所述重复控制器(3104)将来自所述发生单元(302)的发生的输出作为发生的输入输给所述发生单元,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;
所述数据接收单元(305)接收数据输入,d1,d2,…,dn∈A,其总长度是“n”;和
所述转换单元(306)使用公式对1和“n”之间范围内的任何整数“i”进行数据转换,所述公式为
ei=di☆ri,和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
3.根据权利要求1的转换器,其中每个二进制算术操作◎和☆都是专用的OR。
4.根据权利要求1的转换器,其中
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b<x≤Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
5.根据权利要求1的转换器,其中
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(y,b)=x1(q<x1)
Fi(y,b)=x2(x1≤q)
其中
x1=floor(M-s by)
x2=ceil((M-s b-1)y+Ms),
q=b(x2-Ms)/(b-Ms)
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
6.一种加密/解密系统(501),它包括作为加密单元(502)的根据权利要求1或2的转换器,以及作为解密单元(503)的与根据权利要求1或2的转换器具有相同结构的另一个转换器,其中:
“Fi”,◎和“a”通常由所述加密单元和解密单元使用;
对于任意的x∈A,y∈A,满足条件:x☆y=x◎y;
所述加密单元(502)和所述解密单元(503)通常接收密钥输入,k1,k2,…,kn
所述加密单元(502)接收作为数据输入的原始数据,其长度为“n”,并输出作为加密数据的数据输出,其长度为“n”;
所述解密单元(503)接收作为数据输入的加密数据,其长度为“n”,并输出作为解密数据的数据输入,其长度为“n”。
7.一种转换器,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),以及它们的逆转换函数Gi:A×A→A,相对于域A而言;其中,对于任意的x∈A,y∈A,满足条件:
Fi(Gi(x,y),y)=x,和
Gi(Fi(x,y),y)=x;
二进制算术操作,☆:An→An,以及它的逆二进制算术操作,◎:An→An,其中:
对于任意的z∈An,满足条件:
☆(◎z)=z,和
◎(☆z)=z;和
一预设的参数,a∈A,和
所述转换器包括一发生单元,一数据接收单元,一重复控制器,和一转换单元,其中:
所述发生单元使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
所述数据接收单元接收数据输入,k1,k2,…,kn∈A,其总长度是“n”,并将所接收的数据输入作为发生的输入输给所述发生单元;
所述重复控制器将来自所述发生单元发生的发生的输出作为发生的输入输给所述发生单元,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;和
所述转换单元将单项算术操作☆作用于随机数串,r1,r2,…,rn∈A以执行其数据转换,即,
(e1,e2,…,en)=☆(r1,r2,…,rn),和
输出数据输出,e1,e2,…,en,其总长度是“n”。
8.一种转换器,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),以及它们的逆转换函数,Gi:A×A→A,相对于域A而言;其中,对于任意的x∈A,y∈A,满足条件:
Fi(Gi(x,y),y)=x,和
Gi(Fi(x,y),y)=x;
二进制算术操作,☆:An→An,以及它的逆二进制算术操作,◎:An→An,其中:
对于任意的z∈An,满足条件:
☆(◎z)=z,和
◎(☆z)=z;和
一预设的参数,a∈A,和
所述转换器包括一发生单元,一数据接收单元,一转换单元和一重复控制器,其中:
所述发生单元使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=G1(x1,a),和
yi+1=Gi+1(xi+1,xi)((1≤i≤n-1);
所述数据接收单元接收数据输入,h1,h2,…,hn∈A,其总长度是“n”;
所述转换单元将单项算术操作☆作用于数据输入h1,h2,…,hn以执行其数据转换,即,
(v1,v2,…,vn)=☆(h1,h2,…,hn),和
将数据转换的结果v1,v2,…,vn输给所述发生单元;和
所述重复控制器将来自所述发生单元的发生的输出作为发生的输入输给所述发生单元,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为数据输出,s1,s2,…,sn∈A,其总长度是“n”。
9.根据权利要求7的转换器,其中
假设“A”表示“t”数个比特空间且“z∈An”对应于具有长度为“tn”的位串,则在单项算术操作◎中,可在设定方向上以预设数量比特来移动位串中的比特,其形成的位串可设定成对应于An,因此可以获得单项算术操作◎的结果。
10.如权利要求7所述的转换器,其特征在于:
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b<x≤Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
11.根据权利要求7的转换器,其中
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(y,b)=x1(q<x1)
Fi(y,b)=x2(x1≤q)
其中
x1=floor(M-s by);
x2=ceil((M-sb-1)y+Ms);
q=b(x2-Ms)/(b-Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
12.一种加密/解密系统,它包括作为加密单元的根据权利要求7的所述转换器,以及作为解密单元的根据权利要求8的所述转换器,其中:
“Fi”,“Gi”,“☆”,“◎”和“a”通常被所述加密单元和所述解密单元使用;
所述加密单元接收作为数据输入的原始数据,k1,k2,…,kn,其总长度为“n”,并输出作为加密数据的数据输出e1,e2,…,en,其总长度为“n”;和
所述解密单元接收作为数据输入的加密数据,h1,h2,…,hn,其总长度为“n”,并输出作为解密数据的数据输出,s1,s2,…,sn,其总长度“n”。
13.一种加密/解密系统,它包括作为加密单元的根据权利要求8的所述转换器,以及作为解密单元的根据权利要求7的所述转换器,其中:
“Fi”,“Gi”,“☆”,“◎”和“a”通常被所述加密单元和解密单元使用;
所述加密单元接收作为数据输入的原始数据,h1,h2,…,hn,其总长度为“n”,并输出作为加密数据的数据输出s1,s2,…,sn,其总长度为“n”。
所述解密单元接收作为数据输入的加密数据,k1,k2,…,kn,其总长度为“n”,并输出作为解密数据的数据输出e1,e2,…,en,其总长度“n”。
14.一种多级转换器,它包括:
“u”个根据权利要求7的转换器(第“j”个转换器称为转换器Mj(1≤j≤u));
多级密钥输入接收单元,它接收参数输入a1,a2,…,au∈A,设定包括在所接收的参数输入中的第“j”个参数输入aj作为转换器Mj的预设参数“a”,其中
包括在所述“u”个转换器中的一个转换器M1接收作为数据输入的多级转换输入,k1,k2,…,kn,其总长度为“n”,
包括在所述“u”个转换器中的一个转换器Mi(1≤i≤u-1)输出的数据输出被作为数据输入输给包括在所述“u”个转换器中的一个转换器Mi+1
包括在所述“u”个转换器中的转换器Mu输出其总长度为“n”的数据输出,e1,e2,…,en,作为多级转换输出。
15.一种多级转换器,它包括:
“u”个根据权利要求7的转换器(第“j”个转换器称为转换器Mj(1≤j≤u));和
多级密钥输入接收单元,它接收参数输入a1,a2,…,an∈A,并设定包括在所接收的参数输入中的第“j”个参数输入aj作为转换器Mj的预设参数“a”,其中
包括在所述“u”个转换器中的一个转换器Mu接收作为数据输入的多级转换输入,h1,h2,…,hn,其总长度为“n”,
包括在所述“u”个转换器中的转换器Mi+1(1≤i≤u-1)输出的数据输出被作为数据输入输给包括在所述“u”个转换器中的一个转换器Mi
包括在所述“u”个转换器中的转换器Mi输出其总长度为“n”的数据输出,s1,s2,…,sn,作为多级转换输出。
16.一种加密/解密系统,它包括作为加密单元的根据权利要求14的转换器,以及作为解密单元的根据权利要求15的转换器,其中:
“Fi”,“Gi”,“☆”,和“◎”通常由所述加密单元和所述解密单元使用;
参数输入,a1,a2,…,an,通常由所述的加密单元和所述解密单元接收;
所述加密单元接收作为多级转换输入的原始数据,k1,k2,…,kn,,其总长度为“n”,并输出作为加密数据的多级转换输出e1,e2,…,en,,其总长度为“n”;和
所述解密单元接收作为多级转换输入的加密数据h1,h2,…,hn,其总长度为“n”,并输出作为解密数据的数据输出s1,s2,…,sn,其总长度“n”。
17.一种加密/解密系统,它包括作为加密单元的根据权利要求14的转换器,以及作为解密单元的根据权利要求15的转换器,其中:
“Fi”,“Gi”,“☆”,和“◎”通常由所述加密单元和所述解密单元使用;
参数输入,a1,a2,…,an,通常由所述加密单元和所述解密单元接收;
所述加密单元接收作为多级转换输入的原始数据,h1,h2,…,hn,其总长度为“n”,并输出作为加密数据的多级转换输出s1,s2,…,sn,其总长度为“n”;和
所述解密单元接收作为多级转换输入的加密数据,k1,k2,…,kn,其总长度为“n”,并输出作为解密数据的数据输出e1,e2,…,en,其总长度“n”。
18.一种转换方法,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),相对于域A而言;
二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A,其中:
对于任意的x∈A,y∈A,满足条件:
(x☆y)◎y=x,和
(x◎y)☆y=x;和
一预设的参数,a∈A,和
所述的转换方法包括一发生步骤,一密钥接收步骤,一重复控制步骤,一数据接收步骤和一转换步骤,其中:
所述发生步骤包括使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
所述密钥接收步骤包括接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,并将所接收的密钥输入作为发生的输入输给所述发生步骤;
所述重复控制步骤包括将来自所述发生步骤的发生的输出作为发生的输入输给所述发生步骤,重复次数“m”(m≥0),最终将被输出的其中之一的发生的输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;
所述数据接收步骤包括接收数据输入,d1,d2,…,dn∈A,其总长度是“n”;和
所述的转换步骤包括使用公式对1和“n”之间范围内的任何整数“i”进行数据转换,所述公式为
ei=di☆ri,和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
19.一种转换方法,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),相对于域A而言;
二进制算术操作,☆:A×A→A,以及它的逆二进制算术操作,◎:A×A→A,其中:
对于任意的x∈A,y∈A,满足条件:
(x☆y)◎y=x,和
(x◎y)☆y=x;和
一预设的参数,a∈A,和
所述的转换步骤包括一发生步骤,一密钥接收步骤,一重复控制步骤,一数据接收步骤和一转换步骤,其中:
所述发生步骤包括使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
所述密钥接收步骤接收密钥输入,k1,k2,…,kn∈A,其总长度是“n”,将所接收的密钥输入作为发生的输入输给所述发生步骤;
所述重复控制步骤包括将来自所述发生单元的发生的输出作为发生的输入输给所述发生步骤,重复次数“m”(m≥0),最终将被输出的其中之一的发生的输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;
所述数据接收步骤包括接收数据输入,d1,d2,…,dn∈A,其总长度是“n”;和
所述的转换步骤使用公式对1和“n”之间范围内的任何整数“i”进行数据转换,所述的公式为
ei=di☆ri,和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
20.根据权利要求18的转换方法,其中
每个二进制算术操作◎和☆都是专用的OR。
21.根据权利要求18的转换方法,其中
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b<x≤Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
22.根据权利要求18的转换方法,其中
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(y,b)=x1(q<x1)
Fi(y,b)=x2(x1≤q)
其中
x1=floor(Msby)
x2=ceil((M-sb-1)y+Ms),
q=b(x2-Ms)/(b-Ms)
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
23.一种转换方法,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),以及它们的逆转换函数Gi:A×A→A,相对于域A而言;其中,对于任意的x∈A,y∈A,满足条件:
Fi(Gi(x,y),y)=x,和
Gi(Fi(x,y),y)=x,
二进制算术操作,☆:An→An,以及它的逆二进制算术操作,◎:An→An,其中:
对于任意的x∈An,满足条件:
☆(◎z)=z,和
◎(☆z)=z;和
一预设的参数,a∈A,和
所述的转换方法包括一发生步骤,一数据接收步骤,一重复控制步骤和一转换步骤,其中:
所述发生步骤包括使用循环公式接收发生的输出,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=F1(x1,a),和
yi+1=Fi+1(xi+1,yi)((1≤i≤n-1);
所述的数据接收步骤包括接收数据输入,k1,k2,…,kn∈A,其总长度是“n”,以及将所接收的数据输入作为发生的输入输给所述发生步骤;
所述重复控制步骤包括将来自所述发生步骤的发生的输出作为发生的输入输给所述发生步骤,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为随机数串,r1,r2,…,rn∈A,其总长度是“n”;和
所述的转换步骤包括将单项算术操作☆作用于随机数串,r1,r2,…,rn∈A,以执行其数据转换,即,
(e1,e2,…,en)=☆(r1,r2,…,rn)和
输出数据输出,e1,e2,…,en∈A,其总长度是“n”。
24.一种转换方法,它使用:
“n”(n≥1)个转换函数,Fi:A×A→A(1≤i≤n),以及它们的逆转换函数Gi:A×A→A,相对于域A而言;其中,对于任意的x∈A,y∈A,满足条件:
Fi(Gi(x,y),y)=x,和
Gi(Fi(x,y),y)=x;
二进制算术操作,☆:An→An,以及它的逆二进制算术操作,◎:An→An,其中:
对于任意的z∈An,满足条件:
☆(◎z)=z,和
◎(☆z)=z;和
一预设的参数,a∈A,和
所述的转换方法包括一发生步骤,一数据接收步骤,一转换步骤和一重复控制步骤,其中:
所述的发生步骤包括使用循环公式接收发生的输入,x1,x2,…,xn∈A,其总长度是“n”,并产生发生的输出,y1,y2,…yn∈A,其总长度是“n”,所述循环公式为
y1=G1(x1,a),和
yi+1=Gi+1(xi+1,yi)((1≤i≤n-1);
所述数据接收步骤包括接收数据输入,h1,h2,…,hn∈A,其总长度是“n”;
所述的转换步骤包括将单项算术操作☆作用于数据输入,h1,h2,…,hn,以执行其数据转换,即,
(v1,v2,…,vn)=☆(h1,h2,…,hn),和
将数据转换的结果v1,v2,…,vn输给所述发生步骤;和
所述重复控制步骤包括将来自所述发生步骤的发生的输出作为发生的输入输给所述发生步骤,重复次数“m”(m≥0),最终将被输出的其中之一的发生输出设定为数据输出,s1,s2,…,sn∈A,其总长度是“n”。
25.根据权利要求23的转换方法,其中
假设“A”表示“t”数个比特空间且“z∈An”对应于具有长度为“tn”比特的位串,则在单项算术操作◎中,可在设定方向上以预设数量的比特来移动位串中的比特,其形成的位串可设定成对应于An,因此可以获得单项算术操作◎的结果。
26.根据权利要求23的转换方法,其中
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=ceil(x Ms/b)(1≤x≤b),和
Fi(x,b)=floor(Ms(x-b)/(Ms-b))+1(b<x≤Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
27.根据权利要求23的转换方法,其中
至少用正整数M,s定义的其中一个转换函数Fi可满足下列条件,对于任意的整数参数b(1≤b≤Ms),
Fi(x,b)=x1(q<x1),
Fi(y,b)=x2(x1≤q)
其中
x1=floor(M-sby);
x2=ceil((M-sb-1)y+Ms);
q=b(x2-Ms)/(b-Ms),
这里假设:
“ceil(.)”表示在“M”数值系统中小数应该被四舍五入到下一个整数;和
“floor(.)”表示在“M”数值系统中小数应该被去除。
28.一种多级转换方法,它包括:
使用根据权利要求23的转换方法的“u”个转换步骤(第“j”个转换步骤称为转换步骤Mj(1≤j≤u));
多级密钥输入接收步骤,它接收参数输入a1,a2,…,an∈A,其总长度为“n”,并设定包括在所接收的参数输入中的第“j”个参数输入aj作为转换步骤Mj的预设参数“a”,其中
包括在所述“u”个转换步骤中的转换步骤Mi接收其总长度为“n”的多级转换输入,k1,k2,…,kn,作为数据输入,
将包括在所述“u”个转换步骤中的转换步骤Mi(1≤i≤u-1)输出的数据输出输给包括在所述“u”个转换步骤中的转换步骤Mi+1,作为数据输入,和
包括在所述“u”个转换步骤中的转换步骤Mu输出其总长度为“n”的数据输出,e1,e2,…,en,作为多级转换输出。
29.一种多级转换方法,它包括:
使用根据权利要求24所述的方法的“u”个转换步骤(第“j”个转换器称为转换步骤Mj(1≤j≤u));和
多级密钥输入接收步骤,它接收参数输入a1,a2,…,au∈A,其总长度为“n”,并设定包括在所接收的参数输入中的第“j”个参数输入aj作为转换步骤Mj的预设参数“a”,其中
包括在所述“u”个转换步骤中的转换步骤Mu包括接收其总长度为“n”的多级转换输入,h1,h2,…,hn,作为数据输入,
将包括在所述“u”个转换步骤中的转换步骤Mi+1(1≤i≤u-1)输出的数据输出输给包括在所述“u”个转换步骤中的转换步骤Mi,作为数据输入,和
包括在所述“u”个转换步骤中的转换步骤M1包括输出其总长度为“n”的数据输出,s1,s2,…,sn,作为多级转换输出。
30.根据权利要求1的转换器,其中至少用正整数M,s定义的一个转换函数Fi是一个x二级多项式的Ms阶,对于任意的整数参数b(1≤b≤Ms)和b的一设定函数g而言,满足下列条件:
Fi(x,b)=2x(x+g(b))mod Ms
31.根据权利要求7的转换器,其中至少用正整数M,s定义的一个转换函数Fi是一个x二级多项式的Ms阶,对于任意的整数参数b(1≤b≤Ms)和b的一设定函数g而言,满足下列条件:
Fi(x,b)=2x(x+g(b))mod Ms
32.根据权利要求18的转换方法,其中至少用正整数M,s定义的一个转换函数Fi是一个x二级多项式的Ms阶,对于任意的整数参数b(1≤b≤Ms)和b的一设定函数g而言,满足下列条件:
Fi(x,b)=2x(x+g(b))mod Ms
33.根据权利要求23的转换方法,其中至少用正整数M,s定义的一个转换函数Fi是一个x二级多项式的Ms阶,对于任意的整数参数b(1≤b≤Ms)和b的一设定函数g而言,满足下列条件:
Fi(x,b)=2x(x+g(b))mod Ms
34.一种程序,它用于控制用作根据权利要求1至5,7至11,30和31任一所述转换器的计算机。
35.一种程序,它用于控制用作根据权利要求14或15的多级转换器的计算机。
36.一种程序,它用于控制执行根据权利要求18至27,32和33任一所述的转换方法的计算机。
37.一种程序,它用于控制执行根据权利要求28或29的多级转换方法的计算机。
38.一种信息记录媒体(包括任何的光盘,软盘,硬盘,磁光盘,数字视频盘,磁带和半导体存储器),存储根据权利要求34所述的程序。
39.一种信息记录媒体(包括任何的光盘,软盘,硬盘,磁光盘,数字视频盘,磁带和半导体存储器),存储根据权利要求35所述的程序。
40.一种信息记录媒体(包括任何的光盘,软盘,硬盘,磁光盘,数字视频盘,磁带和半导体存储器),存储根据权利要求36所述的程序。
41.一种信息记录媒体(包括任何的光盘,软盘,硬盘,磁光盘,数字视频盘,磁带和半导体存储器),存储根据权利要求37所述的程序。
CNB021469954A 2001-08-30 2002-08-30 转换器以及转换方法 Expired - Fee Related CN1332338C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP261698/2001 2001-08-30
JP2001261698A JP4191915B2 (ja) 2001-08-30 2001-08-30 変換装置、暗号化復号化システム、多段変換装置、プログラム、ならびに、情報記録媒体

Publications (2)

Publication Number Publication Date
CN1405703A true CN1405703A (zh) 2003-03-26
CN1332338C CN1332338C (zh) 2007-08-15

Family

ID=19088704

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021469954A Expired - Fee Related CN1332338C (zh) 2001-08-30 2002-08-30 转换器以及转换方法

Country Status (5)

Country Link
US (2) US7548618B2 (zh)
EP (1) EP1289186B1 (zh)
JP (1) JP4191915B2 (zh)
CN (1) CN1332338C (zh)
DE (1) DE60208743T2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102216967A (zh) * 2008-08-25 2011-10-12 索尼公司 数据转换装置、数据转换方法和程序
CN101621661B (zh) * 2008-06-30 2013-02-13 北京中星微电子有限公司 一种音视频加密解密传输系统
CN111310220A (zh) * 2020-03-12 2020-06-19 四川大学 基于新型三维矢量分解的彩色图像加密方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3735670B2 (ja) 2003-03-19 2006-01-18 独立行政法人情報通信研究機構 乱数列生成装置、暗号化復号化装置、乱数列生成方法、暗号化復号化方法、ならびに、プログラム
US7257225B2 (en) * 2003-12-29 2007-08-14 American Express Travel Related Services Company, Inc. System and method for high speed reversible data encryption
EP1860630B1 (en) * 2005-03-16 2018-12-26 Mitsubishi Electric Corporation Data converting apparatus and data converting method
WO2006130725A2 (en) * 2005-05-31 2006-12-07 Interdigital Technology Corporation Authentication and encryption methods using shared secret randomness in a joint channel
GB0813298D0 (en) 2008-07-19 2008-08-27 Univ St Andrews Multipad encryption
RU2713694C1 (ru) * 2019-05-06 2020-02-06 федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации Способ формирования ключа шифрования/дешифрования

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4202051A (en) * 1977-10-03 1980-05-06 Wisconsin Alumni Research Foundation Digital data enciphering and deciphering circuit and method
US5257282A (en) * 1984-06-28 1993-10-26 Unisys Corporation High speed code sequence generator
US4747139A (en) * 1984-08-27 1988-05-24 Taaffe James L Software security method and systems
US4799259A (en) * 1986-04-10 1989-01-17 Rockwell International Corporation Monolithic random digital noise generator
US5048935A (en) * 1986-12-24 1991-09-17 Hughes Aircraft Company Method for adaptive correction of the phase non-uniformity of a liquid crystal light valve
JPH0330341A (ja) 1989-06-28 1991-02-08 Mitsubishi Electric Corp 半導体装置の製造方法及びその装置
US5008935A (en) * 1989-06-30 1991-04-16 At&T Bell Laboratories Efficient method for encrypting superblocks of data
FR2656125B1 (fr) * 1989-12-19 1994-07-08 Bull Cp8 Procede de generation d'un nombre aleatoire dans un systeme de traitement de donnees, et systeme mettant en óoeuvre un tel procede.
JPH03214834A (ja) * 1990-01-19 1991-09-20 Canon Inc マルチメデイアネツトワークシステム
US5048086A (en) * 1990-07-16 1991-09-10 Hughes Aircraft Company Encryption system based on chaos theory
US5148485A (en) * 1990-07-20 1992-09-15 Ericsson Ge Mobile Communications Holding, Inc. Encrypton system for digital cellular communications
US5163092A (en) * 1990-11-28 1992-11-10 Siemens Aktiengesellschaft Parallel scrambler used in sonet data transmission
EP0529512A3 (en) * 1991-08-23 1993-06-16 Fujitsu Limited Method and system for generating random number sequences
ES2038912B1 (es) * 1991-09-30 1994-08-01 Alcatel Standard Electrica Sistema sincrono de aleatorizacion de datos en paralelo.
KR940009843B1 (ko) * 1992-02-07 1994-10-17 이병기 병렬 스크램블링 시스템
US5375170A (en) * 1992-11-13 1994-12-20 Yeda Research & Development Co., Ltd. Efficient signature scheme based on birational permutations
JPH06296175A (ja) 1993-04-09 1994-10-21 Matsushita Electric Ind Co Ltd スクランブル装置およびデスクランブル装置
US5440640A (en) * 1993-10-05 1995-08-08 Arithmetica, Inc. Multistream encryption system for secure communication
US5799090A (en) * 1995-09-25 1998-08-25 Angert; Joseph C. pad encryption method and software
JPH09162859A (ja) * 1995-12-07 1997-06-20 Fujitsu Ltd スクランブル方法及び装置、デスクランブル方法及び装置、並びに、データ伝達方法及びシステム
US6078667A (en) * 1996-10-10 2000-06-20 Certicom Corp. Generating unique and unpredictable values
US6094486A (en) * 1997-06-19 2000-07-25 Marchant; Brian E. Security apparatus for data transmission with dynamic random encryption
US6240183B1 (en) * 1997-06-19 2001-05-29 Brian E. Marchant Security apparatus for data transmission with dynamic random encryption
US6236728B1 (en) * 1997-06-19 2001-05-22 Brian E. Marchant Security apparatus for data transmission with dynamic random encryption
CA2210199A1 (en) * 1997-07-11 1999-01-11 Mitel Corporation Method and apparatus for the generation of non-linear confusion data
US20020002675A1 (en) * 1997-08-06 2002-01-03 Ronald Roscoe Bush Secure encryption of data packets for transmission over unsecured networks
US6252958B1 (en) 1997-09-22 2001-06-26 Qualcomm Incorporated Method and apparatus for generating encryption stream ciphers
DE19924986B4 (de) * 1998-05-29 2006-03-23 Hitachi, Ltd. Verschlüsselungs-Konversionsvorrichtung, Entschlüsselungs-Konversionsvorrichtung, kryptografisches Kommunikationssystem und elektronische Gebühren-Sammelvorrichtung
JP3521788B2 (ja) 1998-06-16 2004-04-19 凸版印刷株式会社 ラベル
US6275586B1 (en) * 1998-09-10 2001-08-14 Igt Cryptographically secure pseudo random number generator
WO2000056004A1 (en) * 1999-03-16 2000-09-21 Mischenko Valentin Alexandrovi Method and apparatus for encoding and decoding information
JP3030341B1 (ja) 1999-03-29 2000-04-10 郵政省通信総合研究所長 ランダムなベクトル列の出力装置、出力方法、および、情報記録媒体
US7006633B1 (en) * 1999-07-16 2006-02-28 Global Encryption Standard Corporation Global encryption system
US6804354B1 (en) 1999-12-02 2004-10-12 Honeywell International Inc. Cryptographic isolator using multiplication
AU2001294524A1 (en) * 2000-09-07 2002-03-22 Ivan Vesely Cascaded stream cipher

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621661B (zh) * 2008-06-30 2013-02-13 北京中星微电子有限公司 一种音视频加密解密传输系统
CN102216967A (zh) * 2008-08-25 2011-10-12 索尼公司 数据转换装置、数据转换方法和程序
CN102216967B (zh) * 2008-08-25 2013-12-11 索尼公司 数据转换装置和数据转换方法
CN111310220A (zh) * 2020-03-12 2020-06-19 四川大学 基于新型三维矢量分解的彩色图像加密方法
CN111310220B (zh) * 2020-03-12 2023-07-28 四川大学 基于新型三维矢量分解的彩色图像加密方法

Also Published As

Publication number Publication date
US20030044008A1 (en) 2003-03-06
CN1332338C (zh) 2007-08-15
US20090245508A1 (en) 2009-10-01
DE60208743T2 (de) 2006-07-20
US8265268B2 (en) 2012-09-11
JP2003066834A (ja) 2003-03-05
US7548618B2 (en) 2009-06-16
DE60208743D1 (de) 2006-04-06
EP1289186A2 (en) 2003-03-05
JP4191915B2 (ja) 2008-12-03
EP1289186B1 (en) 2006-01-18
EP1289186A3 (en) 2004-03-31

Similar Documents

Publication Publication Date Title
CN1647139A (zh) 数据变换装置和数据变换方法
CN1157020C (zh) 提高了安全性的密码处理装置
CN101040306A (zh) 伪随机数生成装置
CN1922643A (zh) 加密系统、加密装置、解密装置、程序和集成电路
CN1977250A (zh) 进行加密或解密的计算机系统和计算机程序
CN1726669A (zh) 数据分割方法和使用异或运算的装置
CN1665185A (zh) 内容提供系统、用户系统、跟踪系统、装置及方法
CN1822538A (zh) 加密方法,加密装置,解密方法和解密装置
CN1898621A (zh) 内容输出设备、内容分发服务器及密钥发布中心
CN1531241A (zh) 密码重构方法、分散密码重构装置及密码重构系统
CN1142718A (zh) 通信设备和通信系统
CN1960190A (zh) Ldpc码校验矩阵构造方法及利用该方法的编码解码装置
CN101053200A (zh) 信息处理设备、信息存储媒体、内容管理系统、数据处理方法、以及计算机程序
CN1848128A (zh) 信息处理器、信息处理方法和计算机程序
CN1751516A (zh) 用于发送和接收映象数据的强势系统
CN1774886A (zh) 信息处理方法,解密处理方法,信息处理设备和计算机程序
CN1199177C (zh) 可抑制电路规模能进行高速纠错的纠错装置和解码装置
CN1787525A (zh) 双证书在ssl协议中的应用方法
CN101044450A (zh) 处理器
CN1633749A (zh) 获得循环冗余码
CN1436004A (zh) 正交变换、逆正交变换方法及装置、编码、解码方法及装置
CN1860722A (zh) 密钥配送系统
CN1148744C (zh) 调制设备和方法
CN1405703A (zh) 转换器、转换方法、加密/解密系统、程序和记录媒体
CN1300972C (zh) 时钟信号切换装置、时钟信号切换方法、数据总线切换装置及数据总线切换方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070815

Termination date: 20110830