CN1078413C - 校验数据序列的方法 - Google Patents

校验数据序列的方法 Download PDF

Info

Publication number
CN1078413C
CN1078413C CN95194412A CN95194412A CN1078413C CN 1078413 C CN1078413 C CN 1078413C CN 95194412 A CN95194412 A CN 95194412A CN 95194412 A CN95194412 A CN 95194412A CN 1078413 C CN1078413 C CN 1078413C
Authority
CN
China
Prior art keywords
value
data
sequence
discre
substep
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.)
Expired - Fee Related
Application number
CN95194412A
Other languages
English (en)
Other versions
CN1154771A (zh
Inventor
J·范蒂尔伯格
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.)
Koninklijke KPN NV
Original Assignee
Koninklijke KPN NV
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 Koninklijke KPN NV filed Critical Koninklijke KPN NV
Publication of CN1154771A publication Critical patent/CN1154771A/zh
Application granted granted Critical
Publication of CN1078413C publication Critical patent/CN1078413C/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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Communication Control (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

本发明涉及用于检查数据序列的方法,该方法包括保护步骤和校验步骤,在保护步骤中根据一个识别序列(1)形成一个控制序列(2),该识别序列包括用于识别被保护数据序列的识别值(d)。并且控制序列包括控制值(w),至少有一部分控制值是根据操作值形成的,而操作值是从被上述识别值识别的序列中的数据获得(F)的,并且在校验步骤中根据控制值校验数据序列.按照本发明,通过识别值(d)与一个与先前的控制值有关的操作值的组合(C)按顺序获得控制值。本发明特别适用于校验数据文件。

Description

校验数据序列的方法
发明背景
本发明涉及用于检查数据序列的方法,该方法包括保护步骤和校验步骤,在保护步骤中根据一个识别序列形成一个控制序列,该识别序列包括用于识别要被保护数据序列的识别值,并且控制序列包括控制值,至少有一部分控制值是根据操作值形成的,而操作值是从被上述识别值识别的序列中的数据获得的,并且在校验步骤中根据控制值校验数据序列。这种方法在实际应用中是公知的。
在这种公知的方法中,识别值被用于根据对应序列的数据形成操作值。在本文中的序列例如可以是文件,而识别值可以是所述文件的名称或“标识符”。操作值例如可以是所谓散列(hash)值,它可以直接或经过进一步处理之后被装入控制序列(控制文件)。在这种情况下,控制序列的作用是附加于数据序列上。如果把控制序列中的值与通过适当操作从数据序列中直接获得的值相比较,就可以检查有关数据序列的完整性。
然而,在这种情况下,由于采用现有技术方法的文件包括了控制值和识别值,能自由处理序列本身和控制文件的第三方,如果他能使控制文件产生上述的变化,就能以比较简单的方式改变序列。只要有关的操作是已知的,第三方就可以执行上述操作并且改变控制序列,并且看不到改变的结果。另外,在发送识别值和控制值的同时必须在控制序列中加入较大数量的数据。此外,用现有技术方法检查序列时需要占用较长的时间,因为对所有数据序列都需要用所有识别值和控制值逐个执行校验步骤。
目前存在的其他数据保护方案例如有美国专利US4864616(参考资料[4])。上述专利公开了一种方法,其中的数据文件访问是通过对各个文件加密和密码标注来保护的。每个被保护的文件具有一个包含密码,入口和完整性信息的(加密)文件标注。为了检查大量文件的完整性,必须分别检查每个文件。上述方法不能校验多个相互联系的文件的完整性。
在美国专利US5347650中公开了一种可以从数据中推导出操作值的器件(参考资料[5])。
发明概述
本发明的目的是排除现有技术的上述和其他缺陷,并且提供一种以相对简单的方式可靠地校验数据完整性的方法。另外,本发明的一个目的是提供一种不把识别值装入控制文件的可能性,因此,第三方就不能看到识别值,并且还限定了控制序列的内容。
因此,本发明方法的特征在于控制值是用一个识别值和一个与先前的识别值相关的操作值的组合顺序形成的。换句话说,由于每个控制字都是根据先前的操作值按顺序形成的,这样形成的控制字是相互依赖的。这样做的优点是第三方更加难以用不引人注意的方式改变控制文件,因为相互依赖的控制值提供了附加的保护。通过相互依赖,数据序列中的变化和/或误差的较早检测仍可以通过按顺序执行控制来进行。另外通过象现有技术的方法一样提供识别值,按照本发明的方法还提供了重构控制序列的可能性,即使出现了变化或误差。
实现本发明的较佳方法是使控制文件不包括识别值。这样做的优点是有关的数据序列不容易被第三方识别,因此不会被改变。第三方将不能“看到”识别值。如果在信息载波上和在数据连接(例如传输线)上发送控制序列,这样做都是有益的。另外,识别值的省略可以使控制序列所需的数据量减少。利用上述相互依赖的控制值,识别值的省略是可能的。
控制值最好是根据一个初始值来形成。也就是说,控制序列中的一个控制值不是依赖于一个识别值,而是依赖于一个在识别序列外部产生的初始值。这一控制值特别适合作为第一识别值的操作值,它完全不需要处理先前的识别值来提供操作值。
初始值可以是一个随机码,例如可以用一个随机码发生器来产生。然而,这一初始值最好是通过关键字的操作来形成,例如计算机系统的访问字(口令)。在这种情况下,可以按照实际上再次产生一个随机码的方式操作关键字。也可以用一个鉴别码来代替关键字,就象编码数据传输中使用的那样。
本发明可以有效地用于从第一方向第二方发送数据序列,并且仅在经第一方许可之后才发送初始值。换句话说,首先可以在例如信息载体(例如磁盘或CD-ROM)上或是通过传输线发送数据序列,然后在第一方许可的条件下用相同或不同的方式发送初始值。在这种情况下,初始值可以被加入控制序列,也可以单独发送,而控制序列例如可以是紧接在数据序列之前或其后发送。在这种情况下的许可可能取决于是否已交费。这样,初始值的作用就是作为数据传输的密钥。
最好是根据操作值形成一个控制值。在这种情况下,可以采用加法(模2)按顺序组合独立的操作值。如果对每一种情况下组合的结果进一步操作,就可以实现附加的保护。
参考资料
[1]H.贝克和F.蓬波:“密码系统”(H.Beker & F.Piper:“CipherSystems”,London 1982)
[2]G.J.西蒙斯:“当代加密学”(G.J.Simmons(ed.):“ContemporaryCryptology”,New York 1992.)
[3]P.霍耳韦兹和W.西尔:“电子学”(P.Horowitz & W.Hill:“TheArt of Electronics”,Combridge 1989.)
[4]US4864616蓬得等人(Pond et al.)
[5]US5347650 & EP0449716阿地提等人(Arditi et al.)
实施例
以下要根据附图详细说明本发明。
图1示意性地表示了按照本发明第一实施例的数据保护方式;
图2示意性地表示了按照本发明第一实施例的数据校验方式;
图3示意性地表示了按照本发明第二实施例的数据保护方式;
图4示意性地表示了按照本发明第二实施例的数据校验方式。
本发明方法中的保护步骤如图1所示,它包括把具有例如文件名的识别符的第一列表转换成第二列表。第一列表(识别序列)和第二列表(控制或校验序列)可以是文件本身。
第一列表1包括n个识别值或是识别符d,用d1…d2表示,用本发明的方法把它们转换成第二列表2的n个控制值(校验值)或识别符w1…wn+1。另外,在本例中的列表2包括一个附加的成分W0,它对应着初始值i。初始值i可以由附加的列表3产生,也可以在执行本方法的同时产生。初始值i最好是一个随机值。初始值i和成分w0是可以省略的。
本发明方法的特征在于识别符是按顺序操作的,并且每次操作的结果依赖于前一个识别符。首先把初始值i作为w0装入第二列表2。然后在111把识别符d1与初始值i相组合形成w1。在分步111中执行的组合操作C是一种适合实现逆运算的操作,例如加法的逆运算是减法。操作C最好采用模2的加法,因为这种操作可以用很简单的方式实现,并且与其逆运算是等效的,这样就可以用相同的装置来实现这种操作及其逆运算。
在121对识另符d1执行操作F,在其中根据识别符d1代表的数据确定一个密码值。如果d1就是文件名,就根据文件的内容确定一个值。在这种情况下可以采用公知的现有技术,例如形成所谓散列值的技术。为了形成w2,在112中把由此获得的值与d2相组合。按照相应的方式,在122中用函数F根据由d2代表的数据确定一个密码值。由此获得的值在113中与d3一起形成值w3
按照上述方式,每次确定一个值w,并且加到第二列表2上。因此,每个值w取决于对应的值d,所有先前的值d和i,以及所有由先前的值d代表的数据。可以理解,用值d代表的一或多个数据序列的变化会使第二列表2中的w值发生变化。以下要根据图2说明在本方法的校验步骤中如何检测这种变化。
在图2中示意性地表示了按照本发明方法的校验步骤,该步骤包括读出第二列表2的w值,并且检查上述值是否对应着相应的数据序列。
在分步131中使值w1与值w0(初始值)组合。分步131的组合操作C是分步111的逆运算,因此应该得到d1值。如果操作C是模2加法,当w0=i时,就得到以下结果:w1w0=(d1i)i=d1。在分步141中把上述值d1加到一个函数F上,函数F可以与分步121中的函数相同。这样就能根据由d1代表的数据确定一个密码值F(d1),然后在分步132中将其与值w2组合。在保护步骤中,如果由d1代表的数据等于用d1代表的数据,在校验步骤中,在分步141中产生的密码值就等于在分步121中确定的值,因此:w2F(d1)=d2F(d1)F(d1)=d2。然后在分步142中根据值d2来确定在分步133中与w3组合的一个密码值F(d2)。
从上述说明中可以看出,数据的变化将会确定分步14中的密码值不对应值d,值d可以在分步13中对后续的值w译码。按照这样的结果,首先的可能性是至少有一些数据序列找不到了,因为不能确定正确的识别符d。在实施本发明的方法时最好能在找不到数据序列时,也就是在发现一个识别符d不正确时立即给出一个错误信息。
从图2中可见,后续的d值是在分步13中通过值w与一个值的组合来确定的,而这个值是根据对应先前的d值的数据获得的。按照这种方式,就可以保证在检测到错误时中断校验步骤,不需要首先校验所有文件序列。通过请求一或多个识别值d有可能连续执行校验步骤并且在其基础上连续处理。
在图3中示意性地表示了一种进一步的保护步骤。除了图1中的步骤之外,图3的保护步骤包括分步15,在其中把分步12中找到的密码值(F(d))与对应的值相组合,并且在分步16中对分步15中获得的值再次执行加密操作G。上述连续操作的结果是一个附加的关键值wn+1,它被加在第二列表上形成扩展列表2′。操作G可以是任意的密码操作,但是最好采用所谓的散列操作(可能是公知的)。这种操作可以用较快的方式执行,因此,上述附加操作不会延迟本方法的执行。操作G是可以省略的,或是仅需要在分步16n-1中最后执行操作G,从而形成附加值wn+1
图4示意性地表示了可能的校验步骤,在其中考虑了附加值wn+1。在图4的校验步骤中,每个分步14的结果在分步17中与前一分步14的结果相组合,然后把所获的值提供给各个分步18中的函数G。在这种情况下,分步18中的函数G对应图3的分步16中的函数G,而分步17中的组合操作都是图3中相应的分步15的逆运算。分步15和17的组合操作最好采用模2加法。
各个分步18的结果被传送到下一个分步17,然后如上所述与各个分步14的结果相组合。最后一个分步18,即分步18n的结果在操作T中进行测试,测试其是否与附加值Wn+1等值。如果所有数据都是正确的,在分步18n中确定的结果必须等于值Wn+1。如果不等就表明数据中出现了错误或变化。在分步20中推导出测试T的结果r。按照这种方法,可以对有关数据进行附加的校验。
用于实现本发明方法的器件可以采用市场上通用的元件。这种器件可以包括一个对数据执行操作的处理器,用于存储数值和指令的存储器,以及分别用于输入和输出数据的输入和输出装置。为了获得这种器件,可以查阅参考资料[3]。这种器件最好是至少有一部分组合在专用的集成电路(ASIC)中。
本发明可以被用于保护信息载体上的文件,例如磁盘(软盘,硬盘),磁带以及光学信息载体。本发明的方法特别有益于保护用于在硬盘上安装程序的安装盘。按照本发明的方法还可以有益地用于校验已经存储在一个信息载体(例如硬盘)上的信息。然而,本发明也可以用于数据转换,例如用于转换控制文件形式的第二列表。
本领域的技术人员应该认识到,本发明并不仅限于给定的实施例,并且在不脱离本发明范围的条件下可以实现各种变更和修改。

Claims (7)

1.用于检查数据序列的方法,包括保护步骤和校验步骤,在保护步骤中根据一个识别序列(1)形成一个控制序列(2),该识别序列(1)包括用于识别被保护数据序列的识别值(di),并且控制序列(2)包括控制值(wi),至少有一部分控制值是根据操作值形成的,而操作值是从被上述识别值(di)识别的序列中的数据获得(F)的,并且在校验步骤中根据控制值校验数据序列,其特征是通过识别值(di)与一个与先前的识别值(di-1)有关的操作值的组合(C)按顺序形成控制值(wi),把控制值(wi)与一个与先前的控制值(wi-1)有关的操作值的组合按顺序形成识别值(di),从而校验数据序列。
2.按照权利要求1的方法,其特征是一个控制值(wo)是根据一个初始值(i)形成的。
3.按照权利要求2的方法,其特征是初始值(i)是一个随机数。
4.按照权利要求2的方法,其特征是初始值(i)是通过关键字和/或鉴别码的操作而形成的。
5.按照前权利要求1的方法,其特征是形成操作值(wi)的过程包括执行散列操作(F)。
6.按照前述权利要求1的方法,其特征是数据序列被存储在一个信息载体上。
7.按照权利要求1至6中任意一项所述的方法,其特征是数据序列从第一方被发送给第二方,并且仅在经第一方许可之后才发送初始值。
CN95194412A 1994-07-29 1995-07-18 校验数据序列的方法 Expired - Fee Related CN1078413C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL9401246A NL9401246A (nl) 1994-07-29 1994-07-29 Werkwijze voor het controleren van reeksen van gegevens.
NL9401246 1994-07-29

Publications (2)

Publication Number Publication Date
CN1154771A CN1154771A (zh) 1997-07-16
CN1078413C true CN1078413C (zh) 2002-01-23

Family

ID=19864484

Family Applications (1)

Application Number Title Priority Date Filing Date
CN95194412A Expired - Fee Related CN1078413C (zh) 1994-07-29 1995-07-18 校验数据序列的方法

Country Status (11)

Country Link
US (1) US5655021A (zh)
EP (1) EP0772930B1 (zh)
CN (1) CN1078413C (zh)
AT (1) ATE185459T1 (zh)
AU (1) AU3163595A (zh)
CA (1) CA2193227C (zh)
DE (1) DE69512667T2 (zh)
DK (1) DK0772930T3 (zh)
ES (1) ES2138230T3 (zh)
NL (1) NL9401246A (zh)
WO (1) WO1996004732A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2747488B1 (fr) * 1996-04-12 1998-07-10 Inst Nat Rech Inf Automat Dispositif d'authentification d'un fichier de donnees
FR2752968B1 (fr) * 1996-09-04 1999-02-19 Sligos Fichier certifie d'archivage de documents electroniques
CN103383566B (zh) * 2013-06-24 2015-10-28 奇瑞汽车股份有限公司 一种程序流监控方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4864616A (en) * 1987-10-15 1989-09-05 Micronyx, Inc. Cryptographic labeling of electronically stored data
EP0449716A1 (fr) * 1990-03-26 1991-10-02 France Telecom Dispositif de condensation de données numériques

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4074066A (en) * 1976-04-26 1978-02-14 International Business Machines Corporation Message verification and transmission error detection by block chaining

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4864616A (en) * 1987-10-15 1989-09-05 Micronyx, Inc. Cryptographic labeling of electronically stored data
EP0449716A1 (fr) * 1990-03-26 1991-10-02 France Telecom Dispositif de condensation de données numériques

Also Published As

Publication number Publication date
ATE185459T1 (de) 1999-10-15
CN1154771A (zh) 1997-07-16
CA2193227C (en) 2000-04-18
AU3163595A (en) 1996-03-04
WO1996004732A1 (en) 1996-02-15
ES2138230T3 (es) 2000-01-01
CA2193227A1 (en) 1996-02-15
DE69512667D1 (de) 1999-11-11
DE69512667T2 (de) 2000-02-17
US5655021A (en) 1997-08-05
DK0772930T3 (da) 2000-04-10
EP0772930A1 (en) 1997-05-14
EP0772930B1 (en) 1999-10-06
NL9401246A (nl) 1996-03-01

Similar Documents

Publication Publication Date Title
US6640294B2 (en) Data integrity check method using cumulative hash function
US6757828B1 (en) Indigenous authentication for sensor-recorders and other information capture devices
Wagner Cryptanalysis of a provably secure CRT-RSA algorithm
EP0654920B2 (en) Method for the efficient updating of the hash value of a data file
CN1842757A (zh) 用于增量代码签署的方法和装置
EP2105860A2 (en) Method and apparatus for verifying integrity of redacted documents
TW595177B (en) Method for processing events having hierarchical structure in communication equipment
US8219545B2 (en) Indigenous authentication and searching system and method
CN1636176A (zh) 检验电子设备中储存信息完整性的系统和方法
CN113065169A (zh) 一种文件存证方法、装置及设备
US7353386B2 (en) Method and device for authenticating digital data by means of an authentication extension module
KR20230054422A (ko) 고정성 데이터 처리
CN1324599C (zh) 避免逐位复制数字数据的方法和实现该方法的读取装置
CN1078413C (zh) 校验数据序列的方法
CN109472600B (zh) 一种区块链可信验证方法及装置
CN112632476A (zh) 算法授权保护方法、装置、集成电路芯片及电子设备
JP3263671B2 (ja) 誤り検出装置
EP3389280A1 (en) Method for real-time certifying the integrity of a sequence of video and/or audio frames
US6992797B1 (en) Systems and methods for embedding messages in look-up tables
CN1252663C (zh) 算术单元和算术方法
CN113688360A (zh) 分散式数位签章处理方法及其系统
CN1190731C (zh) 基于flash存储介质的产品永久序列码生成方法
US8738221B2 (en) Methods and systems for securing vehicle data
JP2002259216A (ja) 電子ファイルの改ざん検出方法、そのための電子ファイルの記述方法および通信装置
TWI835296B (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
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee