JP2021071570A - 情報処理装置、情報処理方法及びプログラム - Google Patents

情報処理装置、情報処理方法及びプログラム Download PDF

Info

Publication number
JP2021071570A
JP2021071570A JP2019197634A JP2019197634A JP2021071570A JP 2021071570 A JP2021071570 A JP 2021071570A JP 2019197634 A JP2019197634 A JP 2019197634A JP 2019197634 A JP2019197634 A JP 2019197634A JP 2021071570 A JP2021071570 A JP 2021071570A
Authority
JP
Japan
Prior art keywords
round
data
processing
exclusive
conversion
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.)
Granted
Application number
JP2019197634A
Other languages
English (en)
Other versions
JP7383985B2 (ja
Inventor
健二 高務
Kenji Takatsukasa
健二 高務
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2019197634A priority Critical patent/JP7383985B2/ja
Priority to US17/000,699 priority patent/US11477009B2/en
Publication of JP2021071570A publication Critical patent/JP2021071570A/ja
Application granted granted Critical
Publication of JP7383985B2 publication Critical patent/JP7383985B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/046Masking or blinding of operations, operands or results of the operations
    • 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
    • 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/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】ホワイトボックス実装の暗号鍵解読に対するセキュリティを向上させること。【解決手段】一態様における情報処理装置は、ビットの並べ替えと乱数の排他的論理和演算とガロア体上の積算とが含まれる難読化変換を含む演算処理をデータに対して行った演算結果が格納されたルックアップテーブルを参照して、入力されたデータに対する演算結果を取得する取得手段、を有することを特徴とする。【選択図】図2

Description

本発明は、情報処理装置、情報処理方法及びプログラムに関する。
つながる時代の新技術に代表されるIoT(Internet of Things)では、種々様々なデバイスが通信ネットワークに接続される。これらのデバイスの多くは低コストで実現される機器でありながら、マイクロプロセッサ等を搭載してアプリケーションを実装していると共に、セキュリティ対策として各種暗号機能も実装している。
AES(Advanced Encryption Standard)等の共通鍵暗号方式では、共通鍵(以下、「暗号鍵」又は単に「鍵」とも表す。)の漏洩や解読を防止することがセキュリティ要件の1つである。暗号鍵の漏洩や解読を防止するための手法の1つとして、ホワイトボックス実装(White-Box Cryptography)が知られている(例えば、特許文献1)。
なお、関連技術として、ホワイトボックス実装に用いられるルックアップテーブルのデータサイズを小さくしたり、ホワイトボックス実装により暗号鍵を難読化したりする技術が知られている(例えば、特許文献2〜4)。
特開2014−180061号公報 特開2017−44757号公報 特開2017−167390号公報 特開2017−216619号公報
しかしながら、汎用コンピュータ等の演算性能は日々向上しており、従来のホワイトボックス実装における暗号鍵の解読リスクも日々高まっている。
開示の技術は、上記の点に鑑みてなされたもので、ホワイトボックス実装の暗号鍵解読に対するセキュリティを向上させることを目的とする。
一態様における情報処理装置は、ビットの並べ替えと乱数の排他的論理和演算とガロア体上の積算とが含まれる難読化変換を含む演算処理をデータに対して行った演算結果が格納されたルックアップテーブルを参照して、入力されたデータに対する演算結果を取得する取得手段、を有することを特徴とする。
ホワイトボックス実装の暗号鍵解読に対するセキュリティを向上させることができる。
暗号化の1ラウンド目における1サブラウンド目の処理の一例を示す図である。 暗号化の2ラウンド目以降のラウンドにおける1サブラウンド目の処理の一例を示す図である。 本実施形態に係る暗号システムの機能構成の一例を示す図である。 本実施形態に係る暗号システムのハードウェア構成の一例を示す図である。 本実施形態に係る暗号化の1サブラウンドあたりの処理の流れを示す図である。 r+1ラウンド目の難読化変換の変形例を示す図である。 r+1ラウンド目の難読化変換の逆変換の変形例を示す図である。
以下、本発明の実施形態について説明する。本実施形態では、ホワイトボックス実装(White-Box Cryptography)による暗号化において、ルックアップテーブル化される演算処理に難読化成分を追加することで、暗号鍵解読に対するセキュリティを向上させることができる暗号システム10について説明する。ここで、本実施形態に係る暗号システム10は、一般的なマイクロプロセッサ等が搭載された組み込みシステム(Embedded System)であるものとする。組み込みシステムは、例えば、産業用機器や家電製品等に内蔵され、特定の機能を実現するシステムである。具体的には、例えば、HEMS(Home Energy Management System)に利用されるスマートメーター等に対して、本実施形態に係る暗号システム10を組み込むことが可能である。
ただし、本実施形態に係る暗号システム10は、組み込みシステムに限られず、例えば、PC(Personal Computer)やスマートフォン、タブレット端末等の各種端末又は装置であってもよい。
<理論的構成>
まず、本実施形態に係る暗号化の理論的構成について説明する。本実施形態では、一例として、暗号方式としてAES(Advanced Encryption Standard)を採用する。ただし、本実施形態は、AES以外であっても、ホワイトボックス実装される任意の共通鍵暗号方式に適用可能である。
AESをホワイトボックス実装したWhite-Box AESでは、各ラウンドで、鍵(暗号鍵)を用いた演算処理と、この演算処理の前後に追加した逆変換処理及び変換処理(ただし、1ラウンド目の場合は演算処理の後に変換処理のみが追加される。)との処理結果をルックアップテーブルで実現している。この変換処理を追加することにより鍵が難読化され、ルックアップテーブルから鍵が解読されることを防止している。
また、White-Box AESでは、各ラウンドでのルックアップテーブルの参照処理と、このラウンドの次のラウンドでのルックアップテーブルの参照処理との間に排他的論理和の演算処理がある。このため、上記の変換処理及び逆変換処理は、排他的論理和の演算前後でも変換・逆変換の関係が成り立つ必要がある。なお、排他的論理和の演算前後でも変換・逆変換の関係が成り立つ変換処理及び逆変換処理として、例えば、上記の特許文献2〜4には、乱数を用いたビットの並び替えや乱数の排他的論理和が記載されている。
本実施形態では、変換処理及び逆変換処理として、乱数を用いたビットの並び替え及び乱数の排他的論理和に加えて、ガロア体(Galois field)上の積算(乗算)を追加する。これにより、本実施形態では、鍵をより高い強度で難読化することができるため、ホワイトボックス実装のセキュリティを向上させることが可能となる。
なお、AESでは、16バイトのデータに対する処理を1つのラウンドとして、鍵のビット長に応じた回数のラウンドを繰り返し実行することで、データを暗号化する。また、1つのラウンドでは、4バイトに対する処理を1つのサブラウンドとして、4回のサブラウンドを実行する。以降では、ラウンドを表すインデックスをr(ただし、r≧0)、サブラウンドを表すインデックスをs(ただし、s≧0)とする。
(1ラウンド目)
まず、本実施形態に係るWhite-Box AESによる暗号化の1ラウンド目(つまり、r=0である場合)の処理について説明する。暗号化の1ラウンド目では、16バイトの平文を入力として、16バイトの1ラウンド目の中間値を出力する。なお、16バイトのデータ(平文や中間値等)のdバイト目の1バイトデータを「d−1」で表す。
以降では、一例として、暗号化の1ラウンド目の1サブラウンド目(つまり、s=0である場合)の処理について、図1を参照しながら説明する。図1は、暗号化の1ラウンド目における1サブラウンド目の処理の一例を示す図である。
図1に示すように、1ラウンド目の1サブラウンド目では、例えば、16バイトの平文のうち、「0」、「5」、「10」及び「15」のデータが選択され、これらの選択されたデータ(つまり、4バイトのデータ)に対して処理が行われる。この4バイトのデータを選択する処理は、ShiftRows処理と呼ばれる。なお、ShiftRows処理では、2サブラウンド目で1サブラウンド目とは異なる4バイトのデータが選択され、3サブラウンド目で1〜2サブラウンド目とは異なる4バイトのデータが選択され、4サブラウンド目で1〜3サブラウンド目とは異なる4バイトのデータが選択される。具体的には、例えば、2サブラウンド目では「4」、「9」、「14」及び「3」のデータが選択され、3サブラウンドでは「8」、「13」、「2」及び「7」のデータが選択され、4サブラウンドでは「12」、「1」、「6」及び「11」のデータが選択される。以降では、ShiftRows処理で選択された4バイトのデータのうちの1バイトのデータを「選択データ」とも表す。
このとき、本実施形態に係るWhite-Box AESの1ラウンド目では、選択データ(図1に示す例では、「0」、「5」、「10」及び「15」のデータ)のそれぞれに対するAddRoundKey処理と、SubBytes処理と、排他的論理和演算を除くMixColumns処理と、1ラウンド目の難読化変換とをルックアップテーブル(LUT:Lookup Table)により実現する。なお、MixColumns処理は、SubBytes処理の出力結果に対してガロア体上の積算(図1中では、ガロア体上の積算は「×」で表されている。)を4回行って4バイトのデータを出力する処理と、難読化変換の処理結果に対して排他的論理和演算を行って4バイトのデータを出力する処理とで構成される。
ここで、図1における各記号は以下を意味する。
T:j=0,1,2,3に対して添字をs,j,rとして、r+1ラウンド目のs+1サブラウンド目におけるj番目の選択データに対するルックアップテーブル
k:添字をt(ただし、t=16r+4s+5j)として、平文のd(ただし、dは、tを16で割った余り)バイト目の選択データに対する鍵成分
SBox(・):SubBytes処理を実行する関数。なお、図中では、「SBox()」と表記している。
Sort(・,h):8ビットのデータとパラメータhとを入力として、このデータの各ビット値を並べ替えて8ビットのデータを出力する関数。なお、図中では、「Sort(h)」と表記している。
h:8ビットのデータを8ビットのデータに並べ替える際の組み合わせを表すパラメータ。また、添字は、MixColumns処理に含まれる積算のインデックスm=0,1,2,3に対して添字をs,m,rとして、r+1ラウンド目のs+1サブラウンド目におけるMixColumns処理のm番目の積算に対応するパラメータであることを表す。なお、8ビットのデータを並べ替える際の組み合わせ数は8!であるため、hは16(≒Log(8!))ビットデータで表される。したがって、Sort(・,h)のセキュリティ強度は16ビット強度である。
i:Sort(・,h)の処理結果に対して排他的論理和で演算される乱数。また、添字は、s,m,j,rとして、r+1ラウンド目のs+1サブラウンド目におけるj番目の選択データに対するMixColumns処理のm番目の積算に対応する乱数であることを表す。なお、iは8ビットデータである。したがって、iのセキュリティ強度は8ビット強度である。
u:iを排他的論理和で演算した結果に対して積算される値(ただし、u≠0、かつ、逆元u−1が存在する値)。なお、uは8ビットデータである。ここで、ガロア体上の積算は既約多項式上での乗算に相当し、既約多項式上での乗算では、その演算過程で常数(つまり、既約多項式の定数部分)を用いるため、常数に応じた結果が得られる。他方で、逆元u−1が存在するためには既約多項式の常数は特定の値である必要があり、利用可能な常数の種類は30種類(≒2)である。このため、uのセキュリティ強度は8+5=13ビット強度である。
以上により、難読化した鍵(つまり、MixColumns処理の排他的論理和演算の対象となるデータ)のセキュリティ強度は、16+8+13=37ビット強度となる。上述したように、本実施形態に係るWhite-Box AESの1ラウンド目では、選択データに対するAddRoundKey処理と、SubBytes処理と、排他的論理和演算を除くMixColumns処理と、難読化変換とをルックアップテーブルにより実現する。
したがって、8ビットの任意のデータをaとした場合、ルックアップテーブルTs,j,0には、以下の式(1)によって演算された演算結果(つまり、データaに対して、AddRoundKey処理と、SubBytes処理と、排他的論理和演算を除くMixColumns処理と、1ラウンド目の難読化変換とを行った演算結果)が格納されている。
Figure 2021071570
ここで、
(c0,0,c1,0,c2,0,c3,0)=(2,1,1,3),
(c0,1,c1,1,c2,1,c3,1)=(3,2,1,1),
(c0,2,c1,2,c2,2,c3,2)=(1,3,2,1),
(c0,3,c1,3,c2,3,c3,3)=(1,1,3,2)
である。以降では、ルックアップテーブルTに格納されている演算結果を「演算値」とも表す。なお、この演算値は8ビットデータである。
(r+1ラウンド目)
次に、本実施形態に係るWhite-Box AESによる暗号化の2ラウンド目以降のラウンド(つまり、r≧1である場合)の処理について説明する。暗号化の2ラウンド目以降のラウンドでは、1つ前のラウンドで出力された中間値を入力として、16バイトの中間値を出力する。
以降では、一例として、暗号化のr+1ラウンド目の1サブラウンド目(つまり、s=0である場合)の処理について、図2を参照しながら説明する。図2は、暗号化の2ラウンド目以降のラウンドにおける1サブラウンド目の処理の一例を示す図である。
図2に示すように、r+1ラウンド目の1サブラウンド目では、例えば、rラウンド目の中間値のうち、「0」、「5」、「10」及び「15」のデータのそれぞれがShiftRows処理により選択データとして選択され、これらの選択データに対して処理が行われる。
このとき、本実施形態に係るWhite-Box AESでは、選択データ(図2に示す例では、「0」、「5」、「10」及び「15」のデータ)のそれぞれに対する逆変換と、AddRoundKey処理と、SubBytes処理と、排他的論理和演算を除くMixColumns処理と、r+1ラウンド目の難読化変換とをルックアップテーブルにより実現する。なお、逆変換は、rラウンド目の難読化変換の逆変換である。
ここで、図2における各記号は以下を意味する。なお、T、k、SBox(・)、Sort(・,h)、h、i及びuは、図1と同様である。ただし、rラウンド目の難読化変換の逆変換におけるiは、rラウンド目の難読化変換におけるiから決定される。具体的には、rラウンド目の難読化変換の逆変換におけるis,j,4,r−1は、rラウンド目の難読化変換におけるis,j,0,r−1とis,j,1,r−1とis,j,2,r−1とis,j,3,r−1との排他的論理和である。
−1:同一添字のuの逆元。
Rvrs(・,h):同一添字のhをパラメータとしたSort(・,h)の逆変換。なお、図中では、「Rvrs(h)」と表記している。
以上により、1ラウンド目と同様に、難読化した鍵(つまり、MixColumns処理の排他的論理和演算の対象となるデータ)のセキュリティ強度は、rラウンド目の難読化変換に対する逆変換のセキュリティ強度(37ビット強度)と、r+1ラウンド目の難読化変換のセキュリティ強度(37ビット強度)とを合計して74ビット強度となる。上述したように、本実施形態に係るWhite-Box AESのr+1ラウンド目(ただし、r≧1)では、rラウンド目の難読化変換の逆変換と、AddRoundKey処理と、SubBytes処理と、排他的論理和演算を除くMixColumns処理と、r+1ラウンド目の難読化変換とをルックアップテーブルにより実現する。
したがって、8ビットの任意のデータをaとした場合、ルックアップテーブルTs,j,rには、以下の式(2)で計算されるa´を用いて以下の式(3)によって演算された演算結果(つまり、データaに対して、rラウンド目の難読化変換の逆変換と、AddRoundKey処理と、SubBytes処理と、排他的論理和演算を除くMixColumns処理と、r+1ラウンド目の難読化変換とを行った演算結果)が演算値として格納されている。
Figure 2021071570
Figure 2021071570
また、上述したように、is,j,4,r−1は、以下の式(4)によって決定される。
Figure 2021071570
なお、
(c0,0,c1,0,c2,0,c3,0)=(2,1,1,3),
(c0,1,c1,1,c2,1,c3,1)=(3,2,1,1),
(c0,2,c1,2,c2,2,c3,2)=(1,3,2,1),
(c0,3,c1,3,c2,3,c3,3)=(1,1,3,2)
である。
なお、上記の図2はr+1ラウンド目が最終ラウンドでない場合(つまり、r+1ラウンド目が中間ラウンドである場合)の処理を示している。最終ラウンドでは、図2のMixColumns処理と難読化変換とは実行されない。すなわち、最終ラウンドでは、最終ラウンドの1つ前のラウンドでの難読化変換の逆変換と、AddRoundKey処理と、SubBytes処理とが実行される。そして、最終ラウンドで出力される中間値が暗号文となる。したがって、本実施形態に係るWhite-Box AESの最終ラウンドでは、最終ラウンドの1つ前のラウンドでの難読化変換の逆変換とAddRoundKey処理とSubBytes処理とがルックアップテーブルにより実現される。なお、最終ラウンドでは、最初のラウンド(r=0のラウンド)と同様に、セキュリティ強度は37ビット強度である。
<機能構成>
次に、本実施形態に係る暗号システム10の機能構成について、図3を参照しながら説明する。図3は、本実施形態に係る暗号システム10の機能構成の一例を示す図である。
図3に示すように、本実施形態に係る暗号システム10は、選択部101と、テーブル参照部102と、排他的論理和演算部103と、記憶部104とを有する。
記憶部104には、ルックアップテーブルTs,j,rが記憶されている。なお、記憶部104には、暗号化に用いる種々のデータ(例えば、平文、中間値、暗号文等)が記憶されてもよい。
選択部101は、r=0の場合は、サブラウンド毎に平文から選択データを選択する。また、選択部101は、r≧1の場合は、サブラウンド毎にrラウンド目の中間値から選択データを選択する。
テーブル参照部102は、記憶部104に記憶されているルックアップテーブルTs,j,rを参照して、選択データに対応する演算値を取得する。ここで、上記の式(1)及び式(2)に示すように、1つの選択データ(つまり、1バイトのデータ)から4つの演算値が取得される。すなわち、MixColumns処理に含まれる積算のインデックスm=0,1,2,3の各々に対応する演算値が取得される。
排他的論理和演算部103は、r+1(ただし、r≧0)ラウンドにおけるサブラウンド毎に、互いに対応する演算値の排他的論理和を演算する。
具体的には、排他的論理和演算部103は、r+1ラウンドにおけるs+1サブラウンドにおいて、j=0番目の選択データのm=0に対応する演算値と、j=1番目の選択データのm=0に対応する演算値と、j=2番目の選択データのm=0に対応する演算値と、j=3番目の選択データのm=0に対応する演算値との排他的論理和を演算して、r+1ラウンド目の中間値の4s+1バイト目のデータとする。同様に、排他的論理和演算部103は、r+1ラウンドにおけるs+1サブラウンドにおいて、j=0番目の選択データのm=1に対応する演算値と、j=1番目の選択データのm=1に対応する演算値と、j=2番目の選択データのm=1に対応する演算値と、j=3番目の選択データのm=1に対応する演算値との排他的論理和を演算して、r+1ラウンド目の中間値の4s+2バイト目のデータとする。以降も同様に、排他的論理和演算部103は、r+1ラウンドにおけるs+1サブラウンドにおいて、j=0番目の選択データのm=2に対応する演算値と、j=1番目の選択データのm=2に対応する演算値と、j=2番目の選択データのm=2に対応する演算値と、j=3番目の選択データのm=2に対応する演算値との排他的論理和を演算して、r+1ラウンド目の中間値の4s+3バイト目のデータとする。同様に、排他的論理和演算部103は、r+1ラウンドにおけるs+1サブラウンドにおいて、j=0番目の選択データのm=3に対応する演算値と、j=1番目の選択データのm=3に対応する演算値と、j=2番目の選択データのm=3に対応する演算値と、j=3番目の選択データのm=3に対応する演算値との排他的論理和を演算して、r+1ラウンド目の中間値の4s+4バイト目のデータとする。これにより、r+1(ただし、r≧0)ラウンド目の中間値が得られる。
<ハードウェア構成>
次に、本実施形態に係る暗号システム10のハードウェア構成について、図4を参照しながら説明する。図4は、本実施形態に係る暗号システム10のハードウェア構成の一例を示す図である。
図4に示すように、本実施形態に係る暗号システム10は、プロセッサ201と、メモリ装置202と、I/F203とを有する。これら各ハードウェアは、それぞれがバス204を介して通信可能に接続されている。
プロセッサ201は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の各種演算装置である。本実施形態に係る暗号システム10が有する各機能部(選択部101、テーブル参照部102及び排他的論理和演算部103)は、メモリ装置202に格納された1以上のプログラムがプロセッサ201に実行させる処理により実現される。
メモリ装置202は、例えば、RAM(Random Access Memory)やROM(Read Only Memory)、フラッシュメモリ等の各種記憶装置である。本実施形態に係る暗号システム10が有する記憶部104は、例えば、メモリ装置202を用いて実現可能である。
I/F203は、暗号システム10にデータを入力したり、暗号システム10からデータを出力したりするためのインタフェースである。
本実施形態に係る暗号システム10は、図4に示すハードウェア構成を有することにより、各種処理を実現することができる。なお、図4に示すハードウェア構成は一例であって、本実施形態に係る暗号システム10は、複数のプロセッサ201を有していてもよいし、複数のメモリ装置202を有していてもよい。
<処理の流れ>
次に、本実施形態に係る暗号化の処理の流れについて説明する。上述したように、本実施形態に係るWhite-Box AESは、鍵のビット長に応じた回数のラウンドを繰り返し実行することで、データ(平文)を暗号化する。また、1つのラウンドは、4つのサブラウンドで構成されている。そこで、以降では、暗号化のr+1(ただし、r≧0)ラウンド目のs+1(ただし、s≧0)サブラウンド目の処理の流れについて、図5を参照しながら説明する。図5は、本実施形態に係る暗号化の1サブラウンドあたりの処理の流れを示す図である。
まず、選択部101は、r+1ラウンド目のs+1ラウンド目における選択データを選択する(ステップS101)。ここで、選択部101は、r=0である場合は16バイトの平文から4つの選択データを選択し、r≧1である場合は16バイトのrラウンド目の中間値から4つの選択データを選択する。なお、上述したように、選択データは1バイトのデータである。
次に、テーブル参照部102は、上記のステップS101で選択された選択データ毎に、記憶部104に記憶されているルックアップテーブルTs,j,rを参照して、当該選択データに対応する演算値を取得する(ステップS102)。
そして、排他的論理和演算部103は、上記のステップS102でルックアップテーブルTs,j,rから取得された演算値を用いて、排他的論理和を演算する(ステップS103)。これにより、r+1ラウンド目の中間値が得られる。
以上により、本実施形態に係る暗号システム10は、r+1(ただし、r≧0)ラウンド目のs+1(ただし、s≧0)サブラウンド目の処理を実行することができる。したがって、各ラウンドにおいて、サブラウンド毎に、上記のステップS101〜ステップS103が繰り返し実行されることで、平文が暗号文に暗号化される。しかも、本実施形態に係る暗号システム10では、上述したように、最初のラウンド及び最終ラウンドでは37ビットのセキュリティ強度、中間ラウンドでは74ビット強度で鍵を難読化することができる。
なお、本実施形態では、平文を暗号化する場合について説明したが、暗号文を復号する場合については、暗号化の逆変換となるように各ラウンドを構成することで実現することができる。具体的には、ShiftRows処理の代わりにInvShiftRows処理、SubBytes処理の代わりにInvSubBytes処理、MixColumns処理の代わりにInvMixColumns処理を用いる。また、復号の1ラウンド目のAddRoundKey処理の前に暗号化の最終ラウンドにおける難読化変換の逆変換を行うようにすると共に、復号の最終ラウンドではInvMixColumns処理の排他的論理和演算の前に難読化変換を行わないようにする。これにより、暗号文を復号することが可能になる。
<変形例>
最後に、本実施形態に係るWhite-Box AESの変形例について説明する。上記で説明したWhite-Box AESは37ビットのセキュリティ強度で鍵を難読化することができるが、変形例では、複数の難読化変換を合成してルックアップテーブル化することで、更に高いセキュリティ強度で鍵を難読化する場合について説明する。
ここで、ガロア体上の積算とビットの並べ替えとで構成される式は等価な式に変形することができない。このため、図1及び図2で説明した難読化変換をN(Nは2以上の任意の整数)回合成してルックアップテーブル化することで、37<L≦37×N、かつ、37<L≦256!として、Lビット強度のセキュリティ強度を実現することが可能である。
具体的には、図6に示すように、図1及び図2で説明した難読化変換をN回合成することで、r+1(ただし、r≧0)ラウンド目の難読化変換とする。また、r+1(ただし、r≧1)ラウンド目の逆変換については、r+1ラウンド目の難読化変換の逆変換となるように、図2で説明した難読化変換の逆変換をN回合成する。なお、n=1,・・・,Nとして、i等には各nでそれぞれ異なる乱数が用いられる(ただし、一部のiが互いに同一値であってもよい。)。
これにより、Lビット強度のセキュリティ強度を実現することが可能となる。特に、N≧4とすることで、NICT(National Institute of Information and Communications Technology)等で2031年以降に求められているセキュリティ強度(128ビット)を満たすことが可能となる。
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更、他の技術との組み合わせ等が可能である。
10 暗号システム
101 選択部
102 テーブル参照部
103 排他的論理和演算部
104 記憶部
201 プロセッサ
202 メモリ装置
203 I/F
204 バス

Claims (7)

  1. ビットの並べ替えと乱数の排他的論理和演算とガロア体上の積算とが含まれる難読化変換を含む演算処理をデータに対して行った演算結果が格納されたルックアップテーブルを参照して、入力されたデータに対する演算結果を取得する取得手段、を有することを特徴とする情報処理装置。
  2. 前記演算処理には、互いに異なる複数の前記難読化変換が含まれる、ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記演算処理には、AddRoundKey処理とSubBytes処理と排他的論理和演算を除くMixColumns処理とが含まれ、
    前記取得手段は、入力されたデータのうち、ShiftRows処理によって選択されたデータに対する演算結果をそれぞれ取得する、ことを特徴とする請求項1又は2に記載の情報処理装置。
  4. r+1(ただし、r≧1)ラウンド目における前記演算処理には、rラウンド目における前記難読化変換の逆変換が含まれる、ことを特徴とする請求項3に記載の情報処理装置。
  5. 前記取得手段により取得された演算結果に対して排他的論理和演算を行って、次のラウンドに入力されるデータを作成する演算手段を更に有することを特徴とする請求項4に記載の情報処理装置。
  6. ビットの並べ替えと乱数の排他的論理和演算とガロア体上の積算とが含まれる難読化変換を含む演算処理をデータに対して行った演算結果が格納されたルックアップテーブルを参照して、入力されたデータに対する演算結果を取得する取得手順、をコンピュータが実行することを特徴とする情報処理方法。
  7. ビットの並べ替えと乱数の排他的論理和演算とガロア体上の積算とが含まれる難読化変換を含む演算処理をデータに対して行った演算結果が格納されたルックアップテーブルを参照して、入力されたデータに対する演算結果を取得する取得手順、をコンピュータに実行させることを特徴とするプログラム。
JP2019197634A 2019-10-30 2019-10-30 情報処理装置、情報処理方法及びプログラム Active JP7383985B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019197634A JP7383985B2 (ja) 2019-10-30 2019-10-30 情報処理装置、情報処理方法及びプログラム
US17/000,699 US11477009B2 (en) 2019-10-30 2020-08-24 Information processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019197634A JP7383985B2 (ja) 2019-10-30 2019-10-30 情報処理装置、情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2021071570A true JP2021071570A (ja) 2021-05-06
JP7383985B2 JP7383985B2 (ja) 2023-11-21

Family

ID=75688071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019197634A Active JP7383985B2 (ja) 2019-10-30 2019-10-30 情報処理装置、情報処理方法及びプログラム

Country Status (2)

Country Link
US (1) US11477009B2 (ja)
JP (1) JP7383985B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11632231B2 (en) * 2020-03-05 2023-04-18 Novatek Microelectronics Corp. Substitute box, substitute method and apparatus thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017501445A (ja) * 2013-12-20 2017-01-12 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. 暗号アルゴリズムにおける演算子リフティング
JP6222285B1 (ja) * 2016-06-01 2017-11-01 富士電機株式会社 データ処理装置、データ処理方法及びプログラム
JP2018508044A (ja) * 2015-03-09 2018-03-22 クアルコム,インコーポレイテッド マスク演算で使用するための有限部分体ルックアップテーブルを用いた暗号法暗号

Family Cites Families (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182216B1 (en) * 1997-09-17 2001-01-30 Frank C. Luyster Block cipher method
US6185304B1 (en) * 1998-02-23 2001-02-06 International Business Machines Corporation Method and apparatus for a symmetric block cipher using multiple stages
US6185679B1 (en) * 1998-02-23 2001-02-06 International Business Machines Corporation Method and apparatus for a symmetric block cipher using multiple stages with type-1 and type-3 feistel networks
US6189095B1 (en) * 1998-06-05 2001-02-13 International Business Machines Corporation Symmetric block cipher using multiple stages with modified type-1 and type-3 feistel networks
TW375721B (en) * 1998-06-17 1999-12-01 Ind Tech Res Inst DES chip processor capable of executing data encryption standard (DES) operation
US7142669B2 (en) * 2000-11-29 2006-11-28 Freescale Semiconductor, Inc. Circuit for generating hash values
CA2327911A1 (en) * 2000-12-08 2002-06-08 Cloakware Corporation Obscuring functions in computer software
KR100525389B1 (ko) * 2001-01-17 2005-11-02 엘지전자 주식회사 실시간 입력 스트림의 암호화/복호화 장치
JP3851115B2 (ja) * 2001-06-28 2006-11-29 富士通株式会社 暗号回路
TW527783B (en) * 2001-10-04 2003-04-11 Ind Tech Res Inst Encryption/deciphering device capable of supporting advanced encryption standard
US20040202318A1 (en) * 2001-10-04 2004-10-14 Chih-Chung Lu Apparatus for supporting advanced encryption standard encryption and decryption
US7231526B2 (en) * 2001-10-26 2007-06-12 Authenex, Inc. System and method for validating a network session
GB0211812D0 (en) * 2002-05-23 2002-07-03 Koninkl Philips Electronics Nv S-box encryption in block cipher implementations
JP3818263B2 (ja) * 2003-01-28 2006-09-06 日本電気株式会社 Aes暗号処理装置、aes復号処理装置、aes暗号・復号処理装置、aes暗号処理方法、aes復号処理方法、および、aes暗号・復号処理方法
JP2006527865A (ja) * 2003-06-16 2006-12-07 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュート ラインドールブロック暗号化装置、及びその暗号化並びに復号化方法
DE10345378B4 (de) * 2003-09-30 2010-08-12 Infineon Technologies Ag Verfahren und Vorrichtung zur Ver-/Entschlüsselung
KR100800468B1 (ko) * 2004-01-29 2008-02-01 삼성전자주식회사 저전력 고속 동작을 위한 하드웨어 암호화/복호화 장치 및그 방법
DE602004023436D1 (de) * 2004-03-29 2009-11-12 St Microelectronics Sa Prozessor zum ausführen eines aes algorithmus
US20060002548A1 (en) * 2004-06-04 2006-01-05 Chu Hon F Method and system for implementing substitution boxes (S-boxes) for advanced encryption standard (AES)
US7496196B2 (en) * 2004-06-30 2009-02-24 Intel Corporation Method apparatus and system of performing one or more encryption and/or decryption operations
US20060023875A1 (en) * 2004-07-30 2006-02-02 Graunke Gary L Enhanced stream cipher combining function
WO2007075154A2 (en) * 2004-12-06 2007-07-05 The Trustees Of The Stevens Institute Of Technology Method and apparatus for maintaining data integrity for block-encryption algorithms
US8155306B2 (en) * 2004-12-09 2012-04-10 Intel Corporation Method and apparatus for increasing the speed of cryptographic processing
DE102004062825B4 (de) * 2004-12-27 2006-11-23 Infineon Technologies Ag Kryptographische Einheit und Verfahren zum Betreiben einer kryptographischen Einheit
JP4527571B2 (ja) * 2005-03-14 2010-08-18 富士通株式会社 再構成可能演算処理装置
WO2007105126A2 (en) * 2006-03-10 2007-09-20 Koninklijke Philips Electronics N.V. Method and system for obfuscating a cryptographic function
US8233619B2 (en) * 2006-06-07 2012-07-31 Stmicroelectronics S.R.L. Implementation of AES encryption circuitry with CCM
US20080019524A1 (en) * 2006-06-29 2008-01-24 Kim Moo S Apparatus and method for low power aes cryptographic circuit for embedded system
US7890750B2 (en) * 2006-07-06 2011-02-15 Accenture Global Services Limited Encryption and decryption on a graphics processing unit
US7890747B2 (en) * 2006-07-06 2011-02-15 Accenture Global Services Limited Display of decrypted data by a graphics processing unit
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
JP4960044B2 (ja) * 2006-09-01 2012-06-27 株式会社東芝 暗号処理回路及びicカード
JP4905000B2 (ja) * 2006-09-01 2012-03-28 ソニー株式会社 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
US8301905B2 (en) * 2006-09-08 2012-10-30 Inside Secure System and method for encrypting data
JP4909018B2 (ja) * 2006-11-16 2012-04-04 富士通株式会社 共通鍵暗号のための暗号化装置
EP2092684A2 (en) * 2006-11-17 2009-08-26 Koninklijke Philips Electronics N.V. Cryptographic method for a white-box implementation
JP5055993B2 (ja) * 2006-12-11 2012-10-24 ソニー株式会社 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
US8346839B2 (en) * 2007-03-30 2013-01-01 Intel Corporation Efficient advanced encryption standard (AES) datapath using hybrid rijndael S-box
US7970129B2 (en) * 2007-04-19 2011-06-28 Spansion Llc Selection of a lookup table with data masked with a combination of an additive and multiplicative mask
US7860240B2 (en) * 2007-06-29 2010-12-28 Intel Corporation Native composite-field AES encryption/decryption accelerator circuit
US9191197B2 (en) * 2007-10-10 2015-11-17 Canon Kabushiki Kaisha AES encryption/decryption circuit
JP5070005B2 (ja) * 2007-11-01 2012-11-07 株式会社日立製作所 演算装置および演算方法ならびにコンピュータシステム
US9710623B2 (en) 2008-03-05 2017-07-18 Irdeto B.V. Cryptographic system
US8670559B2 (en) * 2008-03-05 2014-03-11 Irdeto Corporate B.V. White-box implementation
US8175265B2 (en) * 2008-09-02 2012-05-08 Apple Inc. Systems and methods for implementing block cipher algorithms on attacker-controlled systems
US8280040B2 (en) * 2009-02-04 2012-10-02 Globalfoundries Inc. Processor instructions for improved AES encryption and decryption
KR101715027B1 (ko) * 2009-03-10 2017-03-22 이르데토 비.브이. 입력 의존형 인코딩들을 이용한 화이트-박스 암호화 시스템
EP2443786A1 (en) * 2009-06-19 2012-04-25 Irdeto B.V. White-box cryptographic system with configurable key using intermediate data modification
JP2011169977A (ja) * 2010-02-16 2011-09-01 Renesas Electronics Corp 暗号処理装置
US8504845B2 (en) * 2011-03-30 2013-08-06 Apple Inc. Protecting states of a cryptographic process using group automorphisms
FR2985624B1 (fr) * 2012-01-11 2014-11-21 Inside Secure Procede de chiffrement protege contre des attaques par canaux auxiliaires
WO2014003117A1 (ja) * 2012-06-28 2014-01-03 日本電気株式会社 暗号化装置、暗号化方法およびプログラム
FR2995111B1 (fr) * 2012-09-04 2015-07-24 Morpho Protection contre canaux auxiliaires
CN105359450B (zh) * 2013-03-27 2020-08-07 爱迪德技术有限公司 防篡改密码算法实现
EP2885892A1 (en) * 2013-03-27 2015-06-24 Irdeto B.V. Aes implementation with error correction
US10237066B1 (en) * 2013-06-27 2019-03-19 Altera Corporation Multi-channel encryption and authentication
KR102133200B1 (ko) * 2013-08-08 2020-07-13 서울대학교산학협력단 데이터의 보호 방법 및 장치
US9843441B2 (en) * 2013-09-24 2017-12-12 Intel Corporation Compact, low power advanced encryption standard circuit
US9787470B2 (en) * 2013-12-12 2017-10-10 Samsung Electronics Co., Ltd. Method and apparatus of joint security advanced LDPC cryptcoding
KR20150090438A (ko) * 2014-01-29 2015-08-06 한국전자통신연구원 화이트박스 암호 장치 및 그 방법
US9485226B2 (en) * 2014-04-28 2016-11-01 Nxp B.V. Method for including an implicit integrity or authenticity check into a white-box implementation
US9641337B2 (en) * 2014-04-28 2017-05-02 Nxp B.V. Interface compatible approach for gluing white-box implementation to surrounding program
US9363244B2 (en) * 2014-04-28 2016-06-07 Nxp B.V. Realizing authorization via incorrect functional behavior of a white-box implementation
US9380033B2 (en) * 2014-04-28 2016-06-28 Nxp B.V. Implementing use-dependent security settings in a single white-box implementation
US9338145B2 (en) * 2014-04-28 2016-05-10 Nxp B.V. Security patch without changing the key
KR20150129459A (ko) * 2014-05-12 2015-11-20 한국전자통신연구원 화이트 박스 암호화 장치 및 그 방법
US9565018B2 (en) * 2014-05-28 2017-02-07 Apple Inc. Protecting cryptographic operations using conjugacy class functions
US10412054B2 (en) * 2014-06-24 2019-09-10 Nxp B.V. Method for introducing dependence of white-box implementation on a set of strings
US9569639B2 (en) * 2014-09-12 2017-02-14 Nxp B.V. Remapping constant points in a white-box implementation
CN104268477B (zh) * 2014-09-26 2017-09-26 华为技术有限公司 一种安全控制方法及网络设备
US10559163B2 (en) * 2014-09-26 2020-02-11 Mark C Nicely System, device and method for providing an interactive gambling game
US9485088B2 (en) * 2014-10-31 2016-11-01 Combined Conditional Access Development And Support, Llc Systems and methods for dynamic data masking
WO2016109061A1 (en) * 2014-12-30 2016-07-07 Cryptography Research, Inc. Determining cryptographic operation masks for improving resistance to external monitoring attacks
US9665699B2 (en) * 2015-03-13 2017-05-30 Nxp B.V. Implementing padding in a white-box implementation
EP3086503B1 (en) * 2015-04-23 2018-06-06 Inside Secure Fault detection for systems implementing a block cipher
US9602273B2 (en) * 2015-05-06 2017-03-21 Nxp B.V. Implementing key scheduling for white-box DES implementation
US20160350520A1 (en) * 2015-05-29 2016-12-01 Nxp, B.V. Diversifying Control Flow of White-Box Implementation
US10505709B2 (en) * 2015-06-01 2019-12-10 Nxp B.V. White-box cryptography interleaved lookup tables
US10097342B2 (en) * 2015-07-30 2018-10-09 Nxp B.V. Encoding values by pseudo-random mask
US10700849B2 (en) * 2015-07-30 2020-06-30 Nxp B.V. Balanced encoding of intermediate values within a white-box implementation
JP6292195B2 (ja) 2015-08-24 2018-03-14 富士電機株式会社 情報処理装置及び情報処理方法
US10020932B2 (en) * 2015-11-13 2018-07-10 Nxp B.V. Split-and-merge approach to protect against DFA attacks
US10015009B2 (en) * 2015-11-25 2018-07-03 Nxp B.V. Protecting white-box feistel network implementation against fault attack
US10171234B2 (en) * 2015-12-16 2019-01-01 Nxp B.V. Wide encoding of intermediate values within a white-box implementation
JP6187624B1 (ja) 2016-03-17 2017-08-30 富士電機株式会社 情報処理装置、情報処理方法及びプログラム
US9992018B1 (en) * 2016-03-24 2018-06-05 Electronic Arts Inc. Generating cryptographic challenges to communication requests
US10223511B2 (en) * 2016-03-30 2019-03-05 Nxp B.V. Watermarking input and output of a white-box implementation
US9910792B2 (en) * 2016-04-11 2018-03-06 Intel Corporation Composite field scaled affine transforms-based hardware accelerator
JP6135804B1 (ja) * 2016-06-01 2017-05-31 富士電機株式会社 情報処理装置、情報処理方法及びプログラム
US20170353298A1 (en) * 2016-06-03 2017-12-07 Intel Corporation Single clock cycle cryptographic engine
DE102016008456B4 (de) * 2016-07-12 2018-03-29 Giesecke+Devrient Mobile Security Gmbh White Box AES Implementierung
US10783279B2 (en) * 2016-09-01 2020-09-22 Atmel Corporation Low cost cryptographic accelerator
CN106788974B (zh) * 2016-12-22 2020-04-28 深圳国微技术有限公司 掩码s盒、分组密钥计算单元、装置及对应的构造方法
US11227071B2 (en) * 2017-03-20 2022-01-18 Nanyang Technological University Hardware security to countermeasure side-channel attacks
US10547449B2 (en) * 2017-05-30 2020-01-28 Nxp B.V. Protection against relay attacks in a white-box implementation
EP3413500A1 (en) * 2017-06-09 2018-12-12 Koninklijke Philips N.V. Device and method to compute a block cipher
EP3667647B1 (en) * 2017-08-10 2024-09-25 Sony Group Corporation Encryption device, encryption method, decryption device, and decryption method
KR102602696B1 (ko) * 2017-10-13 2023-11-16 삼성전자주식회사 암호화 장치 및 복호화 장치, 이들의 동작방법
US20190116022A1 (en) * 2017-10-16 2019-04-18 Samsung Electronics Co., Ltd. Encryption device and operation method thereof
US10630462B2 (en) * 2017-10-27 2020-04-21 Nxp B.V. Using white-box in a leakage-resilient primitive
US11863304B2 (en) * 2017-10-31 2024-01-02 Unm Rainforest Innovations System and methods directed to side-channel power resistance for encryption algorithms using dynamic partial reconfiguration
US10891110B2 (en) * 2017-12-11 2021-01-12 The Board Of Regents Of The University Of Texas System AES/CRC engine based on resource shared galois field computation
US10911236B2 (en) * 2017-12-13 2021-02-02 Paypal, Inc. Systems and methods updating cryptographic processes in white-box cryptography
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
US11444748B2 (en) * 2019-03-29 2022-09-13 Intel Corporation Ultra-low latency advanced encryption standard
US11838403B2 (en) * 2019-04-12 2023-12-05 Board Of Regents, The University Of Texas System Method and apparatus for an ultra low power VLSI implementation of the 128-bit AES algorithm using a novel approach to the shiftrow transformation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017501445A (ja) * 2013-12-20 2017-01-12 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. 暗号アルゴリズムにおける演算子リフティング
JP2018508044A (ja) * 2015-03-09 2018-03-22 クアルコム,インコーポレイテッド マスク演算で使用するための有限部分体ルックアップテーブルを用いた暗号法暗号
JP6222285B1 (ja) * 2016-06-01 2017-11-01 富士電機株式会社 データ処理装置、データ処理方法及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
堀田 智彦 ほか: "ホワイトボックスAES実装の改良", 情報処理学会研究報告 コンピュータセキュリティ(CSEC), vol. Vol.2017-CSEC-76 No.3, JPN6023023894, 23 February 2017 (2017-02-23), JP, pages 1 - 8, ISSN: 0005169486 *

Also Published As

Publication number Publication date
US20210135842A1 (en) 2021-05-06
US11477009B2 (en) 2022-10-18
JP7383985B2 (ja) 2023-11-21

Similar Documents

Publication Publication Date Title
JP5911654B2 (ja) 乱数生成器及びストリーム暗号
US7532721B2 (en) Implementation of a switch-box using a subfield method
US20210165633A1 (en) Protection system and method
US20120170739A1 (en) Method of diversification of a round function of an encryption algorithm
KR100800468B1 (ko) 저전력 고속 동작을 위한 하드웨어 암호화/복호화 장치 및그 방법
US20120314857A1 (en) Block encryption device, block decryption device, block encryption method, block decryption method and program
JP2006506668A (ja) 複数鍵を用いたストリーム暗号の生成方法
Agrawal et al. Elliptic curve cryptography with hill cipher generation for secure text cryptosystem
Reyad et al. Key-based enhancement of data encryption standard for text security
Elgeldawi et al. A comparative analysis of symmetric algorithms in cloud computing: a survey
Joshy et al. Text to image encryption technique using RGB substitution and AES
Priya et al. FPGA implementation of efficient AES encryption
JP7383985B2 (ja) 情報処理装置、情報処理方法及びプログラム
Taher et al. Best S-box amongst differently sized S-boxes based on the avalanche effect in‎ the advance encryption standard algorithm
Rouaf et al. Performance Evaluation of Encryption Algorithms in Mobile Devices
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
JP7459569B2 (ja) 情報処理装置、情報処理方法及びプログラム
Srihith et al. Locking down big data: a comprehensive survey of data encryption methods
JP2002510058A (ja) 2進データ・ブロックの暗号変換のための方法
Yahya et al. An AES-Based Encryption Algorithm with Shuffling.
JP7383949B2 (ja) 情報処理装置及びプログラム
Partheeban et al. Generation of dynamic S-BOX using irreduceable polynomial and the secret key used
Salman New method for encryption using mixing advanced encryption standard and blowfish algorithms
Zhang et al. Update on Security Analysis and Implementations of KNOT
Usman et al. A data specific comparative study for choosing best cryptographic technique

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220913

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: 20230706

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: 7383985

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150