JP6884284B2 - キー付きメッセージ認証コードのホワイトボックス計算 - Google Patents
キー付きメッセージ認証コードのホワイトボックス計算 Download PDFInfo
- Publication number
- JP6884284B2 JP6884284B2 JP2020535636A JP2020535636A JP6884284B2 JP 6884284 B2 JP6884284 B2 JP 6884284B2 JP 2020535636 A JP2020535636 A JP 2020535636A JP 2020535636 A JP2020535636 A JP 2020535636A JP 6884284 B2 JP6884284 B2 JP 6884284B2
- Authority
- JP
- Japan
- Prior art keywords
- state
- compression
- message
- hash
- compression function
- 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
- 238000004364 calculation method Methods 0.000 title claims description 48
- 230000006870 function Effects 0.000 claims description 220
- 230000006835 compression Effects 0.000 claims description 186
- 238000007906 compression Methods 0.000 claims description 186
- 238000000034 method Methods 0.000 claims description 36
- 230000014509 gene expression Effects 0.000 claims 2
- 230000015654 memory Effects 0.000 description 36
- 238000004590 computer program Methods 0.000 description 22
- 238000007726 management method Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 241001074639 Eucalyptus albens Species 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000007790 scraping Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000969 carrier Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005352 clarification Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000021615 conjugation Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005415 magnetization Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012360 testing method Methods 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/32—Cryptographic 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/3236—Cryptographic 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 cryptographic hash functions
- H04L9/3242—Cryptographic 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 cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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
-
- 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/30—Compression, e.g. Merkle-Damgard construction
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Power Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
− 入力メッセージを受信すると共に、該入力メッセージを1以上のメッセージブロックに分割するステップ(510)と、
− 内側ハッシュの計算を実行するステップ(520)であって、
− 状態を暗号キーに基づいて初期化するステップ(522)、及び
− 一連の第1圧縮関数(hE;gE)を適用するステップ(523)であって、前記第1圧縮関数は前記状態及びメッセージブロックを入力として取り込むと共に、新たな状態を生成し、これら第1圧縮関数のうちの少なくとも1つが前記状態をエンコードされた表現の入力として取り込むステップ、
を有する、内側ハッシュの計算を実行するステップと、
− 外側ハッシュの計算を実行するステップ(530)であって、
− 状態を前記暗号キーに基づいて初期化するステップ(532)、及び
− 1以上の第2圧縮関数(uE;gE)を適用するステップ(533)であって、前記第2圧縮関数は前記状態及び前記内側ハッシュのブロックを入力として取り込むと共に、新たな状態を生成し、これら第2圧縮関数のうちの少なくとも1つが前記状態をエンコードされた表現の入力として取り込むステップ、
を有する、外側ハッシュの計算を実行するステップと、
を有する。
http://www.ietf.org/rfc/rfc2104.txt
[2] S. Chow, P. Eisen, H. Johnson, P.C. van Oorschot. "White-Box Cryptography and an AES Implementation" In 9th Annual Workshop on Selected Areas in Cryptography (SAC 2002), Aug.15-16 2002, St. John's, Canada. Proceedings: pp.250-270, Springer LNCS 2595 15 (2003)
[3] Secure Hash Standard, FIPS PUB 180-4,
http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf
110 メッセージ管理ユニット
120 状態初期化記憶部
130 入力メッセージを受信するための入力インターフェース
140 状態初期化ユニット
142 内側状態計算ユニット
144 外側状態計算ユニット
150 内側ハッシュユニット
152〜156 内側圧縮ユニット
160 外側ハッシュユニット
162〜164 外側圧縮ユニット
212 内側キーブロック
214 外側キーブロック
220 圧縮関数
221〜223 メッセージブロック
231〜233 第1圧縮関数
233’ 圧縮関数
242 初期化ベクトル(IV)
244 初期化ベクトル(IV)
252 事前計算状態
254 事前計算状態
261〜263 状態
270 圧縮関数
281 第2圧縮関数
290 キー付きMAC値
312 内側キーブロック
314 外側キーブロック
320 圧縮関数
321〜323 メッセージブロック
331〜333 第1圧縮関数
342 初期化ベクトル(IV)
344 初期化ベクトル(IV)
352 事前計算状態
354 事前計算状態
361〜363 状態
370 圧縮関数
381 第2圧縮関数
390 キー付きMAC値
412 エンコードされたキー
420 圧縮関数
470 圧縮関数
1000 コンピュータ読取可能な媒体
1010 書込可能部分
1020 コンピュータプログラム
1110 集積回路(複数の集積回路)
1120 処理ユニット
1122 メモリ
1124 専用の集積回路
1126 通信要素
1130 相互接続部
1140 プロセッサシステム
Claims (6)
- エンコードされた表現を用いて、入力メッセージのためのキー付きメッセージ認証コードを計算するキー付きメッセージ認証コード装置であって、
前記入力メッセージを受信するための入力インターフェースと、
前記入力メッセージを複数のメッセージブロックに分割し、前記複数のメッセージブロックの内側ハッシュの計算を実行し、且つ、外側ハッシュの計算を実行するプロセッサ回路であって、前記内側ハッシュの計算が、
第1の状態を最初の第1の状態へ暗号キーに基づいて初期化すること、及び
一連の第1圧縮関数を適用することであって、前記第1圧縮関数は前記最初の第1の状態及び前記複数のメッセージブロックのメッセージブロックを入力として取り込むと共に、新たな第1の状態を生成し、前記新たな第1の状態は前記一連の第1圧縮関数のうちの後続の第1圧縮関数に対する第1の状態として用いられ、前記一連の第1圧縮関数のうちの少なくとも最初の第1圧縮関数が前記最初の第1の状態を、エンコードされた表現の入力として取り込み、前記内側ハッシュの計算において前記一連の第1圧縮関数のうちの前記最初の第1圧縮関数の後の最後の圧縮関数が前記内側ハッシュとしてエンコードされていない表現の第1の状態を生成すること
を有し、前記外側ハッシュの計算が、
第2の状態を最初の第2の状態へ前記暗号キーに基づいて初期化すること、及び
一連の第2圧縮関数を適用することであって、前記第2圧縮関数は前記最初の第2の状態及び前記内側ハッシュのブロックを入力として取り込むと共に、新たな第2の状態を生成し、前記新たな第2の状態は前記一連の第2圧縮関数のうちの後続の第2圧縮関数に対する第2の状態として用いられ、前記一連の第2圧縮関数のうちの少なくとも1つが前記最初の第2の状態を、エンコードされた表現の入力として取り込み、前記第2圧縮関数に統合された第2の状態を復元すること、
を有するプロセッサ回路と、
を有し、
前記第1の状態は前記内側ハッシュの計算において圧縮関数を予め定められた初期化ブロック及び第1キーブロックに適用することのエンコードされた表現に初期化され、
前記第2の状態は前記外側ハッシュの計算において圧縮関数を予め定められた初期化ブロック及び第2キーブロックに適用することのエンコードされた表現に初期化され、
前記1以上の第2圧縮関数が、入力として、前記第2の状態をエンコードされた表現で且つ前記内側ハッシュのブロックをエンコードされていない表現で取り込む、
キー付きメッセージ認証コード装置。 - 前記内側ハッシュの計算における前記一連の第1圧縮関数のうちの前記最初の第1圧縮関数の後の最後の圧縮関数が、エンコードされた状態を入力として取り込むと共に、状態をエンコードされていない表現で生成する、請求項1に記載のキー付きメッセージ認証コード装置。
- 前記プロセッサ回路が前記メッセージに、例えば第1メッセージブロックに、ノンスを含める、請求項1又は2に記載のキー付きメッセージ認証コード装置。
- 前記キー付きメッセージ認証コードがハッシュメッセージ認証コードである、請求項1から3の何れか一項に記載のキー付きメッセージ認証コード装置。
- 入力メッセージのためのキー付きメッセージ認証コードをエンコードされた表現を用いて計算するキー付きメッセージ認証コード装置の作動方法であって、
前記キー付きメッセージ認証コード装置のプロセッサが、前記入力メッセージを受信すると共に、該入力メッセージを複数のメッセージブロックに分割するステップと、
前記プロセッサが、前記複数のメッセージブロックの内側ハッシュの計算を実行するステップであって、前記内側ハッシュの計算が、
前記プロセッサが、最初の第1の状態を、暗号キーに基づいて、圧縮関数を予め定められた初期化ブロック及び第1キーブロックに適用することのエンコードされた表現に初期化するステップ、及び
前記プロセッサが、一連の第1圧縮関数を適用するステップであって、前記第1圧縮関数は前記最初の第1の状態及び前記複数のメッセージブロックのうちのメッセージブロックを入力として取り込むと共に、新たな第1の状態を生成し、前記新たな第1の状態は前記一連の第1圧縮関数のうちの後続の第1圧縮関数に対する第1の状態として用いられ、前記一連の第1圧縮関数のうちの少なくとも最初の第1圧縮関数が前記最初の第1の状態をエンコードされた表現の入力として取り込むステップ、
を有し、
前記プロセッサが、前記内側ハッシュの計算における前記一連の第1圧縮関数のうちの前記最初の第1圧縮関数の後の最後の圧縮関数が前記内側ハッシュとして前記新たな第1の状態をエンコードされていない表現で生成する、
内側ハッシュの計算を実行するステップと、
前記プロセッサが、外側ハッシュの計算を実行するステップであって、該外側ハッシュの計算が、
前記プロセッサが、最初の第2の状態を、前記暗号キーに基づいて、圧縮関数を予め定められた初期化ブロック及び第2キーブロックに適用することのエンコードされた表現に初期化するステップ、及び
前記プロセッサが、一連の第2圧縮関数を適用するステップであって、前記第2圧縮関数は前記最初の第2の状態及びエンコードされていない表現の前記内側ハッシュのブロックを入力として取り込むと共に、新たな第2の状態を生成し、前記新たな第2の状態は前記一連の第2圧縮関数のうちの後続の第2圧縮関数に対する第2の状態として用いられ、前記一連の第2圧縮関数のうちの少なくとも1つが前記第2の状態をエンコードされた表現の入力として取り込み、前記第2圧縮関数に統合された第2の状態を復元するステップ、を有する、
外側ハッシュの計算を実行するステップと、
を有する、キー付きメッセージ認証コード装置の作動方法。 - プロセッサシステムに請求項5に記載のキー付きメッセージ認証コード装置の作動方法を実行させるための命令を表す一次的又は非一時的データを有する、コンピュータ読取可能な媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17210820.1 | 2017-12-28 | ||
EP17210820.1A EP3506558A1 (en) | 2017-12-28 | 2017-12-28 | Whitebox computation of keyed message authentication codes |
PCT/EP2018/086858 WO2019129772A1 (en) | 2017-12-28 | 2018-12-24 | Whitebox computation of keyed message authentication codes |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021507310A JP2021507310A (ja) | 2021-02-22 |
JP6884284B2 true JP6884284B2 (ja) | 2021-06-09 |
Family
ID=60813716
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020535636A Active JP6884284B2 (ja) | 2017-12-28 | 2018-12-24 | キー付きメッセージ認証コードのホワイトボックス計算 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11502846B2 (ja) |
EP (2) | EP3506558A1 (ja) |
JP (1) | JP6884284B2 (ja) |
CN (1) | CN111656733A (ja) |
WO (1) | WO2019129772A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020159328A1 (ko) * | 2019-02-01 | 2020-08-06 | 주식회사 아이씨티케이 홀딩스 | 인증 정보 처리 방법 및 장치와 인증 정보 처리 방법 장치를 포함한 사용자 단말 |
US20220329439A1 (en) * | 2019-08-05 | 2022-10-13 | Securify Bilisim Teknolojileri Ve Guvenligi Egt. Dan. San. Ve Tic. Ltd. Sti. | Method for generating digital signatures |
WO2021201779A1 (en) * | 2020-03-31 | 2021-10-07 | Agency For Science, Technology And Research | Method and system for generating a hash-based message authentication code (hmac) based on white-box implementation |
WO2023081222A1 (en) * | 2021-11-03 | 2023-05-11 | Arris Enterprises Llc | White-box processing for encoding with large integer values |
CN114124480B (zh) * | 2021-11-08 | 2023-12-05 | 闪捷信息科技有限公司 | 通信的认证方法、服务器、客户端、电子设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8935528B2 (en) * | 2008-06-26 | 2015-01-13 | Microsoft Corporation | Techniques for ensuring authentication and integrity of communications |
WO2010102960A1 (en) * | 2009-03-10 | 2010-09-16 | Irdeto B.V. | White-box cryptographic system with input dependent encodings |
CA2831367C (en) * | 2011-03-31 | 2019-02-12 | Irdeto B.V. | Method and system for protecting execution of cryptographic hash functions |
US9639674B2 (en) * | 2014-12-18 | 2017-05-02 | Nxp B.V. | Using single white-box implementation with multiple external encodings |
US10313129B2 (en) * | 2015-06-26 | 2019-06-04 | Intel Corporation | Keyed-hash message authentication code processors, methods, systems, and instructions |
US10171234B2 (en) * | 2015-12-16 | 2019-01-01 | Nxp B.V. | Wide encoding of intermediate values within a white-box implementation |
-
2017
- 2017-12-28 EP EP17210820.1A patent/EP3506558A1/en not_active Withdrawn
-
2018
- 2018-12-24 US US16/958,161 patent/US11502846B2/en active Active
- 2018-12-24 EP EP18826086.3A patent/EP3732822B1/en active Active
- 2018-12-24 WO PCT/EP2018/086858 patent/WO2019129772A1/en unknown
- 2018-12-24 CN CN201880087993.7A patent/CN111656733A/zh active Pending
- 2018-12-24 JP JP2020535636A patent/JP6884284B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
WO2019129772A1 (en) | 2019-07-04 |
US11502846B2 (en) | 2022-11-15 |
EP3732822A1 (en) | 2020-11-04 |
CN111656733A (zh) | 2020-09-11 |
US20200366496A1 (en) | 2020-11-19 |
EP3506558A1 (en) | 2019-07-03 |
JP2021507310A (ja) | 2021-02-22 |
EP3732822B1 (en) | 2021-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6884284B2 (ja) | キー付きメッセージ認証コードのホワイトボックス計算 | |
JP5911654B2 (ja) | 乱数生成器及びストリーム暗号 | |
CN108352981B (zh) | 被布置用于计算目标块加密的密码设备 | |
RU2696334C1 (ru) | Устройство и способ вычисления блочного шифра | |
JP6517436B2 (ja) | 暗号化デバイス及び符号化デバイス | |
JP7123959B2 (ja) | 楕円曲線点乗算デバイス及び方法 | |
US11310030B2 (en) | Cryptographic device and method | |
WO2019043921A1 (ja) | 暗号化装置、復号装置、暗号化方法、復号方法、暗号化プログラム及び復号プログラム | |
RU2710670C2 (ru) | Криптографическая система и способ | |
JP6890589B2 (ja) | 計算デバイス及び方法 | |
CN107040370B (zh) | 一种用于产生实施模幂运算的代码的装置 | |
JP6631989B2 (ja) | 暗号化装置、制御方法、及びプログラム | |
US20200328876A1 (en) | Method for protecting a source of entropy used in countermeasures securing a white-box cryptographic algorithm | |
CN116094715A (zh) | 加密数据的方法及相关产品 | |
JP2021047371A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2017129779A (ja) | 暗号生成装置、データ伝送システム、暗号生成方法及びデータ伝送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200625 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200625 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20200625 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20201208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210125 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210318 |
|
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: 20210412 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210511 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6884284 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |