CN107005404B - 实现密码算法的可执行的白盒掩码实施的处理器装置 - Google Patents

实现密码算法的可执行的白盒掩码实施的处理器装置 Download PDF

Info

Publication number
CN107005404B
CN107005404B CN201580068364.6A CN201580068364A CN107005404B CN 107005404 B CN107005404 B CN 107005404B CN 201580068364 A CN201580068364 A CN 201580068364A CN 107005404 B CN107005404 B CN 107005404B
Authority
CN
China
Prior art keywords
value
box
operation step
processor device
white
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.)
Active
Application number
CN201580068364.6A
Other languages
English (en)
Chinese (zh)
Other versions
CN107005404A (zh
Inventor
H.德雷克斯勒
S.鲍尔
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.)
Quartech Mobile Security LLC
Original Assignee
Giesecke and Devrient GmbH
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 Giesecke and Devrient GmbH filed Critical Giesecke and Devrient GmbH
Publication of CN107005404A publication Critical patent/CN107005404A/zh
Application granted granted Critical
Publication of CN107005404B publication Critical patent/CN107005404B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G09C1/06Apparatus 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 wherein elements corresponding to the signs making up the clear text are operatively connected with elements corresponding to the signs making up the ciphered text, the connections, during operation of the apparatus, being automatically and continuously permuted by a coding or key member
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • 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
    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • 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/04Masking or blinding
    • H04L2209/043Masking or blinding of tables, e.g. lookup, substitution or mapping
    • 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/08Randomization, e.g. dummy operations or using noise
    • 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/16Obfuscation or hiding, e.g. involving white box

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Storage Device Security (AREA)
CN201580068364.6A 2014-11-10 2015-10-30 实现密码算法的可执行的白盒掩码实施的处理器装置 Active CN107005404B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102014016548.5 2014-11-10
DE102014016548.5A DE102014016548A1 (de) 2014-11-10 2014-11-10 Verfahren zum Testen und zum Härten von Softwareapplikationen
PCT/EP2015/002223 WO2016074776A1 (de) 2014-11-10 2015-10-30 Gehärtete white box implementierung 1

Publications (2)

Publication Number Publication Date
CN107005404A CN107005404A (zh) 2017-08-01
CN107005404B true CN107005404B (zh) 2020-11-03

Family

ID=54541013

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201580068364.6A Active CN107005404B (zh) 2014-11-10 2015-10-30 实现密码算法的可执行的白盒掩码实施的处理器装置
CN202010868468.8A Active CN112002210B (zh) 2014-11-10 2015-11-09 用于测试并且加固软件应用的方法
CN201580070804.1A Active CN107111966B (zh) 2014-11-10 2015-11-09 用于测试并且加固软件应用的方法

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN202010868468.8A Active CN112002210B (zh) 2014-11-10 2015-11-09 用于测试并且加固软件应用的方法
CN201580070804.1A Active CN107111966B (zh) 2014-11-10 2015-11-09 用于测试并且加固软件应用的方法

Country Status (6)

Country Link
US (4) US10249220B2 (de)
EP (5) EP3218893B1 (de)
CN (3) CN107005404B (de)
CA (1) CA2966417C (de)
DE (1) DE102014016548A1 (de)
WO (4) WO2016074774A1 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014016548A1 (de) 2014-11-10 2016-05-12 Giesecke & Devrient Gmbh Verfahren zum Testen und zum Härten von Softwareapplikationen
DE102015014038A1 (de) 2015-10-30 2017-05-04 Giesecke & Devrient Gmbh Alternative Darstellung des Krypto-Algorithmus DES
DE102015015953B3 (de) 2015-12-08 2017-04-27 Giesecke & Devrient Gmbh Kryptoalgorithmus mit schlüsselabhängigem maskiertem Rechenschritt (SBOX-Aufruf)
US10171234B2 (en) * 2015-12-16 2019-01-01 Nxp B.V. Wide encoding of intermediate values within a white-box implementation
DE102016008456B4 (de) * 2016-07-12 2018-03-29 Giesecke+Devrient Mobile Security Gmbh White Box AES Implementierung
MX2019006912A (es) * 2016-12-12 2019-10-15 Arris Entpr Llc Criptografia de caja blanca fuerte.
CN106712965B (zh) * 2017-01-17 2020-02-18 数安时代科技股份有限公司 数字签名方法、装置以及密码设备
US10547449B2 (en) * 2017-05-30 2020-01-28 Nxp B.V. Protection against relay attacks in a white-box implementation
EP3651142A4 (de) * 2017-08-10 2021-03-24 Sony Corporation Verschlüsselungsvorrichtung, verschlüsselungsverfahren, entschlüsselungsvorrichtung und entschlüsselungsverfahren
US10630462B2 (en) * 2017-10-27 2020-04-21 Nxp B.V. Using white-box in a leakage-resilient primitive
EP3493457A1 (de) * 2017-11-30 2019-06-05 Gemalto Sa Verfahren zum schutz einer entropiequelle für gegenmassnahmen zur sicherung eines kryptografischen whitebox-algorithmus
CN108090349A (zh) * 2017-12-19 2018-05-29 武汉珈港科技有限公司 一种基于白盒指令和扩展图灵模型的应用程序白盒化保护系统及方法
CN110505054B (zh) * 2019-03-28 2021-03-26 杭州海康威视数字技术股份有限公司 一种基于动态白盒的数据处理方法、装置及设备
US11700111B2 (en) * 2019-06-26 2023-07-11 Cryptography Research, Inc. Platform neutral data encryption standard (DES) cryptographic operation
CN111010266B (zh) * 2019-12-09 2023-04-07 广州市百果园信息技术有限公司 消息的加解密、读写方法、装置、计算机设备和存储介质
US11632231B2 (en) * 2020-03-05 2023-04-18 Novatek Microelectronics Corp. Substitute box, substitute method and apparatus thereof
CN112003687B (zh) * 2020-08-26 2023-04-07 成都卫士通信息产业股份有限公司 一种白盒运算方法、装置、电子设备及计算机存储介质
CN113541942B (zh) * 2021-07-12 2022-06-07 西安电子科技大学 基于arx白盒分组密码的数字内容加解密方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008119901A2 (fr) * 2007-02-28 2008-10-09 France Telecom Procede de dechiffrement par un algorithme cryptographique de donnees chiffrees
CN101371480A (zh) * 2005-11-21 2009-02-18 爱特梅尔公司 加密保护方法
CN102461058A (zh) * 2009-03-10 2012-05-16 爱迪德有限责任公司 具有输入相关编码的白盒密码系统
CN102460404A (zh) * 2009-06-01 2012-05-16 起元技术有限责任公司 生成混淆数据
CN104052595A (zh) * 2014-05-23 2014-09-17 戴葵 密码算法定制方法

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6075865A (en) * 1998-07-01 2000-06-13 Tecsec Incorporated Cryptographic communication process and apparatus
GB2345229B (en) * 1998-12-23 2003-12-03 Motorola Ltd Method for encrypting data
CA2298990A1 (en) * 2000-02-18 2001-08-18 Cloakware Corporation Method and system for resistance to power analysis
CA2327911A1 (en) * 2000-12-08 2002-06-08 Cloakware Corporation Obscuring functions in computer software
FR2858496B1 (fr) * 2003-07-31 2005-09-30 Gemplus Card Int Procede pour la mise en oeuvre securisee d'un algorithme de cryptographie de type rsa et composant correspondant
CN101167114A (zh) * 2005-04-28 2008-04-23 松下电器产业株式会社 程序转换装置、加密处理装置以及加密处理方法
FR2897216B1 (fr) * 2006-02-08 2008-05-02 Sagem Defense Securite Protection d'un algorithme cryptographique
DE602006015902D1 (de) * 2006-03-07 2010-09-16 Research In Motion Ltd Tabellenteilung für kryptografische Verfahren
WO2007105126A2 (en) * 2006-03-10 2007-09-20 Koninklijke Philips Electronics N.V. Method and system for obfuscating a cryptographic function
BRPI0714242A2 (pt) * 2006-07-12 2013-01-29 Koninkl Philips Electronics Nv sistema e mÉtodo para aumentar a resistÊncia Á adulteraÇço de uma unidade de processamento de dados digitais, e, produto de programa de computador
US8700915B2 (en) * 2006-07-12 2014-04-15 Irdeto Corporate B.V. Method and system for verifying authenticity of at least part of an execution environment for executing a computer module
EP2092684A2 (de) * 2006-11-17 2009-08-26 Koninklijke Philips Electronics N.V. Kryptographisches verfahren für eine white-box-implementierung
CN101542558A (zh) * 2007-05-30 2009-09-23 松下电器产业株式会社 加密装置、解密装置、加密方法及集成电路
EP2238709A1 (de) * 2008-01-31 2010-10-13 Irdeto B.V. Sicherung einer smart-card
CN102047220B (zh) * 2008-05-23 2014-12-17 爱迪德加拿大公司 生成软件应用程序的白盒实现的系统和方法
US8094816B2 (en) * 2008-10-21 2012-01-10 Apple Inc. System and method for stream/block cipher with internal random states
EP2443786A1 (de) * 2009-06-19 2012-04-25 Irdeto B.V. Krypografisches white-box-system mit konfigurierbarem schlüssel mittels zwischendatenänderung
EP2293487A1 (de) * 2009-09-08 2011-03-09 Thomson Licensing Verfahren zur Diversifikation der Runden eines Verschlüsselungalgorithmus
FR2951599B1 (fr) * 2009-10-20 2011-11-25 St Microelectronics Rousset Procede securise de calcul cryptographique et composant electronique correspondant
WO2011080487A1 (fr) * 2009-12-30 2011-07-07 France Telecom Procede de generation de table de correspondance pour une boite blanche cryptographique
EP2369778B1 (de) * 2010-03-26 2018-08-15 Irdeto B.V. Persönliche Weißbox-Entschlüsseler
JP5697180B2 (ja) * 2010-03-31 2015-04-08 イルデト カナダ コーポレーション ホワイトボックス攻撃から暗号化資産を保護するためのシステムと方法
US8644500B2 (en) * 2010-08-20 2014-02-04 Apple Inc. Apparatus and method for block cipher process for insecure environments
KR20120089396A (ko) * 2010-11-16 2012-08-10 삼성전자주식회사 암호화 장치 및 그 암호화 방법
KR20120068543A (ko) * 2010-12-17 2012-06-27 한국전자통신연구원 화이트박스 암호를 이용한 소프트웨어 설치 장치 및 방법
US8605894B2 (en) 2011-07-14 2013-12-10 Apple Inc. Cryptographic process execution protecting an input value against attacks
CN104025501B (zh) * 2011-12-29 2018-03-27 英特尔公司 用于不确定性随机位发生器(nrbg)的方法和装置
EP2829010B1 (de) * 2012-03-20 2020-11-04 Irdeto B.V. Aktualisierung von schlüsselinformationen
EP2831795B1 (de) * 2012-03-30 2019-01-09 Irdeto B.V. Sicherung zugänglicher systeme mit variablenabhängiger codierung
US8976960B2 (en) * 2012-04-02 2015-03-10 Apple Inc. Methods and apparatus for correlation protected processing of cryptographic operations
US9584310B2 (en) * 2014-03-19 2017-02-28 Nxp B.V. Protecting a white-box implementation against attacks
US9569639B2 (en) * 2014-09-12 2017-02-14 Nxp B.V. Remapping constant points in a white-box implementation
DE102014016548A1 (de) 2014-11-10 2016-05-12 Giesecke & Devrient Gmbh Verfahren zum Testen und zum Härten von Softwareapplikationen
US9819486B2 (en) * 2014-12-19 2017-11-14 Nxp B.V. S-box in cryptographic implementation
US10235506B2 (en) * 2015-05-05 2019-03-19 Nxp B.V. White-box modular exponentiation
DE102015014038A1 (de) * 2015-10-30 2017-05-04 Giesecke & Devrient Gmbh Alternative Darstellung des Krypto-Algorithmus DES

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101371480A (zh) * 2005-11-21 2009-02-18 爱特梅尔公司 加密保护方法
WO2008119901A2 (fr) * 2007-02-28 2008-10-09 France Telecom Procede de dechiffrement par un algorithme cryptographique de donnees chiffrees
CN102461058A (zh) * 2009-03-10 2012-05-16 爱迪德有限责任公司 具有输入相关编码的白盒密码系统
CN102460404A (zh) * 2009-06-01 2012-05-16 起元技术有限责任公司 生成混淆数据
CN104052595A (zh) * 2014-05-23 2014-09-17 戴葵 密码算法定制方法

