生成用于检测在处理期间加密数据的虚假改造的数据的设备及方法

文档序号:6424826阅读:247来源:国知局
专利名称:生成用于检测在处理期间加密数据的虚假改造的数据的设备及方法
技术领域
本发明涉及用于生成能够检测伪造电子数据的加密数据的加密技术,以及用于对加密数据进行解密的解密技术。
背景技术
经过网络发送和接收要求版权保护的程序及数据或高度保密数据,并且将它们记录在只读光盘(CD-ROM)或其它记录介质上并进行商业化分发。这类数据可被未经授权访问该数据的第三方来存取和伪造。为了防止这一事件的发生,对该数据进行加密。
例如,如参照图5所述,对要通信的数据进行加密。最初,发送者读取要加密的数据(步骤(S)1001),并且利用哈希函数来计算报文摘要(MD),以及计算用于检测伪造的校验字符串(S1002)。利用不同于计算MD的手段可以检测伪造。它可以通过不同手段、例如应用循环冗余码校验(CRC)码来进行检测。然后,依照指定的加密技术来对要加密的数据进行加密(S1003),并且将在S1002所获得的MD附加于加密数据,并由此将它们发送到对方(S1004)。
尽管未示出,但接收者实施这一处理的逆向形式。更具体而言,具有已接收的加密数据的接收者最初执行解密处理,然后计算MD。比较这个计算出的MD和附加于已接收的加密数据的MD。如果它们匹配,则判定已接收数据是无伪造的正常数据。
图16示意性示出了上述数据流程。在图16中,先将要加密的数据101分成z个子数据Ni,其中i=1至z。在S1和S2,为每个数据Ni使用哈希函数来执行哈希函数处理,并且使用加密处理信息及参数修改部分来执行加密处理。作为结果,生成了加密数据Mi,其中i=1至z。在这种情况下,将哈希函数处理的最终结果附加于加密数据M1-Mz,以作为伪造检测的校验字符串MD,从而完成加密数据102。为了对加密数据102进行解密,最初在S3,利用解密处理信息及参数修改部分,使加密数据Mi经过解密处理,从而获得由数据Pi所形成的解密数据103,其中i=1至z。接着,在S4,所有数据Pi经历哈希函数处理,来计算校验字符串MD。将计算出的校验字符串MD与包含于加密数据102中的伪造检测校验字符串MD进行比较,且如果两个MD相匹配,则判定加密数据M1-Mz不是伪造数据,而如果两个MD不匹配,则判定该数据是伪造数据。
上述常规加密处理需要两步计算伪造检测校验字符串,以及对数据进行加密。所述解密处理同样需要两步对数据进行解密,以及计算伪造检测校验字符串以供比较。这些步骤中的每一步都具有十分大量的处理,并且执行加密与加密处理的设备、在它们完成加密以供传输和完成解密以供再现之前,将会需要很长一段时间。这正是实时执行处理的障碍,例如经由网络将来自于服务器的内容分发到对应于客户端的移动终端上,并且立即在该移动终端上再现所述内容。换句话说,具有低处理能力的移动终端,需要很长一段时间来再现所接收到的内容,这样的移动设备提供了很差的实用性。
此外,尽管如此,合法获取的内容仍然会使数据部分丢失,或者被经由网络在发送与接收期间的其它数据、或者在具有存储于其中的内容的介质中的其它数据所代替。在此情况下,为了再次获得合法内容,就必须接收该内容的全部数据,并相应地耗费十分长的一段时间来传递数据。
日本已公开专利2000-122861号公开了用以防止软件、数据等等的伪造的技术。在这个技术中,使用如上所述的这类哈希函数来检测伪造。此外,在这个技术中,将要压缩的数据划分成多个块,每一块都当作一个单元,并且一个块不论何时经过加密处理,皆要计算所述块的加密密钥,这种计算明显耗费时间。

发明内容
本发明针对一种使处理量降低的设备和方法,一种促使计算机执行所述方法的程序,一种在其中记录有所述程序的介质。
为了实现上述目的,本发明在一方面,提供了对数据进行加密以生成加密数据的加密方法及设备。当实施此加密时,计算加密结果。所述结果由数据来表示,所述数据将被附加于加密数据。这个表示加密结果的数据,表示用于检测加密数据是否为伪造数据的伪造检测数据。因此,当生成加密数据时,能够获得伪造检测数据。这样就能消除独立于生成加密数据而计算伪造检测数据的需要。能够以减少的处理量来实现加密。
为了实现上述目的,本发明在另一个方面,提供了一种检测加密数据的伪造的方法及设备。其接收加密数据并对加密数据进行解密,以生成解密数据。当实施此解密时,计算解密结果。所述结果由数据来表示,所述数据表示用于检测加密数据是否为伪造数据的伪造检测数据。因此,当生成解密数据时,能够获得伪造检测数据。这样就能消除独立于生成加密数据而计算伪造检测数据的需要。能够以减少的处理量来实现解密。
在检测加密数据伪造的上述方法及设备中,最好按每个指定大小的数据块对加密数据进行解密,以生成数据块的解密块数据。对于当实施解密时所计算的每个解密块数据,将表示对加密块数据进行解密的结果的数据同附加于数据块的伪造检测数据进行比较,并根据比较结果来检测加密数据是否为伪造数据。对于每个数据块,所述加密数据都能将伪造检测数据附加于其上。可为每个数据块判断加密数据是否为伪造数据。如果判定伪造存在,则就能按块来对加密数据的伪造部分进行定位。除了对应于所述伪造部分的数据块之外,也能对其它数据块正常进行解密。
本发明在又一个方面,提供了一种再现先前已分成多个块的加密数据的方法及设备。其从指定块中顺序提取部分数据。利用对先前所提取的部分数据进行解密的结果,来顺序计算对当前所提取的部分数据进行解密的结果,并且利用所顺序计算的对数据进行解密的结果,来生成解密数据。将表示在生成解密数据过程中所计算的最终解密结果的数据同先前被关联于指定块的伪造检测数据进行比较,并根据比较结果来判断是否应该再现与已生成的指定块相对应的解密数据。
因此,针对每个指定块,可将伪造检测数据关联于加密数据。可为每个指定块判断加密数据是否为伪造数据。可为每个指定块判断相应的解密数据是否可再现。
在再现加密数据的上述方法及设备中,加密数据最好是通过对要再现的内容进行加密而获得的数据,并且根据加密数据的多个块,可以选择并解密对应于数据大小的一块或多块,其中所述数据大小对应于可一次再现的内容量。
内容的一个选定块或多个选定块可以比其它块更早被解密,以供再现。对加密内容进行再现,可以在全部内容都完成解密之前开始。


