JP6502945B2 - 安全なデータ変換 - Google Patents
安全なデータ変換 Download PDFInfo
- Publication number
- JP6502945B2 JP6502945B2 JP2016540585A JP2016540585A JP6502945B2 JP 6502945 B2 JP6502945 B2 JP 6502945B2 JP 2016540585 A JP2016540585 A JP 2016540585A JP 2016540585 A JP2016540585 A JP 2016540585A JP 6502945 B2 JP6502945 B2 JP 6502945B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- function
- memory
- transformation
- look
- 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
Links
- 238000006243 chemical reaction Methods 0.000 title claims description 48
- 230000009466 transformation Effects 0.000 claims description 111
- 230000006870 function Effects 0.000 claims description 53
- 238000000034 method Methods 0.000 claims description 41
- 238000013507 mapping Methods 0.000 claims description 28
- 238000000844 transformation Methods 0.000 claims description 19
- 230000015654 memory Effects 0.000 claims description 18
- 230000001419 dependent effect Effects 0.000 claims description 11
- 230000002441 reversible effect Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 230000015572 biosynthetic process Effects 0.000 claims 2
- 238000004364 calculation method Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- 230000003245 working effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Facsimile Transmission Control (AREA)
Description
入力データ値w0に変換を適用してw0の不明化された〔難読化された(obfuscated)〕表現(X0,Y0)を得る第一の変換手段であって、前記不明化された表現は入力変数rに依存する冗長性をもつ、手段と;
i=1,…,n−1のそれぞれについて、
wn=G(Xi-1,Yi-1,r)を計算することによってXn-1,Yn-1およびrに依存する変換Gを適用して、変換の前記シーケンスの結果を得る第三の変換手段とを有しており、
i=0,1,…,nについて(Xi,Yi)=Ψi(wi,σi)であり、Ψiは、(Xi,Yi)と(wi,σi)の間の一対一関係を定義するあらかじめ定義された不明化関数であり、Ψiは(Xi,Yi)=Ψi(wi,σi)となるよう(Xi,σi)の任意の値を(wi,Yi)の値にマッピングする一対一マッピングがあるという条件を満たし;
σ0はrに依存し;
あらかじめ決められた関数Tiおよびgiについてi=1,…,nについてwi=Ti(wi-1)およびσi=gi(σi-1)であり、w1,…,wn-1およびσ0,…,σnは当該システムによって明示的に計算されない、
システムを提供する。
第一の変換手段を提供し、入力データ値w0に変換を適用してw0の不明化された表現(X0,Y0)を得るよう該第一の変換手段を構成する段階であって、前記不明化された表現(X0,Y0)は入力変数rに依存する冗長性を含む、段階と;
第二の変換手段を提供し、i=1,…,n−1のそれぞれについて、
第四の変換手段を提供し、Xn=un(Xn-1,Yn-1)のような変換unを適用するよう該第四の変換手段を構成する段階と;
第五の変換手段を提供し、wn=F(Xn,r)のように変換Fを適用して前記変換のシーケンスの帰結を得るよう該第五の変換手段を構成する段階であって、
i=0,1,…,nについて(Xi,Yi)=Ψi(wi,σi)であり、Ψiは、(Xi,Yi)と(wi,σi)の間の一対一関係を定義するあらかじめ定義された不明化関数であり、Ψiは(Xi,Yi)=Ψi(wi,σi)となるような仕方で(Xi,σi)の任意の値を(wi,Yi)の値にマッピングする一対一マッピングがあるという条件を満たし;
σ0はrに依存し;
あらかじめ決められた関数Tiおよびgiについてi=1,…,nについてwi=Ti(wi-1)およびσi=gi(σi-1)であり、
前記第一の変換手段、前記第二の変換手段、前記第四の変換手段および前記第五の変換手段はw1,…,wn-1およびσ0,…,σnの値を不明化するよう構成される、
方法を有する。
入力データ値w0に変換を適用してw0の不明化された表現(X0,Y0)を得る段階であって、前記不明化された表現は入力変数rに依存する冗長性を含む、段階と;
i=1,…,n−1のそれぞれについて、
i=0,1,…,nについて(Xi,Yi)=Ψi(wi,σi)であり、Ψiは、(Xi,Yi)と(wi,σi)の間の一対一関係を定義するあらかじめ定義された不明化関数であり、Ψiは(Xi,Yi)=Ψi(wi,σi)となるような仕方で(Xi,σi)の任意の値を(wi,Yi)の値にマッピングする一対一マッピングがあるという条件を満たし;
σ0はrに依存し;
あらかじめ決められた関数Tiおよびgiについてi=1,…,nについてwi=Ti(wi-1)およびσi=gi(σi-1)であり、
w1,…,wn-1およびσ0,…,σnは変換を適用する上記の諸段階において不明化される、
方法が提供される。
wi=Ti(wi-1)
が実行される。変換T1,…,Tnは、この逐次反復の結果wnがT(w0)と等しいように選ばれる。しかしながら、たとえ悪意のあるユーザーが作業メモリへのアクセスを含め当該装置へのフル・アクセスを有する場合でも、あるいは悪意のあるユーザーがアプリケーションを解析するデバッグ・ツールを使う能力をもつ場合でも、これらの変換において使われるアルゴリズムを隠すこと、および/または中間的な値w1,…,wn-1が悪意のあるユーザーから隠されることが望ましいであろう。
Ψi X、Ψi Y、φi 1、φi 2は可逆なマッピングであり、
σ0はrに依存し、
あらかじめ決められた関数Tiおよびgiについてi=1,…,nについてwi=Ti(wi-1)およびσi=gi(σi-1)である。ここで、w1,…,wn-1およびσ0,…,σnはシステムによって明示的に計算されない。
Claims (14)
- i=1,…,nであるとして、入力データ値w0 に対してn個の変換Ti のシーケンスを実行するための、コンピュータによって実装されるシステムであって:
メモリに記憶された入力データ値w0に変換を適用してw0の難読化された表現(X0,Y0)を得てメモリに記憶する第一の変換手段であって、前記難読化された表現(X0,Y0)は入力変数rに依存する冗長性をもつ、手段と;
i=1,…,n−1のそれぞれについて、
メモリに記憶されたXn-1,Yn-1およびrから変換の前記シーケンスの帰結
i=0,1,…,nについて(Xi,Yi)=Ψi(wi,σi)であり、Ψiは、(Xi,Yi)と(wi,σi)の間の一対一関係を定義するあらかじめ定義された難読化関数であり、Ψiは(Xi,Yi)=Ψi(wi,σi)となるよう(Xi,σi)の任意の値を(wi,Yi)の値にマッピングする一対一マッピングがあるという条件を満たし;
σ0はrに依存し;
T iおよびgiについてi=1,…,nについてwi=Ti(wi-1)およびσi=gi(σi-1)であり、g i はあらかじめ決められた関数であり、
システム。 - 前記第一の変換手段は、メモリに記憶された、w 0 の値の(X 0 ,Y 0 )の対応する値へのマッピングを表わす少なくとも一つのルックアップテーブルを含む、請求項1記載のシステム。
- rはw0に等しい、請求項1記載のシステム。
- 前記第一、第二および第三の変換手段のうちの少なくとも一つは、少なくとも一つの事前計算されメモリに記憶されたルックアップテーブルによって実装される、請求項1記載のシステム。
- i=1,…,nであるとして、入力データ値に対してn個の変換Ti のシーケンスを実行するための、コンピュータによって実装されるシステムを提供する方法であって:
コンピュータによって実装される第一の変換手段を提供し、入力データ値w0に変換を適用してw0の難読化された表現(X0,Y0)を得るよう該第一の変換手段を構成する段階であって、前記難読化された表現(X0,Y0)は入力変数rに依存する冗長性を含む、段階と;
コンピュータによって実装される第二の変換手段を提供し、i=1,…,n−1のそれぞれについて、
コンピュータによって実装される第三の変換手段を提供し、X n-1,Yn-1およびrから変換の前記シーケンスの帰結
i=0,1,…,nについて(Xi,Yi)=Ψi(wi,σi)であり、Ψiは、(Xi,Yi)と(wi,σi)の間の一対一関係を定義するあらかじめ定義された難読化関数であり、Ψiは(Xi,Yi)=Ψi(wi,σi)となるような仕方で(Xi,σi)の任意の値を(wi,Yi)の値にマッピングする一対一マッピングがあるという条件を満たし;
σ0はrに依存し;
T iおよびgiについてi=1,…,nについてwi=Ti(wi-1)およびσi=gi(σi-1)であり、g i はあらかじめ決められた関数であり、
方法。 - 前記第一の変換手段を構成する段階は、w0の値の(X0,Y0)の対応する値へのマッピングを表わす少なくとも一つのルックアップテーブルを作成して記憶手段に記憶することを含む、請求項8記載の方法。
- (XI,Yi)=Ψi(wI,σI)は
Ai、Bi、CiおよびDiは演算子
Ψi X、Ψi Y、φi 1、φi 2は可逆なマッピングであり、
前記第二の変換手段を構成する段階は、関数
請求項8記載の方法。 - rはw0に等しく、前記第三の変換手段を構成する段階は、X n-1 ,Y n-1 およびrからw n に等しい値を得る関数Gを表わす少なくとも一つのルックアップテーブルを作成して記憶手段に記憶することを含み、前記少なくとも一つのルックアップテーブルは(Xi-1,Yi-1,w0)のタプルをwn=G(Xi-1,Yi-1,w0)の対応する値にマッピングする、請求項8記載の方法。
- i=1,…,nであるとして、入力データ値に対してn個の変換Ti のシーケンスを実行するための、コンピュータによって実装される方法であって:
メモリに記憶された入力データ値w0に変換を適用してw0の難読化された表現(X0,Y0)を得てメモリに記憶する段階であって、前記難読化された表現は入力変数rに依存する冗長性を含む、段階と;
i=1,…,n−1のそれぞれについて、
メモリに記憶されたXn-1,Yn-1およびrから変換の前記シーケンスの帰結
i=0,1,…,nについて(Xi,Yi)=Ψi(wi,σi)であり、Ψiは、(Xi,Yi)と(wi,σi)の間の一対一関係を定義するあらかじめ定義された難読化関数であり、Ψiは(Xi,Yi)=Ψi(wi,σi)となるような仕方で(Xi,σi)の任意の値を(wi,Yi)の値にマッピングする一対一マッピングがあるという条件を満たし;
σ0はrに依存し;
T iおよびgiについてi=1,…,nについてwi=Ti(wi-1)およびσi=gi(σi-1)であり、g i はあらかじめ決められた関数であり、
方法。 - プロセッサ・システムに請求項8ないし13のうちいずれか一項記載の方法を実行させるための命令を有するコンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP13198922.0 | 2013-12-20 | ||
EP13198922 | 2013-12-20 | ||
PCT/EP2014/077301 WO2015091172A1 (en) | 2013-12-20 | 2014-12-11 | Secure data transformations |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017501447A JP2017501447A (ja) | 2017-01-12 |
JP6502945B2 true JP6502945B2 (ja) | 2019-04-17 |
Family
ID=49916885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016540585A Active JP6502945B2 (ja) | 2013-12-20 | 2014-12-11 | 安全なデータ変換 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10256970B2 (ja) |
EP (1) | EP3085005B1 (ja) |
JP (1) | JP6502945B2 (ja) |
CN (1) | CN105814833B (ja) |
RU (1) | RU2680761C1 (ja) |
WO (1) | WO2015091172A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10256970B2 (en) * | 2013-12-20 | 2019-04-09 | Konnklijke Philips N.V. | Secure data transformations |
KR101933649B1 (ko) * | 2016-05-27 | 2018-12-28 | 삼성에스디에스 주식회사 | 화이트박스 암호 알고리즘을 이용한 공개키 암호화를 위한 장치 및 방법 |
DE102016008456B4 (de) * | 2016-07-12 | 2018-03-29 | Giesecke+Devrient Mobile Security Gmbh | White Box AES Implementierung |
EP3376705A1 (en) | 2017-03-17 | 2018-09-19 | Koninklijke Philips N.V. | Elliptic curve point multiplication device and method in a white-box context |
CN109714152B (zh) * | 2019-01-17 | 2020-04-07 | 西安电子科技大学 | 基于大型仿射编码的白盒aes加密方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020051537A1 (en) * | 2000-09-13 | 2002-05-02 | Rogaway Phillip W. | Method and apparatus for realizing a parallelizable variable-input-length pseudorandom function |
US7099469B2 (en) * | 2001-10-17 | 2006-08-29 | Motorola, Inc. | Method of scrambling and descrambling data in a communication system |
EP1326363A1 (en) * | 2001-12-27 | 2003-07-09 | STMicroelectronics S.r.l. | Chaos-based block encryption |
EP1387519A3 (fr) * | 2002-07-09 | 2004-02-18 | Cp8 | Procédé de sécurisation d'un ensemble électronique contre des attaques par introduction d'erreurs |
EP1475920A4 (en) * | 2002-12-03 | 2005-03-02 | Matsushita Electric Ind Co Ltd | KEY SHARING SYSTEM, SHARED KEY CREATING DEVICE, AND SHARED KEY RESTORING DEVICE |
KR100546375B1 (ko) * | 2003-08-29 | 2006-01-26 | 삼성전자주식회사 | 자체 오류 감지 기능을 강화한 상호 의존적 병렬 연산방식의 하드웨어 암호화 장치 및 그 하드웨어 암호화 방법 |
US7715553B2 (en) * | 2005-08-01 | 2010-05-11 | Durward D. Dupre | Encrypting a plaintext message with authentication |
JP2007189659A (ja) * | 2005-12-15 | 2007-07-26 | Toshiba Corp | 暗号化装置、暗号化方法及び暗号化プログラム |
US8379841B2 (en) * | 2006-03-23 | 2013-02-19 | Exegy Incorporated | Method and system for high throughput blockwise independent encryption/decryption |
JP2008098690A (ja) * | 2006-10-05 | 2008-04-24 | Sharp Corp | 暗号化装置、復号化装置、暗号化プログラム、復号化プログラム、暗号化プログラムが格納された記録媒体、復号化プログラムが格納された記録媒体、暗号化方法、復号化方法およびテーブル作成方法 |
EP2186250B1 (en) * | 2007-08-31 | 2019-03-27 | IP Reservoir, LLC | Method and apparatus for hardware-accelerated encryption/decryption |
RU2417410C2 (ru) * | 2008-08-19 | 2011-04-27 | Общество С Ограниченной Ответственностью "Крипто-Про" | Способ хранения и использования криптографического ключа |
US8891756B2 (en) * | 2008-10-30 | 2014-11-18 | Certicom Corp. | Collision-resistant elliptic curve hash functions |
KR101715027B1 (ko) * | 2009-03-10 | 2017-03-22 | 이르데토 비.브이. | 입력 의존형 인코딩들을 이용한 화이트-박스 암호화 시스템 |
WO2010112739A1 (fr) * | 2009-03-31 | 2010-10-07 | France Telecom | Procede pour effectuer une tache cryptographique dans un composant electronique |
KR101246241B1 (ko) * | 2009-04-24 | 2013-03-22 | 니뽄 덴신 덴와 가부시키가이샤 | 암호화 장치, 복호장치, 암호화 방법, 복호방법, 세큐러티 방법, 프로그램 및 기록매체 |
RU2411666C1 (ru) * | 2009-08-26 | 2011-02-10 | Николай Андреевич Молдовян | Способ шифрования |
WO2011080487A1 (fr) * | 2009-12-30 | 2011-07-07 | France Telecom | Procede de generation de table de correspondance pour une boite blanche cryptographique |
EP2899713B1 (en) * | 2012-09-21 | 2019-04-24 | Mitsubishi Electric Corporation | Hash value calculation device, hash value calculation method and hash value calculation program |
US10256970B2 (en) * | 2013-12-20 | 2019-04-09 | Konnklijke Philips N.V. | Secure data transformations |
US9425952B2 (en) * | 2014-03-27 | 2016-08-23 | Samsung Israel Research Corporation | Algebraic manipulation detection codes from algebraic curves |
-
2014
- 2014-12-11 US US15/105,872 patent/US10256970B2/en active Active
- 2014-12-11 EP EP14809656.3A patent/EP3085005B1/en active Active
- 2014-12-11 CN CN201480069933.4A patent/CN105814833B/zh active Active
- 2014-12-11 WO PCT/EP2014/077301 patent/WO2015091172A1/en active Application Filing
- 2014-12-11 RU RU2016129282A patent/RU2680761C1/ru active
- 2014-12-11 JP JP2016540585A patent/JP6502945B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
US10256970B2 (en) | 2019-04-09 |
EP3085005A1 (en) | 2016-10-26 |
CN105814833A (zh) | 2016-07-27 |
CN105814833B (zh) | 2019-12-13 |
JP2017501447A (ja) | 2017-01-12 |
RU2016129282A (ru) | 2018-01-25 |
US20160323099A1 (en) | 2016-11-03 |
WO2015091172A1 (en) | 2015-06-25 |
RU2680761C1 (ru) | 2019-02-26 |
EP3085005B1 (en) | 2019-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6502945B2 (ja) | 安全なデータ変換 | |
CN105453481B (zh) | 包括表网络的计算设备 | |
US10726108B2 (en) | Protecting the input/output of modular encoded white-box RSA | |
US8504845B2 (en) | Protecting states of a cryptographic process using group automorphisms | |
KR102550812B1 (ko) | 동형 암호를 이용한 암호문 비교 방법 및 이를 수행하기 위한 장치 | |
JP5861018B1 (ja) | テーブルネットワークによって構成されたコンピューティングデバイス | |
JP7076474B2 (ja) | 暗号装置及び方法 | |
JP2019523492A (ja) | 難読化算術を実行するためのデバイス及び方法 | |
US8675866B2 (en) | Multiplicative splits to protect cipher keys | |
JP2020515093A (ja) | 符号化加算のための計算デバイス | |
US10235506B2 (en) | White-box modular exponentiation | |
EP3078154B1 (en) | A computing device for iterative application of table networks | |
Coron et al. | Fast evaluation of polynomials over binary finite fields and application to side-channel countermeasures | |
KR101914453B1 (ko) | 암호화 장치 및 방법 | |
US10068070B2 (en) | White-box elliptic curve point multiplication | |
JP6890589B2 (ja) | 計算デバイス及び方法 | |
KR101440680B1 (ko) | 중국인 나머지 정리에 기반한 준동형 암복호화 방법 및 이를 이용한 장치 | |
JP6522860B2 (ja) | 計算装置及び方法 | |
NL2015911B1 (en) | Calculating device and method. | |
WO2022009384A1 (ja) | 最終べき計算装置、ペアリング演算装置、暗号処理装置、最終べき計算方法及び最終べき計算プログラム | |
JP6181573B2 (ja) | データ共有システム、データ共有方法およびプログラム | |
JP6876423B2 (ja) | ストリーム暗号における内部状態の初期化装置、方法及びプログラム | |
JP2019092030A (ja) | 演算装置、演算方法及び演算プログラム | |
JP2004102096A (ja) | 暗号システムとそれに用いる復号処理装置並びにその復号プログラムと復号方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180911 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181112 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190226 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190322 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6502945 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |