EP2885875A1 - Verfahren zur datencodierung auf einer chipkarte mittels gewichtskonstanter codes - Google Patents

Verfahren zur datencodierung auf einer chipkarte mittels gewichtskonstanter codes

Info

Publication number
EP2885875A1
EP2885875A1 EP14701692.7A EP14701692A EP2885875A1 EP 2885875 A1 EP2885875 A1 EP 2885875A1 EP 14701692 A EP14701692 A EP 14701692A EP 2885875 A1 EP2885875 A1 EP 2885875A1
Authority
EP
European Patent Office
Prior art keywords
data
code word
partial
bits
hamming weight
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.)
Ceased
Application number
EP14701692.7A
Other languages
English (en)
French (fr)
Inventor
Julien Bringer
Victor SERVANT
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.)
Idemia Identity and Security France SAS
Original Assignee
Morpho SA
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 Morpho SA filed Critical Morpho SA
Publication of EP2885875A1 publication Critical patent/EP2885875A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/75Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
    • G06F21/755Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation with measures against power attack
    • 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • G06K19/07309Means for preventing undesired reading or writing from or onto record carriers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/14Conversion to or from non-weighted codes
    • H03M7/20Conversion to or from n-out-of-m codes
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/004Countermeasures against attacks on cryptographic mechanisms for fault attacks
    • 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
    • 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/34Encoding or coding, e.g. Huffman coding or error correction

Definitions

  • Figure 3 shows an example of implementation of the encoding method.
  • This decomposition makes it possible to reduce the size of each bit sequence for the subsequent calculation of binary operations with two operands, such as for example the exclusive or.
  • Examples of preferred codes for the implementation of the method are also given; in the case where the size of the data D to be encoded is 4 bits, a 3.5-1, 2-code or a 2.5-1, 2-code, permutation of the first and second codes is preferably used. close, that is to say that the data D is decomposed into a sequence of 3 bits, then a bit.
  • the first sequence being encoded into a 5-bit size partial codeword and a Hamming weight of 2 or 3, and the remaining bit being encoded into a 2-bit size partial codeword and a Hamming weight equal to 1 .
  • the smart card may also include an error signal generating module 30, which may be integrated with or connected to the decoding module (as illustrated in FIG. 1).
  • this module 30 verifies during a step 3000 that the Hamming weight of the codewords transmitted by the encoding module is equal to the constant Hamming weight ⁇ which is agreed before the implementation of the method. of transmission.
  • the processing unit If the Hamming weight is within the expected weight, the processing unit
  • the results of the arithmetic or encryption operations applied to the uncoded data can be obtained from the code words generated from said data, as described hereinafter.
  • the decoding and / or exploitation 4000 of the code words to implement an encryption operation is performed without first checking the accuracy of the codewords.
  • the encryption operations 4000 and / or the arithmetic operations can be performed by the first processing unit without or before a data transmission step 2000 to the second processing unit is implemented.
  • an encryption operation may be a step of a cryptographic algorithm such as AES (for "Advanced Encryption Standard” or “Advanced Encryption Standard”) or LED, an algorithm for calculating a function such as for example SHA-1, SHA-2 or the future SHA-3, or an integrity calculation algorithm such as cyclic redundancy check (known by the acronym “CRC”) or the LRC ( acronym of
  • the adaptation of the function to the codewords consists in taking up the pre-calculated tables and adapting them to the calculation by taking as inputs and outputs the values corresponding to the codewords. on which the calculation is made.
  • at least one table is generated having as inputs the partial codewords on the basis of which the calculation or the complete code word is performed, and outputting the coded result of the operation applied to the non-coded complete data, which is the concatenation of the bit sequences from which the partial codewords are derived . The operation is therefore applied to all the partial codewords.
  • A is a datum comprising the concatenation of two sequences of bits of 0 , ai of respective sizes L 0 and Li.
  • B is a datum comprising the concatenation of two sequences of bits b 0 , b 1 , of respective sizes L 0 and Li.
  • This table takes as input two data encoded by K1, and produces the rest of the Euclidean division of the sum of the two data by 2 L1 , encoded by K1.
  • R 0 is the result of a 0 + b 0 modulo 2 L0 , that is the remainder of the Euclidean division of a 0 + b 0 by 2 L0
  • X is the quotient of the Euclidean division of a + b by 2 L0 + L1
  • Y is the result of a + b modulo 2 L0 + L1 , that is to say the rest of the Euclidean division of a + b by 2 L0 + L1, which decomposes into C 0 + Ri, where C 0 is the quotient of the Euclidean division of a-i + bi by 2 L1 , and R- ⁇ is the retention of the addition to 0 + b 0 modulo 2 L0 .
  • CW (A + B modulo 2 L0 + L1 ) is therefore equal to K 1 (Y) + K 0 (R 0 ).
  • Ki (Co) REM-K 0 [K 0 (a 0 ), K 0 (b 0 )]
  • K 1 (R 1 ) ADD-K 1 [K 1 (a 1 ), K, (b)]
  • this adaptation step for the operation or the decoding of the codewords can for This can be done by decomposing the code word M into the partial code words mi,. . . , m m that compose it, and performing the operation on each of the partial codewords before concatenating the results obtained.
  • each code word on which the operation is implemented is decomposed into its partial code words, and the operation is applied separately to the corresponding partial code words of each code word.
  • XOR-K 0 denotes the function or exclusive applied to two concatenated data, encoded by K 0 , and which returns their XOR in representation coded by K 0 .
  • XOR- ⁇ which applies to data coded by Ki and returns their XOR in representation coded by Ki.
  • R is of the same form as CW (A) and CW (B), that is to say the concatenation of two codewords coded respectively by Ki and K 0 .
  • the processing unit wants to decode the code words, it separates each code word M into the partial code words m, m m , and implements on each partial code word a decoding corresponding to the encoding implemented to obtain them.
  • the decoding algorithm depends of course on the encoding algorithm used beforehand. By way of non-limiting examples, other possibilities of encoding and decoding are described below in the context of the method described above.
  • the set of words of weight 3 among 6 bits is chosen as the arrival code, which is the following: ⁇ 7, 1 1, 13, 14, 19, 21, 22, 25, 26, 28, 35, 37, 38, 41, 42, 44, 49, 50, 52, 56).
  • This set has 20 elements; it is therefore adapted to encode the set E which contains 16.
  • the table K is then written [X, X, X, X, X, X, X, O, X, X, X, 1, X, 2, 3, X, X, X, X, 4,
  • X 5, 6, X, X, 7, 8, X, 9, X, X, X, X, X, 10, X, 1, 12, X, X, 13, 14, X, 15 , X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X], where X is a value that is not in the starting set E.
  • this word is split into two sequences of 4 bits each, each encoded on 6 bits as described above, then the partial codewords obtained are concatenated.
  • a table is prepared which receives the partial codewords as input and outputs the result of the operation applied to the concatenation of the partial codewords.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Quality & Reliability (AREA)
  • Storage Device Security (AREA)
EP14701692.7A 2013-02-27 2014-01-17 Verfahren zur datencodierung auf einer chipkarte mittels gewichtskonstanter codes Ceased EP2885875A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1351712 2013-02-27
PCT/EP2014/050867 WO2014131546A1 (fr) 2013-02-27 2014-01-17 Procede d'encodage de donnees sur une carte a puce par des codes de poids constant

Publications (1)

Publication Number Publication Date
EP2885875A1 true EP2885875A1 (de) 2015-06-24

Family

ID=48468549

Family Applications (1)

Application Number Title Priority Date Filing Date
EP14701692.7A Ceased EP2885875A1 (de) 2013-02-27 2014-01-17 Verfahren zur datencodierung auf einer chipkarte mittels gewichtskonstanter codes

Country Status (3)

Country Link
US (1) US9886597B2 (de)
EP (1) EP2885875A1 (de)
WO (1) WO2014131546A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3035532B1 (fr) * 2015-04-24 2018-07-27 Morpho Procede d'encodage de donnees minimisant les variations de fuites d'un composant electronique
CN106790040A (zh) * 2016-12-16 2017-05-31 郑州云海信息技术有限公司 网卡icmp协议的故障注入方法、系统及故障管理系统
US10673616B2 (en) * 2017-01-11 2020-06-02 Qualcomm Incorporated Lightweight mitigation against first-order probing side-channel attacks on block ciphers
US10705898B2 (en) * 2017-04-27 2020-07-07 Arxan Technologies, Inc. Transmitting surreptitious data on an existing communication channel
US11411989B2 (en) * 2017-04-27 2022-08-09 Arxan Technologies, Inc. Transmitting surreptitious data on an existing communication channel
US9912352B1 (en) 2017-06-06 2018-03-06 Western Digital Technologies, Inc. Hamming distance based binary representations of numbers
US10727872B2 (en) * 2018-01-10 2020-07-28 Western Digital Technologies, Inc. Encoding and decoding of hamming distance-based binary representations of numbers
TWI774985B (zh) * 2019-09-09 2022-08-21 新唐科技股份有限公司 記憶體裝置、寫入方法以及讀取方法
CN112422491B (zh) * 2020-05-08 2024-09-20 上海幻电信息科技有限公司 数字编码的加密解密方法、服务器和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001061916A2 (en) * 2000-02-18 2001-08-23 Cloakware Corporation Encoding method and system resistant to power analysis
US20050055563A1 (en) * 2002-01-24 2005-03-10 Wieland Fischer Device and method for generating an operation code
WO2010146139A1 (en) * 2009-06-19 2010-12-23 Irdeto B.V. White-box cryptographic system with configurable key using intermediate data modification
US20120311349A1 (en) * 2011-06-03 2012-12-06 Michael Dean Collins Method and System for a Programmable Parallel Computation and Data Manipulation Accelerator

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4776011A (en) * 1983-10-24 1988-10-04 Sony Corporation Recursive key schedule cryptographic system
ES2244639T3 (es) * 2000-08-03 2005-12-16 Koninklijke Philips Electronics N.V. Transformacion lineal para cifrado de claves simetricas.
US6661355B2 (en) 2000-12-27 2003-12-09 Apple Computer, Inc. Methods and apparatus for constant-weight encoding & decoding
JP2002247025A (ja) * 2001-02-22 2002-08-30 Hitachi Ltd 情報処理装置
US7149955B1 (en) * 2001-03-07 2006-12-12 Marvell International Ltd. Encoding and decoding apparatus and method with hamming weight enhancement
US7218734B2 (en) * 2001-05-02 2007-05-15 Nciper Corporation Limited Ring arithmetic method, system, and apparatus
FR2855286B1 (fr) * 2003-05-22 2005-07-22 Gemplus Card Int Transmission securisee de donnees entre deux modules
US8918900B2 (en) * 2004-04-26 2014-12-23 Ivi Holdings Ltd. Smart card for passport, electronic passport, and method, system, and apparatus for authenticating person holding smart card or electronic passport
US7002492B2 (en) * 2004-07-07 2006-02-21 Seagate Technology Llc High rate running digital sum-restricted code
JP5203594B2 (ja) 2006-11-07 2013-06-05 株式会社東芝 暗号処理回路及び暗号処理方法
WO2009134568A2 (en) * 2008-04-02 2009-11-05 Rambus Inc. Encoding data with minimum hamming weight variation
KR101582806B1 (ko) * 2008-05-20 2016-01-07 이르데토 비.브이. 암호화 시스템
WO2010049276A1 (en) * 2008-10-28 2010-05-06 International Business Machines Corporation Multiple erasure protection
WO2010100015A1 (en) * 2009-03-06 2010-09-10 Intrinsic Id B.V. System for establishing a cryptographic key depending on a physical system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001061916A2 (en) * 2000-02-18 2001-08-23 Cloakware Corporation Encoding method and system resistant to power analysis
US20050055563A1 (en) * 2002-01-24 2005-03-10 Wieland Fischer Device and method for generating an operation code
WO2010146139A1 (en) * 2009-06-19 2010-12-23 Irdeto B.V. White-box cryptographic system with configurable key using intermediate data modification
US20120311349A1 (en) * 2011-06-03 2012-12-06 Michael Dean Collins Method and System for a Programmable Parallel Computation and Data Manipulation Accelerator

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Lookup table", WIKIPEDIA, THE FREE ENCYCLOPEDIA, 25 February 2013 (2013-02-25), pages 1 - 7, XP055301166, Retrieved from the Internet <URL:https://en.wikipedia.org/w/index.php?title=Lookup_table&oldid=540287328> [retrieved on 20160908] *
See also references of WO2014131546A1 *