Also Published As

Publication number Publication date
CN107005404A (zh) 2017-08-01
US20170352298A1 (en) 2017-12-07
EP3219043A1 (de) 2017-09-20
EP3218893B1 (de) 2019-01-30
DE102014016548A1 (de) 2016-05-12
WO2016074782A1 (de) 2016-05-19
WO2016074774A1 (de) 2016-05-19
EP3219042B1 (de) 2018-12-12
US10438513B2 (en) 2019-10-08
CA2966417C (en) 2020-04-28
US20170324543A1 (en) 2017-11-09
US20170324542A1 (en) 2017-11-09
CA2966417A1 (en) 2016-05-19
WO2016074776A1 (de) 2016-05-19
EP3219043B1 (de) 2018-12-12
US20170324547A1 (en) 2017-11-09
EP3686871A1 (de) 2020-07-29
CN112002210B (zh) 2024-05-31
WO2016074775A1 (de) 2016-05-19
US10403174B2 (en) 2019-09-03
US10431123B2 (en) 2019-10-01
EP3219042A1 (de) 2017-09-20
US10249220B2 (en) 2019-04-02
CN112002210A (zh) 2020-11-27
CN107111966A (zh) 2017-08-29
CN107111966B (zh) 2020-12-29
EP3218894A1 (de) 2017-09-20
EP3218893A1 (de) 2017-09-20