在所述附图中图1是第一实施例中的加密处理的流程图;图2是第一实施例中的解密处理的流程图;图3示意性示出第一实施例的加密与解密处理中的数据流程;图4A和4B是专门作为举例、用来说明第一实施例的加密与解密处理的示意图;图5是专门作为举例、用来说明第一实施例的加密处理的图;图6A、6B和6C示出根据作为举例的第二实施例的数据结构;图7是第二实施例中的加密处理的流程图;图8是第二实施例中的解密处理的流程图;图9是第三实施例中的分发系统的配置图;图10A和10B作为举例示出第三实施例中电子书内容的数据结构;图11是表示第四实施例的解密处理中的数据流程的示意图;图12是第四实施例中的解密处理的流程图;图13是表示第四实施例的解密处理中的数据流程的示意图;图14示出第五实施例中的信息处理设备的配置;图15是常规加密处理的流程图;和图16是用来说明常规加密与解密处理中的数据流程的示意图。
实施本发明的优选方式在下文中,将参照附图更加清楚地对本发明的实施例作出描述。
第一实施例图1示出了依照本发明实施例的加密处理的过程。这个过程采用了适用于任何加密系统的加密算法,在所述加密系统中加密结果与解密结果是等同的信息,并且在加密与解密处理中,应用先前的运算结果来随后计算当前的运算结果。照此,可以使用公用密钥加密系统、或者其它类似的、一般所采用的加密系统,并且例如,所述系统可以通过依照称作密码分组链接(cipher block chainingCBC)模式的过程,处理众所周知的数据加密标准(DES)来加以实现。注意到CBC模式是涉及链接的加密方法,而且接连地采用先前加密结果来计算当前加密结果。
参照图1,在加密处理中,最初获得要加密的数据(S101)。尽管未示出,但在每个实施例中,都是在通用个人计算机、移动终端设备、移动电话机或类似的信息处理器设备(下文中简单称为“信息处理设备”)中执行加密与解密处理的。照此,例如可从CD-ROM或其它类似的记录介质、内置于信息处理设备的硬盘那里以及经由网络从服务器那里获得要加密的数据。
然后,将已获得的要加密的数据依照加密算法来进行加密(S102)。在这种情况下,利用指定大小的数据单位、从顶部顺序地对要加密的数据进行加密。加密数据由此而生成。对于每个数据单位,执行计算且由此发生加密,所述数据单位提供用以计算后续数据单位的加密处理信息的加密参数值(下文中称为“加密处理信息”)。
当要加密的全体数据都已被加密并且加密数据由此而生成时,使用当前的、最终的加密处理信息来生成伪造检测数据(S103)。将由此而生成的伪造检测数据附加于加密数据。所述加密数据由此而完成(S104)。所述加密处理由此而结束。
图2示出了解密处理的过程。这个过程采用了与上述加密算法相对应的解密算法。
所述解密处理基本上是加密处理的逆向形式。参照图2,最初读取如上所述的已生成的加密数据(S201)。由于解密处理同样是在如上所述的这种信息处理设备中重新执行的,因而也能获得加密数据,如上面就要加密的数据而言所述的那样,例如从CD-ROM或类似的记录介质、内置于信息处理设备的硬盘那里以及经由网络从服务器那里获取上述加密数据。
接着,将已获得的加密数据依照解密算法进行解密(S202)。一旦加密数据已经被完全解密,就能检测在加密处理中计算出的与加密处理信息相对应的解密处理信息。按类似于在加密处理中使用的方式,使用已检测到的解密处理信息来生成伪造检测数据(S203)。
判断在S203所生成的伪造检测数据与在S201读取的伪造检测数据是否相匹配(S204)。如果它们匹配,则加密数据或由加密数据表示的要加密的数据就不是伪造数据,并且获得解密数据(S205)。如果所述伪造检测数据不匹配,则加密数据或由加密数据表示的要加密的数据是已被伪造过的,并且相应地执行指定的错误处理(S206)。
现在进行参考来更清楚地描述上述加密与解密处理的过程。
图3示意性示出了处理中的数据流程,在所述处理中对要加密的数据进行加密并且继而进行解密,从而获得原始数据(要加密的数据)。
最初参照图3,将描述加密步骤(S102)。要加密的数据301具有每个预定、指定大小的数据单位,所述数据单位依照加密算法被加密。在此例中,要加密的数据301具有每个已顺序加密的数据Di,其中i=1,2,3…,z。
在加密步骤(S102)中,要加密的数据301具有依照指定加密算法所提取并加密的数据Di,用以生成加密数据Ci,其中i=1,2,3…,z。在这种情况下,参考加密处理信息PFj来转换数据Di,其中j=1,2,3…,z,z+1。注意到数据D1是参考加密处理信息PF1来转换的,其中在加密处理之前先通过加密密钥302初始化所述PF1。通过所使用的加密算法来提前判定是如何通过加密密钥302来计算加密处理信息PF1的,以及确定将数据Di转换为加密数据Ci的处理。现在将参照图4A来描述加密算法的一个例子。
图4A示出了当对数据Di进行加密以生成加密数据Ci时,在图3中所用的加密处理的过程。在图4A中,输入数据A表示图3中的要加密的数据Di,而输出数据B表示图3中的加密数据Ci。这个加密处理包括对应于加密处理信息PFj的内部转换参数401、转换部分402以及参数修改部分304。内部转换参数401具有参数X,Y和Z,并且在加密处理执行以前,由初始值为K的加密密钥302来对它们进行初始化。这里,作为初始状态,假定参数X=6,参数Y=2,而参数Z=1。转换部分402使用数据Di(输入数据A)及内部转换参数401(参数X,Y和Z)来执行指定运算,从而计算加密数据Ci(输出数据B)。
更具体而言,当接收输入数据A时,依照在转换部分402中所示的指定表达式来计算输出数据B。注意到在所述表达式中,由圆形加号来表示的符号,是指异运算。换言之,通过输入数据A和内部转换参数401(参数X,Y和Z)来计算输出数据B。将运算结果或输出数据B输出作为加密数据Ci,并且它也被输入到参数修改部分304。参数修改部分304接收加密数据Ci,并依照所示指定的转换表达式来使用该加密数据Ci,从而更新参数X,Y和Z的值。
参数修改部分304将作更具体地描述。例如,如果在图4A中输入数据A为1,则转换部分402执行指定运算并且输出数据B为4。输出数据B(=4)被输入到参数修改部分304,并为参数X,Y和Z执行运算。运算的结果是,参数X,Y和Z值被分别更新为3、6和2。更新后的参数X,Y和Z值被用作在对要加密的数据301的数据D1的后继数据D2进行加密时的内部转换参数401。此后,为每个数据Di重复相似的处理,直到达到要加密的数据301的最终数据Dz。
要加密的数据301具有如上所述的已被相继加密的每个数据Di,以用于生成加密数据Ci。接着,在获取伪造检测数据(S103)的步骤中,获得对应于最终的内部转换参数401的加密处理信息PF(z+1)作为伪造检测数据308。将已获得的伪造检测数据308附加到加密数据C1-Cz上,以完成加密数据305。加密处理由此而结束。
现将对图3中所示的解密步骤202进行描述。当获得加密数据305时,使用与加密算法相应的解密算法,来按在加密处理中所应用的数据单位执行解密处理。在解密步骤202,加密数据305具有已提取的加密数据Ci,并且对照解密处理信息DFj将所述加密数据305转换成原始数据Di,其中j=1,2,…z,z+1。作为结果,生成了数据D1-Dz的解密数据307。在解密处理之前,先利用等同于在加密处理中所采用的加密密钥302来初始化解密处理信息DF1。在图4B中示出了解密处理的一个例子。
注意到在解密处理中使用的加密密钥302,可由发送加密数据305的用户预先告知。或者,可将所述密钥包含在加密数据305的一部分当中,并且在发送加密数据305的同时将所述密钥发送出去。这里,在解密处理中所采用的加密密钥302可以经任意过程加以获得。
图4B示出了对图3中加密数据Ci进行解密以生成数据Di作为解密数据307的解密处理的过程。在图4B中,输入数据B表示图3中的加密数据Ci,而输出数据A表示图3中解密数据307的数据Di。如在图4A和4B中所示,这个解密处理类似于加密处理,包括与解密处理信息DFj相对应的内部转换参数401、转换部分402以及参数修改部分304,其执行对应于加密处理的逆向形式的运算。内部转换参数401具有参数X,Y和Z,并且这些参数都具有在解密处理之前利用初始值为K的加密密钥302先被初始化的值。这里,同样是在加密处理中,将参数X,Y和Z分别初始化为数值6、2和1。转换部分402使用加密数据Ci(输入数据B)和内部转换参数401(参数X,Y和Z)来执行指定的运算,从而对加密数据Ci进行解密以提供数据Di(输出数据A)。换言之,输出数据A是依据输入数据B和内部转换参数401(参数X,Y和Z)来加以计算的。输入数据B被输入到转换部分402以及参数修改部分304。参数修改部分304按照已接收的输入数据B和所示的指定转换表达式,来更新内部转换参数401(参数X,Y和Z)的值。
这里,如果要加密的数据D1具有数值1,那么加密数据C1就具有数值4。因此,在图4B中值为4的数据B是输入,而转换部分402对其执行运算,并输出值为1的数据A,所述数据A与原始数据D1同值。当加密数据305由此而无伪造时,加密处理信息PFj与解密处理信息DFj相等。由此,如果要加密的数据301具有每个数据单位或者具有伪造的部分数据Di的数据D1-Dz,那么对应于数据Di的加密处理信息和解密处理信息就不匹配,并且加密与解密处理信息PFj与DFj可以分别用作伪造检测数据308与309。
此外,数据B(具有数值4)被输入到参数修改部分304,并且对内部转换参数401(参数X,Y和Z)进行运算,并分别将它们更新为数值3、6和2。将具有已更新值的参数在解密数据C2时用作内部转换参数401。此后,类似地重复解密处理,直到达到数据Cz为止。
针对加密数据C1到Cz,执行上述解密处理以生成解密数据307的数据D1-Dz。然后,在S203,获得(或生成)最终的解密处理信息DF(z+1),以作为伪造检测数据309,并且在S204,对关于附加到加密数据304上的伪造检测数据308与所获得的伪造检测数据309是否相匹配而作出判定。如果所述数据相匹配,则就判定加密数据305或者要加密的数据301被正常接收,而没有被伪造。否则,就判定所述数据已被伪造。
内部转换参数的另一个例子对于如上所述的伪造检测数据308而言,正好使用了内部转换参数401中参数X,Y和Z的三个值,并且如图1中所示的生成伪造检测数据的步骤103并未实施任何步骤。然而,如果使用不同类型的加密处理,那么就要结合内部转换参数401来处理大量数据。在此情况下,与加密数据305有关的附加数据量就不容忽略。在此情况下,在生成伪造检测数据(S103)的步骤中,可以从最终的内部转换参数401来获得报文摘要(MD),并且将所述报文摘要作为伪造检测数据而附加于加密数据305(S104)。
图5示出了与如之前所述的加密步骤不同的加密步骤。这里,未示出相对应的解密处理,这是由于其配置就是加密处理的逆向形式。图5的加密系统具有对应于加密处理信息PFj的内部转换参数501、转换部分1202以及参数转换部分1203。在图5的系统中,按所预定的那样,将作为数据A而接收的要加密的数据301顺序转换成加密数据305,并输出为数据B。在此例中,内部转换参数501具有256个转换表T(0),T(1),…,T(255)。转换部分1202使用转换表T(0)至T(255)、按字节将要加密的数据301转换成加密数据305。参数修改部分1203使用输出的加密数据305的信息来更新转换表T(0)至T(255)的内容(或值)。在加密处理之前,先利用初始值为K的加密密钥302对所述内部转换参数501的内容进行初始化。
例如,如图5中所示,如果转换表T(0)具有数值6、转换表T(1)具有数值2、……、且输入数据A为0,那么输出数据B就为6,而如果输入数据A为1,则输出数据B就为4。
参数修改部分1203从已接收输出数据B以及特定的函数“f”和“g”获得将要交换的两个值“idx1”和“idx2”,并且交换表T(idx1)与T(idx2)的值。例如,如图5中所示,“idx1”=0而“idx2”=4,并且交换表T(0)与T(4)的值。作为结果,表T(0)具有从6更新为4的值,且类似地表T(4)具有从4更新为6的值。
尽管这里未示出,但是解密处理具有作为内部转换参数的表,所述表执行与加密处理转换的逆向形式相对应的转换,并且当执行与加密处理转换的逆向形式相对应的转换处理的同时,所述解密处理顺序地更新表的内容。
对于图5,内部转换参数501对应于256个数据大小,所述数据大小非常大从而无法用作伪造检测数据308。因此,转换内部转换参数501以提供降低的数据量。例如,这可以通过利用能依据大量数据来生成特定字节数量的数据的诸如MD5(报文摘要5)、安全哈希算法1(SHA-1)、以及类似算法之类的哈希函数来完成,不过不局限于此。或者,可以不使用哈希函数,并且内部转换参数501可能仅仅具有提供作为已转换数据的一部分。如果将内部转换参数501用作伪造检测数据308,则这种转换处理就能降低伪造检测数据308的量。
此外,解密处理也能使用在生成伪造检测数据的步骤103中所使用的手段,来获得相同的结果。因此,通过将附加于加密数据的伪造检测数据与在解密处理过程中所获得的伪造检测数据进行比较,就能够作出关于要加密的数据301或加密数据305是否已被伪造的判定。
因此,通过执行如下处理就降低伪造检测数据308的大小,所述处理为内部转换参数501使用了哈希函数。一般而言,由于与要加密的数据301作了比较,内部转换参数501具有非常小的数据量,并且使用哈希函数来实现转换处理,如上所述那样,不会引起降低整体处理效率。
第二实施例在第一实施例中,利用在要加密的数据301被完全加密(S102)和解密(S202)时所获得的加密处理信息PF(z+1)和解密处理信息DF(z+1),来生成伪造检测数据308和309。在本发明的实施例中,将要加密的数据301划分成多个块,并且利用在每个块完全被加密时所获得的加密处理信息以及每个块被完全解密时所获得的解密处理信息,来生成伪造检测数据。
图6A示出了已被划分成n个块Bk的要加密的数据301,其中k=1,2,3,…,n。虽然期望块Bk是所用加密处理单位的整数倍,但是所述块可以具有依处理设备的存储器容量、处理能力等等而确定大小的数据,其中所述处理设备发送及接收要加密的数据301。例如,DES允许采用64位单位进行加密,而由此块Bk具有64位整数倍的大小。如果按位来提供加密,则块Bk就可具有任意大小。
图6B示出了在对图6A中所示的要加密的数据301进行加密之后所获得的加密数据305的数据结构。如图6B中所示,加密数据305由加密块CBk和伪造检测数据BDk构成,其中k=1,2,3,…,n,并且加密块CBk与伪造检测数据BDk之间存在一一对应。每当对块Bk完全进行了加密,就会生成伪造检测数据BDk,并将数据BDk附加到随后与之相应的加密块CBk上。更具体而言,轮流为每一块Bk记录下加密CBk及为块CBk的数据所计算的伪造检测数据BDk。在本发明的实施例中,要加密的数据305可具有除上述结构之外的结构。例如,如图6C中所示,可将加密块CB1-CBn数据和伪造检测数据BD1-BDn分别记录在不同位置上。
依照本发明的实施例,加密与解密处理分别如图7与8中所示那么执行。类似于第一实施例中那些步骤的任何步骤都将不作描述。
在加密处理中,如图7中所示,最初从要加密的数据305来获得预定大小的单个块Bk的数据(S601),并将该数据加密(S602)。当块Bk的数据完全被加密时,获得加密处理信息PFk,并且利用这个信息来生成伪造检测数据BDk(S603),并将加密块CBk及伪造检测数据BDk存储起来以提供如图6B或6C中所示的数据结构(S604)。针对要加密的数据301的所有块Bk重复这一系列步骤(S605)。由此而获得(生成)加密数据305。
在解密处理中,如图8中所示,最初读取这样所获得的加密数据的伪造检测数据BDk和与之相应的加密块CBk(S701),并且实施解密处理(S702)。然后,使用解密处理信息DFk来生成伪造检测数据(S703),并且作出关于已生成的伪造检测数据与在S701所读取的伪造检测数据BDk是否匹配的判定(S704)。如果它们匹配,则就获得解密数据(S705)。否则,判断加密数据305、或者由加密数据305所表示的要加密的数据301已被伪造,并且对于解密处理将会产生错误(S706)。类似地,针对所有加密块CBk(S707)重复这一系列的步骤,从而获得解密数据307。
因此,将要加密的数据301划分成多个块Bk,并将伪造检测数据BDk附加到每块Bk上,使对应每块Bk的要检测伪造能够找出已伪造的部分要加密的数据301的位置。除了与已伪造的部分要加密的数据301相对应的那些块之外,也能正常地对其它块Bk进行解密。例如,如果通信错误发生,且导致要加密的数据301(加密数据305)被局部破坏,则就能使所述数据被最小限度地损坏。
第三实施例同上述每个实施例的特定应用一样,第三实施例针对的是分发电子书数据(在下文中称为“电子书内容”)的系统。
图9示出了电子书内容分发系统。这个系统包括内容产生设备801、服务器设备802、数据显示设备803,以及允许设备801与802相互之间进行通信、同时允许设备802与803相互之间进行通信的网络804。内容产生设备801由通用个人计算机构成,用以产生电子书内容。内容产生设备801包括内容输入部分805、实施如先前所述的这种加密处理的数据加密处理部分、以及发送与接收部分807。内容创建器经由内容输入部分805来输入电子书内容800。已输入的电子书内容800由加密处理部分806来进行加密,并且经由网络804、通过发送与接收部分807将已加密的电子书内容800发送至服务器设备802。
虽然这里的电子书内容800从外部被输入到内容产生设备,但是用户可以操作内容输入部分805来产生所述内容。
电子书内容800具有例如被分隔成要加密的数据301和加密数据305的数据结构,如图10A和10B中所示的那样。一般而言,通常将电子书内容配置成包含多个文件,这些文件包括描述主文本的文本文件、诸如图表、图片或照片之类的图像文件、诸如音效之类的音频文件等等。在本实施例中,如图10A中所示,对应于要加密的数据301的电子书内容800从顶部开始包括有表明电子书内容800中所包含文件数目的数据FM和每个文件的文件信息FDh,其中h=1,2,3,…,n。如图10B中所示,对应于加密数据305的电子书内容800包括对应于各个文件信息FDh、且通过对文件信息FDh的内容进行加密而获得的文件数据FDCh,其中h=1,2,3,…,n。例如,如果电子书内容800包含文本文件、图像文件和音频文件这三个文件,则文件信息FD1、FD2和FD3就将分别包括文本数据、图像数据和音频数据。文件信息FDh包括相应文件的信息,就比如文件名、与文件中所存储数据相关的偏移量值、文件中所存储的数据大小、以及所使用的加密方法和密钥。
由加密处理部分806依照先前在每个实施例中所述的方法来对文件信息FDh进行加密。对于文件信息FD1,将感兴趣的文件划分成多个块,并对其按块进行加密,以转换成文件信息FDC1。对于文件信息FD2,使感兴趣的文件全部都经过加密,以转换成文件信息FDC2。按块还是整个地对文件的数据进行加密,要依数据的类型而定。更具体而言,如果数据为文本数据、音频数据或电影图像(视频)数据,则按块来加密数据就允许对数据进行随机访问和再现以进行解密。这能提供比对数据进行完全解密的情况更短的访问时间。此外,如果数据是不被部分访问的静态图像或类似数据,则可对数据整个地进行完全加密。
在图9中,服务器设备802由通用个人计算机构成,并且包括发送与接收部分808和内容数据库809。通过内容产生设备801,由发送与接收部分808来发送和接收已加密的电子书内容800。所接收到的电子书内容800被存储到内容数据库809中。数据显示设备803经由网络804来发出发送请求。所述请求被发送与接收部分808接收,并且作为响应,从内容数据库809中读取由已接收请求表示的、与电子书相应的加密内容,并且经由网络804、通过发送与接收部分808将所述内容发送至数据显示设备803。
数据显示设备803由信息处理设备构成。数据显示设备803包括经由网络804发送和接收数据的发送与接收部分810、处理用户指令的用户指令处理部分811、存储电子书内容的存储设备812、对加密电子书内容进行解密的数据解密处理部分813,已如前所述的、以及包括在屏幕上显示电子书内容的显示单元814。
用户经由用户指令处理部分811、根据显示在屏幕上的电子书内容的菜单来选择期望的电子书内容。作为响应,发送与接收部分810向服务器设备802发送请求,以发送选定的内容。随后,服务器设备802发送加密的电子书内容,所述内容又由发送与接收部分810加以接收并存储到存储设备812中。由数据解密处理部分813对存储到存储设备812中的加密电子书内容进行解密,并且数据显示设备814将作为结果的、原始电子书内容800显示在屏幕上。在这种情况下,如果作出适配,对仅能一次显示的数据量进行解密,则就能以比当解密全部数据时所花时间更短的一段时间来解密和显示数据。更具体而言,按照对应于显示缓冲器大小的块数,来对按块进行加密的电子书内容进行解密,所述显示缓冲器与数据显示单元814相关联。对于电子书内容,最初都典型地显示顶部页。由此,按照对应于显示缓冲器大小的块数、从顶部开始对电子书内容800进行解密。
此外,当经由用户指令处理部分811接收用户指令例如来进行翻页、输出声音等之时,从存储设备812那里获取指令所需的数据,并由数据解密处理部分813来对其进行解密,并且当实施解密时判断伪造是否存在。如果判定伪造存在,则数据显示单元814就显示数据,或者音频输出部分(未图示)就输出声音。如果判定所述数据为伪造数据,那么就可以相应地告知用户以中断当前处理。
尽管在本实施例中对电子书内容进行加密并从而进行分发,但是也可以对除电子书内容之外的信息进行加密和分发。例如,可以对音乐数据、运动图片数据以及程序进行加密和分发。
第四实施例第二实施例的另一个特定应用,将参照图11和12来作描述。在本实施例中,考虑的是一种数字内容分发系统。为说明起见,这个系统类似于图9中所示的系统。在本实施例中,数字内容不限于电子书内容,而可以为音乐数据、视频数据等等。
典型地,可以经网络来获取数字内容,并且为说明起见,第三方未对经网络所发送和接收的数据进行伪造。换言之,为说明起见,仅仅将能合法获得的数据经网络进行传递。然而,经网络而通信的数据会由于通信错误等原因而被丢失。在这种情况下,合法获得的数字内容就无法得以再现。为了再现数字内容,就必须再次访问并获取数字内容的所有数据。在本实施例中将要描述能解决如下情况的过程,所述情况是当在网络上通信数据时,数据就被丢失。
图11示意性示出了图9的服务器设备802中和数据显示设备803中的数据。更具体而言,该图示出了与在服务器设备802当中存储于内容数据库809中的加密数据305相应的数字内容,在网络804上被发送到数据显示设备803,并且被存储到存储设备812中。对应于数字内容的加密数据305具有每个加密块CBk和与之相应的伪造检测数据BDk被分开的结构,如在第二实施例中所描述的。为说明起见,在数据显示设备805中存储于存储设备812中的且与数字内容相应的加密数据305的加密块CB2,例如因通信错误而具有伪造的数据。
当数据显示设备803操作以允许再现(或解密)时,由相应的伪造检测数据BD2来在加密块CB2中检测伪造。作为响应,数据显示设备803告知服务器设备802加密块CB2被伪造。服务器设备802随应地仅将加密块CB2及伪造检测数据BD2重发至数据显示设备803。已接收到这些重发数据的数据显示设备803能够提供再现。应当注意到仅仅把全部内容(或全部加密数据305)的一部分从服务器设备802重发至数据显示设备803。如果检测到伪造,并且合法数据将被再次通信及获取,则其就能在一段减少的时间中加以通信。
图11中与数据显示设备803有关的过程,将参照图12的流程图来加以描述。现在将对数字内容进行解密和再现。更具体而言,数据显示设备803最初获取加密数据305的第一加密块CB1以及伪造检测数据BD1(S1301)。对已获得的加密块CB1进行解密(S1302)。用类似于第二实施例中所述的方式来实施这一解密。利用解密处理信息来生成伪造检测数据(S1303)。将附加于加密块CB1的伪造检测数据BD1与在S1303所生成的伪造检测数据进行比较,来判断它们是否匹配(S1304)。如果匹配,则就获取解密数据(S1305),并且判断是否存在后续加密块(S1307)。如果存在,则处理就返回至S1301。否则,处理就结束。
如果判定所述数据不匹配,那么就判断加密块CB1、或者由加密数据CB1所表示的块B1被伪造,并再次经网络804从服务器设备802那里获取加密块CB1(S1306)。因此,就能解决因网络804上的通信错误而造成的伪造。
尽管在图11中数字内容是存储在数据再现设备803中的存储设备上812的,但是也可通过网络804来接收数字内容并加以再现。例如,从内容的顶部顺序地再现音乐、图像等。照此,如果数据顶部存在,则就能开始再现。换言之,数据被通过网络804接收,而同时所述数据能够被再现。图13示意性示出了在这种情况下服务器设备802中的数据和数据显示设备803中的数据。
图13示出了在网络804上、将在服务器设备802中存储于内容数据库809中的加密数据305的数字内容发送至数据显示设备803。在图13中,服务器设备802仅仅将加密块CB1和CB2传递至数据显示设备803上,并且后续加密块由要获得的数据900来表示。在数据显示设备803中,数据解密处理部分813开始解密处理。这样一来,就相继从加密块CB1那里读取数据,并且让已读取的加密块CB1数据经过解密以及伪造检测。如果检测表明数据未被伪造,则就直接对其进行再现。如果已读取的加密块CB2被伪造,则数据显示设备803就将信息901输出到服务器设备802上,以表明加密块CB2被伪造,并且数据显示设备803就再次从服务器设备802那里接收和获取加密数据块CB2以及相应的伪造检测数据BD2。此后,类似地获取并再现后续块。
这种过程提供了降低的传输时间,并且经过网络804可连续不断地获取加密数据305、对所述加密数据进行解密和再现。
第五实施例在上述每一个实施例中所述的加密与解密处理,均能部分或全部地以执行这种过程的程序或硬件逻辑形式来提供(所述程序是指适用于由计算机执行处理的有序指令串)。
如果其是以程序形式提供的,则就能将该程序安装在信息处理设备中以实施期望的处理。在这种情况下,可以把所述程序预先记录在计算机可读记录介质中并加以提供。作为选择,可以经网络将其从服务器设备上下载或提供到信息处理设备中,或者可预先将其安装在信息处理设备中并加以提供。
图14示出了信息处理设备的配置,所述信息处理设备能执行如上述每一个实施例中所述的加密与解密处理的程序。图14的配置对应于图9的内容产生设备801、服务器设备802及数据显示设备803中每一个的配置。参照图14,所述信息处理设备包括液晶或阴极射线管(CRT)等监视器110、键盘150、鼠标160、中央处理单元(CPU)112、存储器124,所述存储器配置成包括只读存储器(ROM)或随机访问存储器(RAM)、硬盘126、可拆卸地接纳FD 132以存取FD 132的软盘(FD)驱动设备130、可拆卸地接纳CD-ROM 142以存取CD-ROM 142的光盘只读存储器(CD-ROM)驱动设备140、以及将所述信息处理设备连接于网络804的通信接口180,其中所述网络804适用于诸如因特网之类的各种网络。这些组件均通过总线而链接。可以给所述信息处理设备提供磁带设备,所述磁带设备可拆卸地接纳盒式磁带以存取磁带。
在本实施例中,上述记录介质可以是将要在图14的信息处理设备中实施的处理所需的存储器,比如存储器124本身,或者它也可以是磁带、FD 132及CD-ROM 142(未图示),或是当将其安置在磁带设备(未图示)中时可读的记录介质、FD驱动设备130、CD-ROM驱动设备140或类似的程序读取设备。总之,存储在记录介质中的程序都可由CPU122来访问并执行,或者一旦从记录介质中被读取或下载到图14中的指定存储区,例如存储器的存储区124,就由CPU122来读取并执行。这个下载程序是预先存储在感兴趣的信息处理设备中的。
注意到上述记录介质是被配置成可从信息处理设备主体上分离的介质,并且它可以是承纳固定程序的介质。例如,它可以是磁带、盒式磁带、或类似类型的带;FD 132、硬盘126或类似的磁盘;或是CD-ROM 142/磁性光盘(MO)/迷你盘(MD)/数字多功能光盘(DVD)或类似的光盘;IC卡(包括存储卡)/光卡或类似的卡;或是掩膜式ROM、可擦除可编程ROM(EPROM)、电EPROM(EEPROM)、闪速ROM或类似的半导体存储器。
此外,由于在本实施例中信息处理设备连接于上述网络804,因而记录介质可以是接收经网络804下载的程序从而使得程序流动的记录介质。如果所述记录介质接收经网络804下载的程序,则就可以预先将下载程序存储在信息处理设备的主体中,或者预先将其从另一记录介质安装到所述信息处理设备的主体中。
注意到记录介质可以存储除程序以外的内容。例如,它可以存储数据。
由此,如在每一个实施例中所述,由于实施具有伪造检测功能的加密处理,因而就可以生成转换参数值并将其用作为伪造检测数据,来消除计算伪造检测数据的处理,并且减少在加密处理中包含的量。同样也能减少解密处理的量。作为结果,加密与解密处理可以免除显著的工作量,并由此而快速地实施所述加密与解密处理。
此外,可以按块来对要加密数据进行处理,并且判断每一块是存在伪造还是不存在伪造。照此,如果数据被伪造,则就能容易地对落入伪造范围的要加密的数据(或块)进行定位。另外,在那种情况下,可以对除伪造块以外的数据正常进行解密。另外,对于具有按时序再现的数据的音乐、视频、电子书及其它类似内容而言,首先仅能对所需部分(或块)进行解密,并且可以在所有数据皆完全被解密之前开始进行再现。
尽管已经详细地描述并说明了本发明,但是应当清楚地理解上述内容仅仅是说明性和举例性的,而不是限定性的,本发明的精神和范围仅由所附权利要求来加以限定。
权利要求
1.一种加密方法,包括以下步骤对要加密的数据(301,Bk)进行加密,以生成加密数据(305,CBk)(S102,S602);和将数据(PF(z+1))附加于所述加密数据(S104,S604),所述数据(PF(z+1))表示在加密步骤实施所述加密时所计算的所述加密的结果,其中表示所述加密的所述结果的所述数据是用于检测所述加密数据是否为伪造数据的伪造检测数据(308,BDk)。
2.如权利要求1所述的方法,其中加密步骤包括以下步骤顺序提取所述要加密数据的部分的数据(Di);和使用对在提取步骤中先前所提取的所述部分的所述数据进行所述加密的结果,来顺序地计算对在提取步骤中当前所提取的所述部分的所述数据进行所述加密的结果,并且使用顺序地计算的所述加密的所述结果,来生成加密数据(305)(S102),其中表示所述加密的所述结果的所述数据表示在使用(PF(z+1))的步骤中最后计算的所述加密的所述结果。
3.如权利要求1所述的方法,其中加密步骤包括如下步骤对预定大小的每个数据块(Bk)、对所述要加密数据进行加密以生成对应于所述数据块的加密块数据(CBk);和附加步骤包括如下步骤使数据(BDk)与对应于所述数据块的所述加密块数据相关联,所述数据(BDk)表示对在加密步骤实施所述加密时所计算的每个所述数据块进行所述加密的所述结果。
4.如权利要求1所述的方法,其中表示所述加密的所述结果的所述数据是与所述加密的所述结果相对应的报文摘要,所述加密的所述结果由表示所述加密的所述结果的所述数据加以表示。
5.如权利要求1所述的方法,其中所述加密的所述结果是用在公共密钥加密系统中的全部或部分加密参数(401,501)。
6.一种检测加密数据是否被伪造的方法,包括以下步骤接收加密数据(305)(S201);和对在接收步骤中所接收的所述加密数据进行解密,以生成解密数据(307)(S202),其中当解密步骤实施所述解密时,计算所述解密的结果,并且所述解密的所述结果由数据(DF(z+1))来表示,所述数据(DF(z+1))表示用于检测所述加密数据是否为伪造数据的伪造检测数据(309)。
7.如权利要求6所述的方法,其中所述解密步骤包括顺序提取在接收步骤中所接收的部分所述加密数据的数据(Ci);和使用对在提取步骤中先前所提取的所述部分的所述数据进行解密的结果,来顺序地计算对在提取步骤中当前所提取的所述部分的所述数据进行所述解密的结果,并且使用顺序地计算的所述解密的所述结果,来生成解密数据(S202),其中表示所述解密的所述结果的所述数据表示在使用(DF(z+1))的步骤中最终所计算的所述解密的所述结果。
8.如权利要求6所述的方法,进一步包括如下步骤将所述解密的所述结果的所述数据与先前附加于所述加密数据的伪造检测数据进行比较,从而根据所述比较结果来检测加密数据是否为伪造数据(S204)。
9.如权利要求8所述的方法,其中解密步骤包括如下步骤对预定大小的每个数据块(CBk)的所述加密数据进行解密,以生成对应于所述数据块的解密块数据;和比较步骤包括如下步骤将表示与所述解密块数据相对应的所述解密的所述结果的所述数据同先前附加于与所述解密块数据相对应的所述数据块的伪造检测数据(BDk)进行比较,其中所述解密块数据是在对每个数据块的所述加密数据进行解密的步骤中、在生成所述解密块数据的过程中加以计算的,并且根据比较结果来检测所述加密数据是否为伪造数据(S704)。
10.如权利要求6所述的方法,其中表示所述解密的所述结果的所述数据是与所述解密的所述结果相对应的报文摘要,所述解密的所述结果由表示所述解密的所述结果的所述数据来表示。
11.如权利要求6所述的方法,其中所述解密的所述结果是用在公共密钥加密系统中的全部或部分加密参数(401)。
12.一种再现加密数据的方法,包括以下步骤顺序地从划分所述加密数据的多个块的指定块中提取部分所述加密数据(S1301);使用对在提取步骤中先前所提取的所述部分的所述数据进行解密的结果,来顺序地计算对在提取步骤中当前所提取的所述部分的所述数据进行所述解密的结果,并且使用顺序地计算的所述解密的所述结果,来生成解密数据(S1302,S1303);和将表示在使用步骤中最终所计算的所述解密的所述结果的所述数据同先前被关联于所述指定块的、用于检测所述指定块是否被伪造的伪造检测数据进行比较,从而根据比较结果来判断是否再现与在使用步骤中所生成的所述指定块相对应的所述解密数据(S1304)。
13.如权利要求12所述的方法,进一步包括从所述加密数据的所述多个块中分别选择出对应于所述指定块的一块或多块的步骤,其中所述加密数据是通过对要再现的内容进行加密而获得的数据,并且选择步骤选择对应于如下数据大小的所述一块或多块,所述数据大小对应于所述可一次再现的内容量。
14.如权利要求12所述的方法,其中表示所述解密的所述结果的所述数据是与所述解密的所述结果相对应的报文摘要,所述解密的所述结果由表示所述解密的所述结果的所述数据来表示。
15.如权利要求12所述的方法,其中所述解密的所述结果是用在公共密钥加密系统中的全部或部分加密参数(401)。
16.如权利要求12所述的方法,进一步包括如下步骤获取所述加密数据(S1301,S1306),其中如果在比较步骤中判定未对所述指定块进行再现,则在获取步骤中获取对应于所述指定块的所述加密数据。
17.一种通信加密数据的方法,包括以下步骤通过通信来接收加密数据,所述加密数据预先被划分成多个块(S1301,S1306);顺序地从所述多个块的指定块中,提取在接收步骤中所接收的部分所述加密数据;使用对在提取步骤中先前所提取的所述部分的所述数据进行解密的结果,来顺序地计算对在提取步骤中当前所提取的所述部分的所述数据进行所述解密的结果,并且使用顺序地计算的所述解密的所述结果,来生成解密数据(S1302);和将表示在使用步骤中最终所计算的所述解密的所述结果的所述数据同先前被关联于所述指定块的、用于检测所述指定块是否被伪造的伪造检测数据进行比较,从而根据比较结果来检测在所述加密数据的所述通信中所引入的错误(S1304)。
18.一种加密设备,包括加密装置(806),用于对要加密的数据(301,Bk)进行加密以生成加密数据(305,CBk);附加装置(806),用于将表示在所述加密装置实施所述加密时所计算的所述加密的结果的数据(PF(z+1))附加于所述加密数据,其中表示所述加密的所述结果的所述数据,表示用于检测所述加密数据是否为伪造数据的伪造检测数据(308,BDk)。
19.一种检测加密数据的伪造的设备,包括接收装置(810),用于接收加密数据(305);和解密装置(813),从所述接收装置中接收所述加密数据,对所述加密数据进行解密以生成解密数据(307),其中当所述解密装置实施所述加密时,计算所述加密的结果,并且所述结果由数据(DF(z+1))来表示,所述数据(DF(z+1))表示用于检测所述加密数据是否为伪造数据的伪造检测数据(309)。
20.一种再现加密数据的方法,包括提取装置,用于顺序地从划分所述加密数据的多个块的指定块中提取部分加密数据;顺序计算和生成装置,使用对由所述提取装置先前所提取的所述部分的所述数据进行解密的结果,来顺序计算对由所述提取装置当前所提取的所述部分的所述数据进行所述解密的结果,并根据顺序地计算的所述解密的所述结果生成解密数据;和比较装置,用于将表示由所述顺序计算装置最终所计算的所述解密的所述结果的所述数据同先前被关联于所述指定块的、用于检测所述指定块是否被伪造的伪造检测数据进行比较,从而根据比较结果来判断是否再现对应于所述指定块的所述解密数据,所述指定块由所述顺序计算装置加以生成。
21.一种通信加密数据的方法,包括接收装置(810),用于通过通信来接收加密数据,所述加密数据预先被划分成多个块;顺序提取装置,用于顺序地从所述多个块的指定块中提取由所述接收装置所接收的部分所述加密数据;生成装置(813),用于使用对由所述顺序提取装置先前所提取的所述部分的所述数据进行解密的结果,来顺序计算对由所述顺序提取装置当前所提取的所述部分的所述数据进行所述解密的结果,并根据所顺序计算的所述解密的所述结果来生成解密数据;以及比较装置,将表示由所述顺序计算装置最终所计算的所述解密的所述结果的所述数据同先前被关联于所述指定块的、用于检测所述指定块是否被伪造的伪造检测数据进行比较,从而根据比较结果来检测在所述加密数据的所述通信中所引入的错误。
22.一种用于使计算机执行加密方法的程序,所述方法包括以下步骤对要加密的数据(301,Bk)进行加密,以生成加密数据(305,CBk)(S102,S602);和将数据(PF(z+1))附加于所述加密数据(S104,S604),所述数据(PF(z+1))表示在加密步骤实施所述加密时所计算的所述加密的结果,其中表示所述加密的所述结果的所述数据是用于检测所述加密数据是否为伪造数据的伪造检测数据(308,BDk)。
23.一种用于使计算机执行检测加密数据的伪造的方法的程序,所述方法包括以下步骤接收加密数据(305)(S102);和对在接收步骤中所接收的所述加密数据进行解密,以生成解密数据(307)(S202),其中当解密步骤实施所述解密时,计算所述解密的结果,并且所述解密的所述结果由数据(DF(z+1))来表示,所述数据(DF(z+1))表示用于检测所述加密数据是否为伪造数据的伪造检测数据(309)。
24.一种用于使得计算机执行再现加密数据(305)的方法的程序,所述方法包括以下步骤顺序地从划分所述加密数据的多个块的指定块中提取部分所述加密数据(S1301);使用对在提取步骤中先前所提取的所述部分的所述数据进行解密的结果,来顺序地计算对在提取步骤中当前所提取的所述部分的所述数据进行所述解密的结果,并且使用顺序地计算的所述解密的所述结果,来生成解密数据(S1302,S1303);和将表示在使用步骤中最终所计算的所述解密的所述结果的所述数据同先前被关联于所述指定块的、用于检测所述指定块是否被伪造的伪造检测数据进行比较,从而根据比较结果来判断是否再现与在使用步骤中所生成的所述指定块相对应的所述解密数据(S1304)。
25.一种用于使计算机执行通信加密数据(305)的方法的程序,所述方法包括以下步骤通过通信来接收加密数据,所述加密数据预先被划分成多个块(S1301,S1306);顺序地从所述多个块的指定块中,提取在接收步骤中所接收的部分所述加密数据;使用对在提取步骤中先前所提取的所述部分的所述数据进行解密的结果,来顺序地计算对在提取步骤中当前所提取的所述部分的所述数据进行所述解密的结果,并且使用顺序地计算的所述解密的所述结果,来生成解密数据(S1302);和将表示在使用步骤中最终所计算的所述解密的所述结果的所述数据同先前被关联于所述指定块的、用于检测所述指定块是否被伪造的伪造检测数据进行比较,从而根据比较结果来检测在所述加密数据的所述通信中所引入的错误(S1304)。
26.一种在上面记录有程序的机器可读记录介质,所述程序用于使计算机执行加密方法,所述方法包括以下步骤对要加密的数据(301,Bk)进行加密,以生成加密数据(305,CBk)(S102,S602);和将数据(PF(z+1))附加于所述加密数据(S104,S604),所述数据(PF(z+1))表示在加密步骤实施所述加密时所计算的所述加密的结果,其中表示所述加密的所述结果的所述数据是用于检测所述加密数据是否为伪造数据的伪造检测数据(308,BDk)。
27.一种在上面记录有程序的机器可读记录介质,所述程序用于使计算机执行检测加密数据(305)是否被伪造的方法,所述方法包括以下步骤接收加密数据(305)(S201);和对在接收步骤中所接收的所述加密数据进行解密,以生成解密数据(307)(S202),其中当解密步骤实施所述解密时,计算所述解密的结果,并且所述解密的所述结果由数据(DF(z+1))来表示,所述数据(DF(z+1))表示用于检测所述加密数据是否为伪造数据的伪造检测数据(309)。
28.一种在上面记录有程序的机器可读记录介质,所述程序用于使计算机执行再现加密数据(305)的方法,所述方法包括以下步骤顺序地从划分所述加密数据的多个块的指定块中提取部分所述加密数据(S1301);使用对在提取步骤中先前所提取的所述部分的所述数据进行解密的结果,来顺序地计算对在提取步骤中当前所提取的所述部分的所述数据进行所述解密的结果,并且使用顺序地计算的所述解密的所述结果,来生成解密数据(S1302,S1303);和将表示在使用步骤中最终所计算的所述解密的所述结果的所述数据同先前被关联于所述指定块的、用于检测所述指定块是否被伪造的伪造检测数据进行比较,从而根据比较结果来判断是否再现与在使用步骤中所生成的所述指定块相对应的所述解密数据(S1304)。
29.一种在上面记录有程序的机器可读记录介质,所述程序用于使计算机执行通信加密数据(305)的方法,所述方法包括以下步骤通过通信来接收加密数据,所述加密数据预先被划分成多个块(S1301,S1306);顺序地从所述多个块的指定块中,提取在接收步骤中所接收的部分所述加密数据;使用对在提取步骤中先前所提取的所述部分的所述数据进行解密的结果,来顺序地计算对在提取步骤中当前所提取的所述部分的所述数据进行所述解密的结果,并且使用顺序地计算的所述解密的所述结果,来生成解密数据(S1302);和将表示在使用步骤中最终所计算的所述解密的所述结果的所述数据同先前被关联于所述指定块的、用于检测所述指定块是否被伪造的伪造检测数据进行比较,从而根据比较结果来检测在所述加密数据的所述通信中所引入的错误(S1304)。
全文摘要
依次提取一部分要加密的数据(301)。利用加密所述数据的先前所提取的部分的结果,来依次计算所述数据的当前所提取部分的加密结果。利用所依次计算的加密结果,来生成加密数据(305)。在生成加密数据的过程中,将所最终计算的加密结果(PF(z+1))添加到已生成的加密数据中。这里,将最终计算的结果用作为用于检测要加密的数据是否是已被伪造的数据的伪造检测数据(308)。
文档编号G06F21/64GK1533648SQ0281445
公开日2004年9月29日 申请日期2002年7月10日 优先权日2001年7月17日
发明者佐藤克彦, 司, 泽田裕司 申请人:夏普株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1