Also Published As

Publication number Publication date
US20160012255A1 (en) 2016-01-14
WO2014131546A1 (fr) 2014-09-04
US9886597B2 (en) 2018-02-06

Similar Documents

Publication Publication Date Title
EP2885875A1 (de) Verfahren zur datencodierung auf einer chipkarte mittels gewichtskonstanter codes
EP2946284B1 (de) Kryptografisches verfahren mit einem betrieb durch multiplikation mittels eines skalars oder einer exponentiation
EP2380306B1 (de) Kryptografieschaltung mit schutz vor beobachtungsangriffen, im besonderen höherer ordnung
WO2009095574A2 (fr) Procede et entite de chiffrement symetrique probabiliste
EP1611709B1 (de) Verschlüsselungsverfahren und -system
FR3033965A1 (de)
EP2415199B1 (de) Verfahren zur durchführung einer kryptographischen aufgabe in einem elektronischen bauelement
WO2012085047A1 (fr) Procede d&#39;authentification multimodale a seuil et generation de cle unimodale
WO2004105304A1 (fr) Transmission securisee de donnees entre deux modules
FR2988249A1 (fr) Procede de cryptage d&#39;une pluralite de donnees en un ensemble securise
EP2983083B1 (de) Kryptografie-verfahren auf einer elliptischen kurve, das eine fehlererfassung umfasst
FR3056322A1 (fr) Procede de chiffrement ou de dechiffrement protege contre des attaques par canaux caches
WO2001082525A1 (fr) Procede de calcul d&#39;une donnee de controle de cle cryptographique
EP2936302B1 (de) Generator für chaotische sequenzen
CA2875108C (fr) Elements secondaires dans un encodage de type fuzzy vault
EP1325584A1 (de) Verfahren zur kodierung langer nachrichten für auf rsa basierende digitalsignaturmethoden
FR3135854A1 (fr) Fourniture sécurisée de clefs pour un cryptage totalement homomorphe
EP3100403B1 (de) Unausgeglichene montgomery-leiter gegen seteinkanalangriffe
EP0752771A1 (de) Verfahren zur Verarbeitung eines digitalen Signals in solcher Weise, dass das Ausgangs- nicht vom Eingangssignal abgeleitet werden kann, und Verwendung des Verfahrens zur Zugriffssteuerung und/oder digitaler Unterschrift
Molaei et al. Steganography scheme based on Reed-Muller Code with improving payload and ability to Retrieval of Destroyed data for digital images
WO2009068658A1 (fr) Procedes et dispositifs de cryptage et de decryptage d&#39;un message de donnees a cle secrete aleatoire
EP1721246A2 (de) Verfahren und einrichtung zur durchführung einer kryptographischen operation
FR3105850A1 (fr) Procédé de codage d&#39;un motif d&#39;intégrité cryptographique de faible taille et dispositifs associés
EP2656534A1 (de) Verfahren zur multimodalen authentifizierung und erzeugung eines kryptografischen schlüssels anhand von sicheren generalisierten skizzen
EP3451316A1 (de) Vorrichtung zur modularen reduzierung

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20150319

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

17Q First examination report despatched

Effective date: 20160222

DAX Request for extension of the european patent (deleted)
REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20170510