Similar Documents

Publication Publication Date Title
CN107005404B (zh) 实现密码算法的可执行的白盒掩码实施的处理器装置
KR101345083B1 (ko) 암호화 보호 방법
US8199909B2 (en) Method and device for carrying out a cryptographic calculation
AU2011292312B2 (en) Apparatus and method for block cipher process for insecure environments
RU2502201C2 (ru) Устройство обработки шифрования/дешифрования, способ обработки шифрования/дешифрования, устройство обработки информации и компьютерная программа
US10790962B2 (en) Device and method to compute a block cipher
US20090086976A1 (en) Substitution table masking for cryptographic processes
CN106487497B (zh) 对rijndael算法的dpa保护
US10243728B2 (en) Verification of the resistance of an electronic circuit to side-channel attacks
CN113940028A (zh) 实现白盒密码的方法和装置
US10187198B2 (en) Protection of a rijndael algorithm
US9565018B2 (en) Protecting cryptographic operations using conjugacy class functions
KR102290025B1 (ko) 화이트 박스 aes 구현
EP3078154B1 (de) Berechnungsvorrichtung für iterative anwendung von tischnetzwerken
CN107592963B (zh) 用于执行安全计算的方法和计算设备
KR101203474B1 (ko) 암호화 프로세서를 갖는 단위 전자장치의 보안화 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20191111

Address after: Munich, Germany

Applicant after: Quartech mobile security limited liability company

Address before: Munich, Germany

Applicant before: German Jede Co., Ltd.

GR01 Patent grant
GR01 Patent grant