HK80897A - Method for verifying the integrity of software or data and system for implementing this method - Google Patents

Method for verifying the integrity of software or data and system for implementing this method Download PDF

Info

Publication number
HK80897A
HK80897A HK80897A HK80897A HK80897A HK 80897 A HK80897 A HK 80897A HK 80897 A HK80897 A HK 80897A HK 80897 A HK80897 A HK 80897A HK 80897 A HK80897 A HK 80897A
Authority
HK
Hong Kong
Prior art keywords
message
modules
signature
portable object
processing circuits
Prior art date
Application number
HK80897A
Other languages
English (en)
French (fr)
Inventor
Oisel Andre
Ugon Michel
Original Assignee
Cp8 Technologies
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 Cp8 Technologies filed Critical Cp8 Technologies
Publication of HK80897A publication Critical patent/HK80897A/xx

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Strategic Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Accounting & Taxation (AREA)
  • Bioethics (AREA)
  • General Business, Economics & Management (AREA)
  • Storage Device Security (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Detection And Correction Of Errors (AREA)
  • Communication Control (AREA)
  • Hardware Redundancy (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Debugging And Monitoring (AREA)

Claims (7)

  1. Verfahren zum Überprüfen der Integrität einer Informationen enthaltenden folgenden Nachricht in bezug auf eine ursprüngliche Nachricht, das darin besteht, mit Verarbeitungsmitteln ausgehend von der ursprünglichen Nachricht (M), auf die ein Algorithmus (A) angewendet wird, eine Kennung zu berechnen, dadurch gekennzeichnet, daß es die Schritte enthält, die darin bestehen, daß:
    - die ursprüngliche Nachricht in eine Gesamtmenge (m) von Modulen (M1, M2, ... Mm) unterteilt wird;
    - die Verarbeitungsmittel dazu verwendet werden, den Algorithmus (A) auf jeden Modul der ursprünglichen Nachricht anzuwenden, um eine jeweilige Kennung (S1, S2, ... Sm) jedes Moduls zu berechnen;
    - ein tragbarer elektronischer Gegenstand verwendet wird, der Verarbeitungsschaltungen (11) sowie Speichermittel enthält, die eine nichtflüchtige, geschützte Speicherzone (10) enthalten, zu der nur die Verarbeitungsschaltungen Zugang haben, und die Kennungen in der geschützten Speicherzone und der Algorithmus in den Speichermitteln gespeichert werden;
    die folgenden Nachrichten im tragbaren Gegenstand durch die Schritte überprüft werden, die darin bestehen, daß:
    - in den folgenden Nachrichten eine Teilmenge (p) von Modulen gewählt wird, die kleiner als die Gesamtmenge (m) von Modulen ist, wobei die Teilmenge so beschaffen ist, daß die Wahrscheinlichkeit, bei ausschließlicher Betrachtung der Teilmenge von Modulen in der folgenden Nachricht eine Änderung festzustellen, einen bestimmten Wert beisitzt;
    - die Verarbeitungsschaltungen dazu verwendet werden, den Algorithmus auf jeden gewählten Modul in der Weise anzuwenden, daß eine entsprechende Kennung berechnet wird;
    - in der geschützten Speicherzone die Kennungen derjenigen Module der ursprünglichen Nachricht gewählt werden, die den gewählten Modulen der folgenden Nachricht entsprechen, und diese Kennungen mit denjenigen der folgenden Nachricht verglichen werden; und
    - mittels des tragbaren Gegenstandes eine Antwort abgeschickt wird, die angibt, ob die Integrität zwischen der ursprünglichen und der folgenden Nachricht bestätigt wird, d.h. ob die Kennungen der ursprünglichen Nachricht jeweils denjenigen der folgenden Nachricht entsprechen.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Module durch eine Nummer gekennzeichnet sind und daß die Verarbeitungsschaltungen des tragbaren Gegenstandes für die Bestimmung der Nummer derjenigen Module, auf die sich die Überprüfung der Kennungen erstrecken wird, (p) aufeinanderfolgende Ziehungen von verschiedenen Zufallszahlen ausführen, wobei jede Zufallszahl die Nummer eines Moduls bestimmt, auf den sich die Überprüfung erstrecken soll.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß für die Bestimmung der Nummer derjenigen Module unter den zu der ursprünglichen Nachricht gehörenden (m) Modulen, auf die sich die Überprüfung der Kennungen erstrecken soll, die Verarbeitungsschaltungen des tragbaren Gegenstandes eine Ziehung einer Binärzahl (a) der Länge (m) ausführen, die durch Bits in der Weise ausgedrückt wird, daß die Länge der gezogenen Zufallszahl direkt die Anzahl der Module repräsentiert, die die ursprüngliche Nachricht enthält, und daß der Wert der Zufallszahl aus einem (p)-aus-(m)-Code abgeleitet wird, d.h., daß unter den (m) Bits, die die Zufallszahl enthält, (p) Bits vorhanden sind, die einen bestimmten Binärwert (1 oder 0) besitzen, während die (m-p) verbleibenden Bits den komplementären Wert besitzen, und daß, da jedes Bit der Zufallszahl durch eine andere Ordnungsnummer gekennzeichnet werden kann, die jeweilige Nummer der Module, auf die sich die Überprüfungen der Kennungen erstrecken sollen, durch die jeweilige Ordnungsnummer der (p) Bits bestimmt ist, die aus den (m) Bits in der Zufallszahl entnommen werden.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß eine Nachricht aus einer Folge von Bits gebildet ist, die in Abhängigkeit von der Position, die sie in der Nachricht einnehmen, durch ihre Ordnungsnummer oder durch ihre Adresse gekennzeichnet werden können, und daß die Verarbeitungsschaltungen vor der Speicherung der verschiedenen Module (M1, M2, ...Mm) durch die Speichermittel des tragbaren Gegenstandes diese Module ausgehend von der ursprünglichen Nachricht auf die folgende Weise verarbeiten, um die Kennung jedes dieser Module zu berechnen:    - jeder Modul wird gebildet durch die Entnahme einer bestimmten Anzahl von Bits der Nachricht gemäß einer vorgegebenen Regel und/oder einer durch die Verarbeitungsschaltungen des tragbaren Gegenstandes erzeugten Regel, die beispielsweise die Zufallselemente berücksichtigt, wobei die Regel, die der Bildung jedes Moduls ausgehend von der ursprünglichen Nachricht gedient hat, im tragbaren Gegenstand gehalten wird, so daß ausgehend von einer zu bestätigenden Nachricht die Module dieser Nachricht gemäß derselben Regel wie diejenige, die für die Bildung der Module ausgehend von der ursprünglichen Nachricht verwendet worden ist, wiederhergestellt werden.
  5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß dann, wenn die Nachricht in Form von binären Worten organisiert ist, wovon jedes eine bestimmte Anzahl von Bits enthält, und wenn eine Information einen Befehl oder einen Teil des Befehls einer Software oder eine Dateneinheit oder einen Teil einer Dateneinheit bildet, deren Integrität für den guten Ablauf eines diese Befehle und/oder Dateneinheiten verwendenden Programms beibehalten werden soll, die Bildung der Module (M1, M2, ...Mm) im Hinblick auf die Berechnung der Kennung wenigstens von einigen von ihnen zur Überprüfung der Integrität der Nachricht darin besteht, daß die Verarbeitungsschaltungen, die die Berechnung der betrachteten Kennungen ausführen müssen, einerseits die Bildung einer bestimmten Anzahl (n) von Blöcken (B1, B2, ...Bn) ausführen, in welchen jeweils eine bestimmte Anzahl von Informationen zusammengefaßt ist, derart, daß jede Information oder jeder Teil einer Information, der in einem Block enthalten ist, durch die Position der diese Information oder diesen Teil einer Information bildenden Bits gekennzeichnet werden kann, und daß es darin besteht, daß für die Bildung eines bestimmten Moduls durch die Verarbeitungsschaltungen gemäß einer vorgegebenen Regel wenigstens ein Bit aus jedem der Blöcke entnommen wird, um einen bestimmten Modul zu bilden.
  6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß die Zusammenfassung der Informationen in der Weise, daß die Blöcke gebildet werden, durch Entnehmen der Informationen in derjenigen Reihenfolge erfolgt, in der sie beim Lesen der Nachricht auftreten.
  7. Vorrichtung zum Überprüfen der Integrität einer Informationen enthaltenden folgenden Nachricht in bezug auf eine ursprüngliche Nachricht, wobei die Vorrichtung so beschaffen ist, daß sie durch Verarbeitungsmittel ausgehend von einer ursprünglichen Nachricht (M), auf die ein Algorithmus (A) angewendet wird, eine Kennung (S) berechnet, dadurch gekennzeichnet, daß sie einen tragbaren Gegenstand enthält, der seinerseits Mittel für den Anschluß an eine Vorrichtung (2) wie etwa einen Rechner, der die Nachricht verarbeiten kann, enthält, wobei der tragbare Gegenstand außerdem Verarbeitungsschaltungen (11) und Speichermittel enthält, die ihrerseits eine nichtflüchtige, geschützte Speicherzone (10) enthalten, zu der nur die Verarbeitungsschaltungen Zugang haben, wobei in der Vorrichtung:    - die ursprüngliche Nachricht (M) in eine Gesamtmenge (m) von Modulen (M1, M2,... Mm) unterteilt wird und die geschützte Speicherzone mehrere Kennungen (S1, S2, ... Sm) speichert, wobei jede Kennung das Ergebnis der Anwendung des Algorithmus (A) auf einen vorgegebenen Modul der ursprünglichen Nachricht ist; wobei der tragbare Gegenstand den Algorithmus (A) enthält und so beschaffen ist, daß er:
    - in der folgenden Nachricht eine Teilmenge (p) von Modulen, die kleiner als die Gesamtmenge (m) von Modulen ist, auswählt, wobei die Teilmenge derart ist, daß die Wahrscheinlichkeit, bei Betrachtung lediglich der Teilmenge der Module die Erfassung einer Veränderung in der folgenden Nachricht einen bestimmten Wert besitzt;
    - die Verarbeitungsschaltungen dazu verwendet, den Algorithmus auf jeden ausgewählten Modul anzuwenden, um eine jeweilige Kennung zu berechnen;
    - in der geschützten Speicherzone die Kennungen derjenigen Module der ursprünglichen Nachricht auswählt, die den gewählten Modulen der folgenden Nachricht entsprechen, und diese Kennungen mit denjenigen der folgenden Nachricht vergleicht; und
    - durch den tragbaren Gegenstand eine Antwort abschickt, die angibt, ob die Integrität zwischen der ursprünglichen und der folgenden Nachricht bestätigt wird, d.h. ob die Kennungen der ursprünglichen Nachricht jeweils denjenigen der folgenden Nachricht entsprechen.
HK80897A 1989-06-06 1997-06-12 Method for verifying the integrity of software or data and system for implementing this method HK80897A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR898907429A FR2647924B1 (fr) 1989-06-06 1989-06-06 Procede pour verifier l'integrite d'un logiciel ou de donnees, et systeme pour la mise en oeuvre de ce procede

Publications (1)

Publication Number Publication Date
HK80897A true HK80897A (en) 1997-06-20

Family

ID=9382394

Family Applications (1)

Application Number Title Priority Date Filing Date
HK80897A HK80897A (en) 1989-06-06 1997-06-12 Method for verifying the integrity of software or data and system for implementing this method

Country Status (12)

Country Link
EP (1) EP0402210B1 (de)
JP (1) JPH0727497B2 (de)
KR (1) KR940009699B1 (de)
AT (1) ATE127252T1 (de)
CA (1) CA2034002C (de)
DE (1) DE69021935T2 (de)
DK (1) DK0402210T3 (de)
ES (1) ES2079457T3 (de)
FR (1) FR2647924B1 (de)
GR (1) GR3018239T3 (de)
HK (1) HK80897A (de)
WO (1) WO1990015384A1 (de)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3395863B2 (ja) * 1994-08-10 2003-04-14 富士通株式会社 ソフトウエア管理モジュール、ソフトウエア再生管理装置およびソフトウエア再生管理システム
GB9513790D0 (en) * 1995-07-06 1995-09-06 Highwater Fbi Limited Method of authenticating digital data works
FR2752968B1 (fr) * 1996-09-04 1999-02-19 Sligos Fichier certifie d'archivage de documents electroniques
FR2758898B1 (fr) * 1997-01-28 1999-03-05 Sagem Procede de preservation de l'integrite de donnees logiciel
US6101603A (en) * 1997-05-21 2000-08-08 At&T Corporation System and method for using a second resource to store a data element from a first resource in a first-in last-out stack
FR2775372B1 (fr) * 1998-02-26 2001-10-19 Peugeot Procede de verification de la coherence d'informations telechargees dans un calculateur
US6834308B1 (en) 2000-02-17 2004-12-21 Audible Magic Corporation Method and apparatus for identifying media content presented on a media playing device
WO2001082267A1 (en) * 2000-04-20 2001-11-01 Yutaka Yasukura Electronic information inquiring method
US7562012B1 (en) 2000-11-03 2009-07-14 Audible Magic Corporation Method and apparatus for creating a unique audio signature
US7406529B2 (en) * 2001-02-09 2008-07-29 Yahoo! Inc. System and method for detecting and verifying digitized content over a computer network
US7363278B2 (en) 2001-04-05 2008-04-22 Audible Magic Corporation Copyright detection and protection system and method
DE10131300B4 (de) 2001-07-02 2012-12-06 Robert Bosch Gmbh Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation von in einer Speicheranordnung abgelegten Daten und Mikrorechner-System
US7529659B2 (en) 2005-09-28 2009-05-05 Audible Magic Corporation Method and apparatus for identifying an unknown work
US6968337B2 (en) * 2001-07-10 2005-11-22 Audible Magic Corporation Method and apparatus for identifying an unknown work
US8972481B2 (en) 2001-07-20 2015-03-03 Audible Magic, Inc. Playlist generation method and apparatus
US7877438B2 (en) 2001-07-20 2011-01-25 Audible Magic Corporation Method and apparatus for identifying new media content
JP4576100B2 (ja) * 2002-07-30 2010-11-04 富士通株式会社 情報再生装置、セキュアモジュールおよび情報再生方法
EP1387238B1 (de) 2002-07-30 2011-06-15 Fujitsu Limited Verfahren und Gerät zur Wiedergabe von Information mit einem Sicherheitsmodul
US8332326B2 (en) 2003-02-01 2012-12-11 Audible Magic Corporation Method and apparatus to identify a work received by a processing system
US8130746B2 (en) 2004-07-28 2012-03-06 Audible Magic Corporation System for distributing decoy content in a peer to peer network
EP1748374A1 (de) * 2005-07-08 2007-01-31 STMicroelectronics SA Verfahren und Vorrichtung zum Schutz eines Speichers gegen Angriffe mittels Fehlerinjektion
EP1912148A1 (de) 2006-10-09 2008-04-16 Axalto S.A. Schutzeinrichtung gegen einem Seitenkanalangriff mit einer Integritätsprüfung
JP4893411B2 (ja) * 2007-03-28 2012-03-07 カシオ計算機株式会社 端末装置及びプログラム
US8006314B2 (en) 2007-07-27 2011-08-23 Audible Magic Corporation System for identifying content of digital data
JP2009080772A (ja) * 2007-09-27 2009-04-16 Toppan Printing Co Ltd ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム
US8199651B1 (en) 2009-03-16 2012-06-12 Audible Magic Corporation Method and system for modifying communication flows at a port level
EP2495625B1 (de) * 2011-03-04 2020-06-17 Siemens Aktiengesellschaft Verfahren und Programmiersystem für die Authentifizierung eines sicherheitsrelevanten Programms einer Automatisierungseinrichtung
US9081778B2 (en) 2012-09-25 2015-07-14 Audible Magic Corporation Using digital fingerprints to associate data with a work
JP7311245B2 (ja) * 2018-03-07 2023-07-19 トヨタ自動車株式会社 マスタ装置、マスタ、制御方法、プログラム及び車両

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59123954A (ja) * 1982-12-29 1984-07-17 Fujitsu Ltd 記憶デ−タの不正使用防止方式
JPS62232070A (ja) * 1986-04-02 1987-10-12 Casio Comput Co Ltd Icカ−ドシステムの暗号演算方式
DE3705736A1 (de) * 1987-02-23 1988-09-01 Nixdorf Computer Ag Verfahren zum sichern von programmen und zur integritaetskontrolle gesicherter programme
DE3709524C2 (de) * 1987-03-23 1996-08-14 Bosch Gmbh Robert Verfahren zur Überprüfung der Speicherzelleninhalte eines Programmspeichers

Also Published As

Publication number Publication date
ES2079457T3 (es) 1996-01-16
FR2647924A1 (fr) 1990-12-07
DE69021935T2 (de) 1996-02-15
ATE127252T1 (de) 1995-09-15
EP0402210A1 (de) 1990-12-12
DK0402210T3 (da) 1996-01-15
DE69021935D1 (de) 1995-10-05
JPH03503220A (ja) 1991-07-18
FR2647924B1 (fr) 1994-06-17
JPH0727497B2 (ja) 1995-03-29
KR940009699B1 (ko) 1994-10-17
WO1990015384A1 (fr) 1990-12-13
CA2034002C (fr) 1995-05-23
EP0402210B1 (de) 1995-08-30
GR3018239T3 (en) 1996-02-29
CA2034002A1 (fr) 1990-12-07

Similar Documents

Publication Publication Date Title
US5442645A (en) Method for checking the integrity of a program or data, and apparatus for implementing this method
HK80897A (en) Method for verifying the integrity of software or data and system for implementing this method
CN1035085C (zh) 智能卡的密码字保护装置及方法
US4864494A (en) Software usage authorization system with key for decrypting/re-encrypting/re-transmitting moving target security codes from protected software
US6957338B1 (en) Individual authentication system performing authentication in multiple steps
US5097504A (en) Method and device for qualitative saving of digitized data
EP0218176B1 (de) Tragbares elektronisches Gerät
US5485519A (en) Enhanced security for a secure token code
EP0029894B1 (de) System zur sicheren Kennwortverifikation
US4523271A (en) Software protection method and apparatus
US3764742A (en) Cryptographic identification system
US5513261A (en) Key management scheme for use with electronic cards
US4498000A (en) Security method and device for communicating confidential data via an intermediate stage
US5148534A (en) Hardware cartridge representing verifiable, use-once authorization
EP0707270A2 (de) Verfahren und Einrichtung zur Prüfung der Gültigkeit des Betriebs eines Systems
US5177790A (en) Method for generating a random number in a data processing system/and system for implementing the method
JPS6135589B2 (de)
US8321691B2 (en) EMA protection of a calculation by an electronic circuit
US5894519A (en) Process for the dissimulaton of a secret code in a data authentication device
US7447916B2 (en) Blocking of the operation of an integrated circuit
US8041938B2 (en) Alternatively activating a replaceable hardware unit
US20060289658A1 (en) Processor circuit and method of allocating a logic chip to a memory chip
JPH11338982A (ja) Icメモリカードシステム装置及びそのicメモリカード
EP0818762A2 (de) Kodierungsvorrichtung, Dekodierungsvorrichtung und integrierte Schaltung
EP1573552A1 (de) Verfahren und vorrichtung zur abwechselnden aktivierung einer austauschbaren hardwareeinheit

Legal Events

Date Code Title Description
AS Change of ownership

Owner name: CP8 TECHNOLOGIES

Free format text: FORMER OWNER(S): BULL CP8

PF Patent in force
PE Patent expired

Effective date: 20100531