JP7383949B2 - 情報処理装置及びプログラム - Google Patents
情報処理装置及びプログラム Download PDFInfo
- Publication number
- JP7383949B2 JP7383949B2 JP2019171450A JP2019171450A JP7383949B2 JP 7383949 B2 JP7383949 B2 JP 7383949B2 JP 2019171450 A JP2019171450 A JP 2019171450A JP 2019171450 A JP2019171450 A JP 2019171450A JP 7383949 B2 JP7383949 B2 JP 7383949B2
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- encryption
- decryption
- transformation
- public
- 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
- 230000010365 information processing Effects 0.000 title claims description 8
- 239000011159 matrix material Substances 0.000 claims description 95
- 238000012545 processing Methods 0.000 claims description 75
- 230000009466 transformation Effects 0.000 claims description 68
- 238000000034 method Methods 0.000 claims description 61
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000007792 addition Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0435—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/045—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- 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)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Description
まず、本実施形態に係る暗号システム10の機能構成について、図1を参照しながら説明する。図1は、本実施形態に係る暗号システム10の機能構成の一例を示す図である。
ここで、暗号システム10の利用形態の一例として、2台の暗号システム10間で公開鍵暗号方式により暗号化通信を行う場合の利用形態と、2台の暗号システム10間で公開鍵暗号方式を応用した電子署名付きデータの通信を行う場合の利用形態とについてそれぞれ説明する。以降では、これら2台の暗号システム10の一方を「暗号システム10-1」、他方を「暗号システム10-2」と表す。また、公開暗号化鍵2000及び公開復号鍵3000は暗号システム10-1により作成されたものであるとする(つまり、公開暗号化鍵2000及び公開復号鍵3000は、暗号システム10-1の秘密鍵1000を用いて作成されたものであるとする。)。
次に、本実施形態に係る暗号システム10のハードウェア構成について、図3を参照しながら説明する。図3は、本実施形態に係る暗号システム10のハードウェア構成の一例を示す図である。
次に、本実施形態に係る暗号システム10が公開暗号化鍵2000及び公開復号鍵3000の少なくとも一方を作成する場合の公開鍵作成処理について、図4を参照しながら説明する。図4は、本実施形態に係る公開鍵作成処理の一例を示すフローチャートである。なお、以降では、一例として、公開暗号化鍵2000及び公開復号鍵3000の両方を作成する場合について説明する。
ここで、本実施形態では共通鍵暗号方式としてAESを採用しているが、共通鍵暗号方式により実現される公開鍵暗号方式のセキュリティをより高めるためにAESを拡張する方法について説明する。本実施形態では、この拡張されたAESを「拡張AES」と表す。共通鍵暗号方式として、AESの代わりに拡張AESを用いることで、この共通鍵暗号方式により実現される公開鍵暗号方式のセキュリティをより高めることが可能となる。
ここで、拡張MixColumns処理に用いられる変換行列と、拡張InvMixColumns処理に用いられる逆変換行列の具体例について説明する。なお、以降では、変換行列及び逆変換行列の各要素を16進数で表現するものとする。
拡張MixColumns処理に用いられる変換行列と拡張InvMixColumns処理に用いられる逆変換行列との実施例1を図6に示す。図6は、拡張MixColumns処理及び拡張InvMixColumns処理に用いられる行列の一例を示す図(実施例1)である。
拡張MixColumns処理に用いられる変換行列と拡張InvMixColumns処理に用いられる逆変換行列との実施例2を図7に示す。図7は、拡張MixColumns処理及び拡張InvMixColumns処理に用いられる行列の一例を示す図(実施例2)である。
ここで、拡張MixColumns処理及び拡張InvMixColumns処理での行列演算について説明する。拡張MixColumns処理への入力をx、拡張MixColumns処理からの出力をyとして、それぞれ以下で表すものとする。
y=(y0,y1,・・・,y15),yi∈{0,・・・,255}
なお、このとき、拡張InvMixColumns処理からの出力はx、拡張InvMixColumns処理への入力はyで表される。
y0=3・x0+3・x1+2・x2+2・x3+3・x4+2・x5+3・x6+1・x7+1・x8+2・x9+1・x10+2・x11+3・x12+1・x13+2・x14+1・x15
y1=1・x0+3・x1+3・x2+2・x3+2・x4+3・x5+2・x6+3・x7+1・x8+1・x9+2・x10+1・x11+2・x12+3・x13+1・x14+2・x15
・・・
と計算される。
x0=F9・y0+BF・y1+11・y2+DA・y3+BF・y4+DA・y5+DA・y6+32・y7+32・y8+32・y9+9C・y10+9C・y11+F9・y12+57・y13+DA・y14+F9・y15
x1=F9・y0+F9・y1+BF・y2+11・y3+DA・y4+BF・y5+DA・y6+DA・y7+32・y8+32・y9+32・y10+9C・y11+9C・y12+F9・y13+57・y14+DA・y15
・・・
と計算される。このように、実施例1では、拡張InvMixColumns処理において、高位の値(例えば、「F9」等)との演算が、1バイトの出力を得るために16回(すなわち、16バイトの出力を得るためには256回)行われる。このため、実施例2と比較して、演算ステップのステップ数が多くなる。
y0=2・x0+2・x1+2・x2+2・x3+2・x4+2・x5+2・x6+3・x7+2・x8+2・x9+2・x10+2・x11+3・x12+2・x13+2・x14+3・x15=2・(x0+x1+・・・+x15)+x7+x12+x15
y1=3・x0+2・x1+2・x2+2・x3+2・x4+2・x5+2・x6+2・x7+3・x8+2・x9+2・x10+2・x11+2・x12+3・x13+2・x14+2・x15=2・(x0+x1+・・・+x15)+x0+x8+x13
・・・
と計算される。このように、各y0~y15の計算には2・(x0+x1+・・・+x15)が含まれるため、2・(x0+x1+・・・+x15)の演算結果を再利用することができる。
x0=2・y0+2・y1+2・y2+2・y3+3・y4+2・y5+2・y6+3・y7+2・y8+2・y9+2・y10+2・y11+2・y12+2・y13+2・y14+3・y15=2・(y0+y1+・・・+y15)+y4+y7+y15
x1=3・y0+2・y1+2・y2+2・y3+2・y4+3・y5+2・y6+2・y7+3・y8+2・y9+2・y10+2・y11+2・y12+2・y13+2・y14+2・y15=2・(y0+y1+・・・+y15)+y0+y5+y8
・・・
と計算される。このように、各x0~x15の計算には2・(y0+y1+・・・+y15)が含まれるため、2・(y0+y1+・・・+y15)の演算結果を再利用することができる。
AESと実施例1と実施例2とで行列変換及び逆行列変換における演算量(積算の演算回数と加算の演算回数)を以下の表1に示す。
以上のように、本実施形態に係る暗号システム10は、WBCを用いて共通鍵暗号方式の処理(共通鍵を用いた暗号化処理、共通鍵を用いた復号処理)をルックアップテーブル化することで、この共通鍵暗号方式により公開鍵暗号方式を実現することができる。このとき、この公開鍵暗号方式は、当該共通鍵暗号方式と同様以下の演算量で実現することができるため、従来の公開鍵暗号方式と比較して大幅な演算量の削減が可能になる。更に、共通鍵暗号方式として拡張AESを採用し、上記の実施例2で示した変換行列及び逆変換行列を用いた拡張MixColumns処理及び拡張InvMixColumns処理で各ラウンドを構成することで、より高いセキュリティを実現しつつ、更なる演算量の削減を実現することができる。
101 公開鍵作成部
102 暗号化部
103 復号部
104 記憶部
201 プロセッサ
202 メモリ装置
203 I/F
1000 秘密鍵
2000 公開暗号化鍵
3000 公開復号鍵
Claims (5)
- 共通鍵暗号方式に用いられる共通鍵と、前記共通鍵を用いた暗号化処理又は復号処理をWhite-Box Cryptographyによりルックアップテーブル化して、前記暗号化処理に対応する暗号化用ルックアップテーブル又は前記復号処理に対応する復号用ルックアップテーブルを作成する作成手段と、
前記作成手段により作成された暗号化用ルックアップテーブル又は復号用ルックアップテーブルを、公開鍵として公開とする公開手段と、
を有し、
前記共通鍵暗号方式は、AESの暗号化処理に含まれるMixColumns処理の行列変換を16×16の変換行列を用いた行列変換に置換すると共に、AESの復号処理に含まれるInvMixColumns処理の逆行列変換を前記変換行列の逆行列を用いた行列変換に置換した暗号方式である、ことを特徴とする情報処理装置。 - 前記変換行列は、0を除く低位の値を各要素とする行列であり、かつ、i+1(ただし、i=1,・・・,15)番目の行又は列はi番目の行又は列を所定の方向に1つローテーションした行列である、ことを特徴とする請求項1に記載の情報処理装置。
- 前記変換行列は、1行又は1列あたり、M(Mは2以上、254以下の偶数)を値とする13個の要素と、M+1を値とする3個の要素とで構成された行列である、ことを特徴とする請求項2に記載の情報処理装置。
- 前記変換行列は、1行又は1列あたり、2を値とする13個の要素と、3を値とする3個の要素とで構成された行列である、ことを特徴とする請求項3に記載の情報処理装置。
- 共通鍵暗号方式に用いられる共通鍵と、前記共通鍵を用いた暗号化処理又は復号処理をWhite-Box Cryptographyによりルックアップテーブル化して、前記暗号化処理に対応する暗号化用ルックアップテーブル又は前記復号処理に対応する復号用ルックアップテーブルを作成する作成手順と、
前記作成手順で作成された暗号化用ルックアップテーブル又は復号用ルックアップテーブルを、公開鍵として公開とする公開手順と、
をコンピュータに実行させ、
前記共通鍵暗号方式は、AESの暗号化処理に含まれるMixColumns処理の行列変換を16×16の変換行列を用いた行列変換に置換すると共に、AESの復号処理に含まれるInvMixColumns処理の逆行列変換を前記変換行列の逆行列を用いた行列変換に置換した暗号方式である、ことを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019171450A JP7383949B2 (ja) | 2019-09-20 | 2019-09-20 | 情報処理装置及びプログラム |
US16/941,945 US11477024B2 (en) | 2019-09-20 | 2020-07-29 | Information processing apparatus and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019171450A JP7383949B2 (ja) | 2019-09-20 | 2019-09-20 | 情報処理装置及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021047371A JP2021047371A (ja) | 2021-03-25 |
JP7383949B2 true JP7383949B2 (ja) | 2023-11-21 |
Family
ID=74876302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019171450A Active JP7383949B2 (ja) | 2019-09-20 | 2019-09-20 | 情報処理装置及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US11477024B2 (ja) |
JP (1) | JP7383949B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010515945A (ja) | 2007-01-11 | 2010-05-13 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 実装のコピーの追跡 |
JP2010528517A (ja) | 2007-05-22 | 2010-08-19 | イルデト・ビー・ヴイ | 暗号用鍵データの更新 |
JP2012520589A (ja) | 2009-03-10 | 2012-09-06 | イルデト・コーポレート・ビー・ヴイ | 入力に依存する符号化を用いたホワイトボックス暗号システム |
WO2017203992A1 (ja) | 2016-05-23 | 2017-11-30 | ソニー株式会社 | 暗号化装置、暗号化方法、復号化装置、及び復号化方法 |
JP2017216619A (ja) | 2016-06-01 | 2017-12-07 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3928845A (en) * | 1974-12-11 | 1975-12-23 | Rca Corp | Character generator system selectively providing different dot-matrix size symbols |
US8838997B2 (en) * | 2012-09-28 | 2014-09-16 | Intel Corporation | Instruction set for message scheduling of SHA256 algorithm |
US9251377B2 (en) * | 2012-12-28 | 2016-02-02 | Intel Corporation | Instructions processors, methods, and systems to process secure hash algorithms |
JP5852594B2 (ja) | 2013-01-15 | 2016-02-03 | 日本電信電話株式会社 | 多倍長整数演算装置、多倍長整数演算方法、プログラム |
SI3095044T1 (sl) * | 2013-11-19 | 2021-02-26 | Top Galore Limited | Postopki in naprave za rudarjenje blokov |
US9317719B2 (en) * | 2014-09-04 | 2016-04-19 | Intel Corporation | SM3 hash algorithm acceleration processors, methods, systems, and instructions |
US10409827B2 (en) * | 2014-10-31 | 2019-09-10 | 21, Inc. | Digital currency mining circuitry having shared processing logic |
JP6292195B2 (ja) | 2015-08-24 | 2018-03-14 | 富士電機株式会社 | 情報処理装置及び情報処理方法 |
JP6187624B1 (ja) * | 2016-03-17 | 2017-08-30 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
EP3651142A4 (en) * | 2017-08-10 | 2021-03-24 | Sony Corporation | ENCRYPTION DEVICE, ENCRYPTION METHOD, DECCRYPTION DEVICE, AND DECryption METHOD |
US10140612B1 (en) * | 2017-12-15 | 2018-11-27 | Clover Network, Inc. | POS system with white box encryption key sharing |
US11606189B2 (en) * | 2018-08-03 | 2023-03-14 | Arris Enterprises Llc | Method and apparatus for improving the speed of advanced encryption standard (AES) decryption algorithm |
-
2019
- 2019-09-20 JP JP2019171450A patent/JP7383949B2/ja active Active
-
2020
- 2020-07-29 US US16/941,945 patent/US11477024B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010515945A (ja) | 2007-01-11 | 2010-05-13 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 実装のコピーの追跡 |
JP2010528517A (ja) | 2007-05-22 | 2010-08-19 | イルデト・ビー・ヴイ | 暗号用鍵データの更新 |
JP2012520589A (ja) | 2009-03-10 | 2012-09-06 | イルデト・コーポレート・ビー・ヴイ | 入力に依存する符号化を用いたホワイトボックス暗号システム |
WO2017203992A1 (ja) | 2016-05-23 | 2017-11-30 | ソニー株式会社 | 暗号化装置、暗号化方法、復号化装置、及び復号化方法 |
JP2017216619A (ja) | 2016-06-01 | 2017-12-07 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
Non-Patent Citations (1)
Title |
---|
辻井 重男 ほか,暗号と情報セキュリティ,初版4刷,日本,株式会社昭晃堂,1996年02月20日,p.229-234 |
Also Published As
Publication number | Publication date |
---|---|
US11477024B2 (en) | 2022-10-18 |
US20210091947A1 (en) | 2021-03-25 |
JP2021047371A (ja) | 2021-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kumar et al. | Development of modified AES algorithm for data security | |
CN106850221B (zh) | 信息加密、解密方法及装置 | |
CN104468089B (zh) | 数据保护装置及其方法 | |
Aboytes-González et al. | Design of a strong S-box based on a matrix approach | |
CN105099672B (zh) | 混合加密方法及实现该方法的装置 | |
JP6517438B2 (ja) | ターゲットブロック暗号を計算する暗号デバイス | |
Anees et al. | Designing secure substitution boxes based on permutation of symmetric group | |
Gutub et al. | Hybrid crypto hardware utilizing symmetric-key and public-key cryptosystems | |
JP2008252299A (ja) | 暗号処理システム及び暗号処理方法 | |
US11385893B2 (en) | Method secured against side-channel attacks performing an arithmetic operation of a cryptographic algorithm mixing Boolean and arithmetic operations | |
CN108141352B (zh) | 密码设备、方法、装置和计算机可读介质和编码设备、方法、装置和计算机可读介质 | |
US8976960B2 (en) | Methods and apparatus for correlation protected processing of cryptographic operations | |
KR100800468B1 (ko) | 저전력 고속 동작을 위한 하드웨어 암호화/복호화 장치 및그 방법 | |
Gondal et al. | A scheme for obtaining secure S-boxes based on chaotic Baker’s map | |
JP2021500760A (ja) | 外部監視攻撃からモジュラーインバージョン演算を保護すること | |
Priya et al. | FPGA implementation of efficient AES encryption | |
Kapoor et al. | Analysis of symmetric and asymmetric key algorithms | |
JP6890589B2 (ja) | 計算デバイス及び方法 | |
JP7383949B2 (ja) | 情報処理装置及びプログラム | |
EP3054620A1 (en) | System and method for performing block cipher cryptography by implementing a mixer function that includes a substitution-box and a linear transformation using a lookup-table | |
JP7383985B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US10341089B2 (en) | High-speed AES with transformed keys | |
JP4857230B2 (ja) | 疑似乱数生成装置及びそれを用いた暗号化処理装置 | |
Chaves et al. | SCA-Resistance for AES: How Cheap Can We Go? | |
Homma et al. | Formal design of multiple-valued arithmetic algorithms over galois fields and its application to cryptographic processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220810 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230613 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230705 |
|
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: 20231010 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231023 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7383949 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |