JP4909018B2 - 共通鍵暗号のための暗号化装置 - Google Patents
共通鍵暗号のための暗号化装置 Download PDFInfo
- Publication number
- JP4909018B2 JP4909018B2 JP2006310716A JP2006310716A JP4909018B2 JP 4909018 B2 JP4909018 B2 JP 4909018B2 JP 2006310716 A JP2006310716 A JP 2006310716A JP 2006310716 A JP2006310716 A JP 2006310716A JP 4909018 B2 JP4909018 B2 JP 4909018B2
- Authority
- JP
- Japan
- Prior art keywords
- output
- input
- data
- unit
- circuit
- 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.)
- Expired - Fee Related
Links
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/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- 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
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/04—Masking or blinding
- H04L2209/046—Masking or blinding of operations, operands or results of the operations
-
- 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/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Description
,...,拡大鍵N)が生成され、ラウンド処理1502に対して出力される。これらの拡大鍵と平文をラウンド処理1502に入力することで、暗号化のための変換が行われ、暗号文が出力される。
yi =xj ,j=13i−4(mod 16) (1)
(1)式において、(mod 16)は、16を法とする剰余演算を表している。
次に、DPAによる秘密鍵解読方法について説明する。DPAは、図15のラウンド処理1502に関する消費電力を測定することで、秘密鍵を解読する方法である。以下では、DPAを用いて解読を行うことができる共通鍵暗号処理の構成について、AESに限定せずに説明を行う。
と記すことにすると、Lは、任意のXおよびYに関して次式を満たすような線形変換を表している。
非線形変換処理は、図23に示すように、入力データXに対してZ=W(X)を満たすZを出力する処理である。このとき、Wは、任意のXおよびYに関して次式を満たさない非線形変換を表している。
て説明する。ここでは、最も簡単な例として、図21と図23の処理を組み合わせた図24のような処理に対して、DPAを用いることで拡大鍵Kを解読できることを示す。なお、図24の処理は、AESにおけるRoundKey処理(図17)とSubbyte処理(図18)を組み合わせた処理と等価である。
(k’ j )の2種類の集合に分類できる。
DG(k’ j )=(集合G1 に属する電力消費曲線の平均)
−(集合G0 に属する電力消費曲線の平均) (7)
もしこの仮定が正しい、すなわち、k’j =kj であるとすると、電力差分曲線DG(k’ j )には、図27に示すようなスパイクが現われる。もしこの仮定が誤り、すなわちk’j ≠kj であるとすると、図28に示すように、DG(k’ j )はスパイクが現れない平坦な曲線となる。よって、仮定したk’j から図27のような電力差分曲線が得られれば、拡大鍵kj を解読できたことになる。
(G1 に属するzj の平均ハミングウェイト)
−(G0 に属するzj の平均ハミングウェイト)=1 (8)
(G1 に属するzj の平均ハミングウェイト)
−(G0 に属するzj の平均ハミングウェイト)=0 (9)
ここで、ハミングウェイトとは、ある値をビット列で表現したときに、そのビット列に含まれるビット値‘1’の個数のことであり、例えば、ビット値(1101)2 のハミングウェイトは3である。
図29は、図24を一般化した構成を示しており、拡大鍵XOR処理の前後に2つの線形変換処理L1 およびL2 が挿入されている。例えば、入力をそのまま出力する関数をL1 とし、ビット転置置換関数をL2 とし、SC2000のB関数と呼ばれるSboxをwj とすると、図29はSC2000と等価な構成を表している。
DPA−1:入力Mが既知かつ制御可能、鍵Kが未知で固定、Sboxのwj の変換が既知の場合、図30のAの部分(Sboxのwj の出力)の電力消費曲線を測定することで、秘密鍵Kを推定可能である。
DPAを行うための消費電力測定法としては、2種類の方法が知られている。1つは、図31に示すように、スマートカード3101の表面に抵抗3102を接続し、オシロスコープ3103により、抵抗3102の両端の電圧を測定する方法である。もう1つは、図32に示すように、スマートカード3101の表面に、オシロスコープ3103に接続された電磁波プローブ3201を設置し、スマートカード3101から漏洩する電磁波を測定することで、消費電力を測定する方法である。
される。データがランダム化されることで消費電力もランダム化されるため、DPAに対して安全な処理を実現することができる。以下では、Rのように、DPA対策なしのデータに対してXOR演算される値を、マスク値と呼ぶ。
この問題を解消するための方法が、上述した特許文献1に開示されている(以下では、「従来例2」と記す)。従来例1ではマスク値をランダムに生成しているのに対して、従来例2では、事前に計算された複数の固定値の中から、乱数によって1つを選択し、その値をマスク値として用いる。選択されたマスク値をRx と表記すると、従来例2では、次式を満たすデータM’ x およびRx が計算される。
この問題を解消する方法として、下記の特許文献2に記されたDPA対策法が知られている(以下では、「従来例3」と記す)。この方法は、図15における拡大鍵生成1501の消費電力をランダム化する方法である。このメカニズムを説明するために、DPA対策なしのAESにおける拡大鍵生成について説明する。
法では、q個のSboxのうちの1つしか暗号処理に使用されないのに対して、従来例3の方法では、経路選択回路の作用により、すべてのSboxが暗号処理に使用されることになる。したがって、従来例3は従来例2が有している問題2を解決することができる。
問題3:従来例3は、拡大鍵生成の消費電力のみをランダム化する方法であるため、DPAに対する安全性が低い。すなわち、図31に示した方法により、スマートカード全体の消費電力を測定するDPAを防ぐことはできるが、図32に示した方法により、スマートカードの一部の回路の消費電力を測定するDPAに対しては、安全ではない。
問題4:従来例3の経路選択回路は、セレクタ回路やデマルチプレクサ回路の他に、入
力された乱数から選択信号を生成する回路を必要とするため、回路規模が大きくなる。
ことができる。一方で、DPAに対して安全な処理を実現するために、乱数を直接経路選択回路3602および3603に入力することができず、乱数デコーダ3611とインバータ回路3612からなる選択信号生成回路3601を必要とする。その結果、上述した問題4が生じる。
が出力される。ただし、
である。
が出力される。その後、経路選択回路3706により、
は再び最上位8ビットの位置に戻され、データが出力される。このとき、
において、
であるが、Sは非線形変換関数であるため、
の関係は満たされず、Rx =S[cr0]が成立しないからである。つまり、Rx は乱数r0 のみによって決定される値ではなく、データ値x0 の影響を受けて変化する値であるということになる。
におけるRx=0の場合と等価な処理を実現できる。
本発明の課題は、共通鍵暗号処理において、DPAのような電力解析攻撃に対する対策を施し、問題1〜問題4をできる限り解決可能な暗号化装置を提供することである。
図2は、AESのラウンド処理におけるRoundKey処理およびSubbyte処
理に対して、本発明のDPA対策を適用した暗号化回路の構成例を示している。この暗号化回路は、XOR演算器201、202、経路選択回路203、204、205、および4つのマスク付きSbox(S’0 〜S’3 )を備える。
経路選択回路203は、RoundKey処理の消費電力をランダム化するために用いられ、経路選択回路204および経路選択回路205は、Subbyte処理におけるSbox処理の消費電力をランダム化するために用いられる。3つの経路選択回路203〜205にはそれぞれ同一の乱数が入力され、入力された乱数がそのまま選択信号として用いられる。この乱数は、4ビットもしくは6ビットであるが、乱数のビット長は構成によって異なる。
が
の順番に並べ替えられて、S’0 ,S’1 ,S’2 ,S’3 にそれぞれ入力される。
が出力される。
が出力される。
例えば、x0 については、まず、乱数r0 の値に応じて切替回路311のO0 またはO1 から出力される。O0 から出力された場合、x0 はS’0 およびS’1 に接続されている切替回路313に入力され、さらに乱数r1 の値に応じてS’0 またはS’1 に出力される。x0 が切替回路311のO1 から出力された場合、x0 はS’2 およびS’3 に接続されている切替回路314に入力され、さらに乱数r3 の値に応じてS’2 またはS’3 に出力される。
成の経路選択回路302による変換を行うことで、データがランダム化される前の順序に戻され、z0 〜z3 が出力される。
715および716を並列に並べた3段目の回路からなる。入力データは最上位からx0 ,x1 ,x2 ,x3 の順に並んでおり、x0 およびx1 はそれぞれ切替回路711のI0 およびI1 に入力され、x2 およびx3 はそれぞれ切替回路712のI0 およびI1 に入力される。
図9は、このようなラウンド処理回路の構成例を示している。このラウンド処理回路は、乱数発生器901、分割回路902〜905、結合回路906、XOR演算器907、909、910、921、923、924、930、931、935、経路選択回路908、911、912、914、915、918、922、925、927、929、933、934、Sbox回路913、926、ShiftRow回路916、919、928、932、およびMixColumn回路917、920を備え、128ビットの平文Mと、N+1個の128ビット拡大鍵EKi (i=0,1,..,N)を入力として、128ビットの暗号文Eを出力する。
以下では、図9のラウンド処理回路の動作について説明する。乱数発生器901は、4×(b/32)ビットもしくは6×(b/32)ビットの乱数を生成し、すべての経路選択回路908、911、912、914、915、918、922、925、927、929、933、および934に出力する。経路選択回路908、911、915、918、922、929、933、および934は、この乱数を選択信号として用いて、ランダムなマスク値を生成する。
OR演算が必要な理由は、Sbox回路913におけるマスク値の制約によるものである。つまり、S’0 〜S’q-1 の入力に対するマスク値は、定数c0 〜cq-1 の順序をランダム化した値であり、出力に対するマスク値は、定数d0 〜dq-1 の順序をランダム化した値である、という制約である。
の順序をランダム化した値となる。(18)式より、これはc0 〜cq-1 の順序をランダム化した値と等しいことになる。また、(18)式は、XOR演算器921からXOR演算器910へのフィードバック後のマスク値のみならず、XOR演算器907からXOR演算器910に出力されたデータのマスク値(i=0)も同様に、c0 〜cq-1 の順序をランダム化した値と等しくなることを示している。
次のRoundKey処理では、分割回路905は、拡大鍵EKN をbビット単位で分割し、XOR演算器930に出力する。経路選択回路929は、乱数に応じてマスク値FMN,0 〜FMN,q-1 の順序をランダム化し、XOR演算器930に出力する。XOR演算器930は、分割回路905の出力と経路選択回路929の出力のXORを出力することで、FMN,0 〜FMN,q-1 によるマスク処理を行う。そして、XOR演算器931は、ShiftRow回路928の出力とXOR演算器930の出力のXORを出力する。
hiftRow回路932に出力する。この出力に対して、ShiftRow回路932がShiftRow処理を行って、得られたデータをXOR演算器935に出力する。経路選択回路934は、乱数に応じてマスク値FMN,0 〜FMN,q-1 の順序をランダム化し、XOR演算器935に出力する。
以上が図9のラウンド処理回路の基本的な動作であるが、経路選択回路の具体的な構成は、処理単位であるビット数bの値によって異なる。b=32の場合は、上述したように、図3または図7に示した構成を用いることができる。b=64またはb=128の場合は、例えば、図10に示すような構成を用いることができる。
O1 からの出力データは、経路選択回路1202−3および1202−4に出力される。これにより、パターン数は、65536×2=131072通りとなる。
乱数を発生する乱数発生手段と、
前記乱数の値に応じて、拡大鍵をマスクするための複数の拡大鍵マスク値からなるデータ列をランダムに並べ替えて出力する第1の経路選択手段と、
前記第1の経路選択手段から出力される複数の拡大鍵マスク値と、前記拡大鍵を表すデータ列と、入力データ列との排他的論理和を生成する拡大鍵演算手段と、
前記乱数の値に応じて前記第1の経路選択手段とは逆の並べ替えを行うことで、前記排他的論理和のデータ列を並べ替えて出力する第2の経路選択手段と、
前記第2の経路選択手段から出力されるデータ列の非線形変換を行って、複数の非線形変換マスク値によりマスクされたデータ列を出力する非線形変換手段と、
前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、前記非線形変換手段から出力されるデータ列を並べ替えて出力する第3の経路選択手段と
を備えることを特徴とする暗号化装置。
(付記2)前記非線形変換手段から出力されるデータ列は、前記第2の経路選択手段から出力されるデータ列と前記複数の拡大鍵マスク値の排他的論理和をマスクなし非線形変換テーブルにより変換した結果と、前記複数の非線形変換マスク値との排他的論理和を表すことを特徴とする付記1記載の暗号化装置。
(付記3)前記複数の拡大鍵マスク値はそれぞれ異なる値であり、前記複数の非線形変換マスク値はそれぞれ異なる値であることを特徴とする付記2記載の暗号化装置。
(付記4)前記第1の経路選択手段、第2の経路選択手段、および第3の経路選択手段の各々は複数の切替手段を含み、各切替手段は、第1および第2の入力部と第1および第2の出力部を有し、前記乱数の値に応じて、該第1の入力部に入力されたデータを該第1の出力部から出力し、該第2の入力部に入力されたデータを該第2の出力部から出力する第1の切替動作と、該第1の入力部に入力されたデータを該第2の出力部から出力し、該第2の入力部に入力されたデータを該第1の出力部から出力する第2の切替動作の一方を行うことを特徴とする付記1、2、または3記載の暗号化装置。
(付記5)前記乱数は4個の値からなり、前記複数の切替手段は、該乱数の4個の値のそれぞれに応じて動作する第1、第2、第3、および第4の切替手段からなり、該第1の切替手段の第1および第2の出力部は、該第3の切替手段の第1の入力部および該第4の切替手段の第1の入力部にそれぞれ接続され、該第2の切替手段の第1および第2の出力部は、該第3の切替手段の第2の入力部および該第4の切替手段の第2の入力部にそれぞれ接続され、該第1の切替手段の第1および第2の入力部と該第2の切替手段の第1および第2の入力部に4個のデータがそれぞれ入力され、該第3の切替手段の第1および第2の出力部と該第4の切替手段の第1および第2の出力部から4個のデータがそれぞれ出力されることを特徴とする付記4記載の暗号化装置。
(付記6)前記乱数は6個の値からなり、
前記第1および第3の経路選択手段に含まれる複数の切替手段は、前記乱数の6個の値のそれぞれに応じて動作する第1、第2、第3、第4、第5、および第6の切替手段からなり、該第1の切替手段の第1および第2の出力部は、該第3の切替手段の第1の入力部および該第4の切替手段の第1の入力部にそれぞれ接続され、該第2の切替手段の第1および第2の出力部は、該第3の切替手段の第2の入力部および該第4の切替手段の第2の入力部にそれぞれ接続され、該第3の切替手段の第1および第2の出力部は、該第6の切替手段の第2の入力部および該第5の切替手段の第1の入力部にそれぞれ接続され、該第4の切替手段の第1および第2の出力部は、該第5の切替手段の第2の入力部および該第6の切替手段の第1の入力部にそれぞれ接続され、該第1の切替手段の第1および第2の入力部と該第2の切替手段の第1および第2の入力部に4個のデータがそれぞれ入力され、該第5の切替手段の第1および第2の出力部と該第6の切替手段の第1および第2の出力部から4個のデータがそれぞれ出力され、
前記第2の経路選択手段に含まれる複数の切替手段は、前記乱数の6個の値のそれぞれに応じて動作する第7、第8、第9、第10、第11、および第12の切替手段からなり、該第7の切替手段の第1および第2の出力部は、該第9の切替手段の第2の入力部および該第10の切替手段の第1の入力部にそれぞれ接続され、該第8の切替手段の第1および第2の出力部は、該第10の切替手段の第2の入力部および該第9の切替手段の第1の入力部にそれぞれ接続され、該第9の切替手段の第1および第2の出力部は、該第11の切替手段の第1の入力部および該第12の切替手段の第1の入力部にそれぞれ接続され、該第10の切替手段の第1および第2の出力部は、該第11の切替手段の第2の入力部および該第12の切替手段の第2の入力部にそれぞれ接続され、該第7の切替手段の第1および第2の入力部と該第8の切替手段の第1および第2の入力部に4個のデータがそれぞ
れ入力され、該第11の切替手段の第1および第2の出力部と該第12の切替手段の第1および第2の出力部から4個のデータがそれぞれ出力されることを特徴とする付記4記載の暗号化装置。
(付記7)前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、平文をマスクするための複数の平文マスク値からなるデータ列を並べ替えて出力する第4の経路選択手段と、
前記第4の経路選択手段から出力される複数の平文マスク値と、前記平文を表すデータ列との排他的論理和を生成し、前記入力データ列として前記拡大鍵演算手段に出力する平文演算手段と、
前記第3の経路選択手段から出力されるデータ列に対して、シフトロウ処理およびミクスコラム処理を行う第1の処理手段と、
前記第1の処理手段の処理結果と、該第1の処理手段の処理結果に対するマスクを解除するためのデータ列と、複数の新たなマスク値との排他的論理和を生成するマスク演算手段とをさらに備え、
前記非線形変換手段から出力されるデータ列は、前記第2の経路選択手段から出力されるデータ列と前記複数の拡大鍵マスク値と前記複数の平文マスク値の排他的論理和をマスクなし非線形変換テーブルにより変換した結果と、前記複数の非線形変換マスク値との排他的論理和を表し、前記マスク演算手段から出力される排他的論理和のデータ列が前記入力データ列として前記拡大鍵演算手段にフィードバックされ、0番目からN−2番目までのN−1個の拡大鍵のそれぞれについて、前記第1の経路選択手段、拡大鍵演算手段、第2の経路選択手段、非線形変換手段、第3の経路選択手段、第1の処理手段、およびマスク演算手段によるループ処理が繰り返されることを特徴とする付記1記載の暗号化装置。(付記8)前記複数の拡大鍵マスク値はそれぞれ異なる値であり、前記複数の平文マスク値はそれぞれ異なる値であり、前記複数の非線形変換マスク値はそれぞれ異なる値であることを特徴とする付記7記載の暗号化装置。
(付記9)前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、前記複数の平文マスク値からなるデータ列を並べ替え、得られたデータ列を前記複数の新たなマスク値として、前記マスク演算手段に出力する第5の経路選択手段をさらに備えることを特徴とする付記7または8記載の暗号化装置。
(付記10)前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、前記複数の非線形変換マスク値からなるデータ列を並べ替えて出力する第6の経路選択手段と、
前記第6の経路選択手段から出力されるデータ列に対して、シフトロウ処理およびミクスコラム処理を行い、得られた処理結果を前記マスクを解除するためのデータ列として、前記マスク演算手段に出力する第2の処理手段とをさらに備えることを特徴とする付記7、8、または9記載の暗号化装置。
(付記11)前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、N−1番目の拡大鍵をマスクするための複数の拡大鍵マスク値からなるデータ列を並べ替えて出力する第7の経路選択手段と、
前記第7の経路選択手段から出力される複数の拡大鍵マスク値と、前記N−1番目の拡大鍵を表すデータ列と、前記N−2番目の拡大鍵を用いたループ処理において前記マスク演算手段から出力される排他的論理和のデータ列との排他的論理和を生成する第1の演算手段と、
前記乱数の値に応じて前記第1の経路選択手段とは逆の並べ替えを行うことで、前記第1の演算手段から出力される排他的論理和のデータ列を並べ替えて出力する第8の経路選択手段と、
前記第8の経路選択手段から出力されるデータ列の非線形変換を行って、前記複数の非線形変換マスク値によりマスクされたデータ列を出力する後段の非線形変換手段と、
前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、前記後段の非線形変換手段から出力されるデータ列を並べ替えて出力する第9の経路選択手段と、
前記第9の経路選択手段から出力されるデータ列に対してシフトロウ処理を行う第3の処理手段と、
前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、N番目の拡大鍵をマスクするための複数の拡大鍵マスク値からなるデータ列を並べ替えて出力する第10の経路選択手段と、
前記第10の経路選択手段から出力される複数の拡大鍵マスク値と、前記N番目の拡大鍵を表すデータ列と、前記第3の処理手段の処理結果との排他的論理和を生成する第2の演算手段と、
前記第2の演算手段から出力される排他的論理和のデータ列と、前記第3の処理手段の処理結果に対するマスクを解除するためのデータ列と、前記N番目の拡大鍵に対するマスクを解除するためのデータ列との排他的論理和を生成し、暗号文として出力する第3の演算手段とをさらに備え、
前記後段の非線形変換手段から出力されるデータ列は、前記第8の経路選択手段から出力されるデータ列と、前記N−1番目の拡大鍵をマスクするための複数の拡大鍵マスク値と、前記複数の平文マスク値の排他的論理和を前記マスクなし非線形変換テーブルにより変換した結果と、前記複数の非線形変換マスク値との排他的論理和を表すことを特徴とする付記7、8、9、または10記載の暗号化装置。
(付記12)前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、前記N番目の拡大鍵をマスクするための複数の拡大鍵マスク値からなるデータ列を並べ替え、得られたデータ列を前記N番目の拡大鍵に対するマスクを解除するためのデータ列として、前記第3の演算手段に出力する第11の経路選択手段をさらに備えることを特徴とする付記11記載の暗号化装置。
(付記13)前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、前記複数の非線形変換マスク値からなるデータ列を並べ替えて出力する第12の経路選択手段と、
前記第12の経路選択手段から出力されるデータ列に対してシフトロウ処理を行い、得られた処理結果を前記第3の処理手段の処理結果に対するマスクを解除するためのデータ列として、前記第3の演算手段に出力する第4の処理手段とをさらに備えることを特徴とする付記11または12記載の暗号化装置。
(付記14)前記第1の経路選択手段、第2の経路選択手段、第3の経路選択手段、第4の経路選択手段、第7の経路選択手段、第8の経路選択手段、第9の経路選択手段、および第10の経路選択手段の各々は1つ以上の単位データ列経路選択手段を含み、該単位データ列経路選択手段は複数の切替手段を含み、各切替手段は、第1および第2の入力部と第1および第2の出力部を有し、前記乱数の値に応じて、該第1の入力部に入力されたデータを該第1の出力部から出力し、該第2の入力部に入力されたデータを該第2の出力部から出力する第1の切替動作と、該第1の入力部に入力されたデータを該第2の出力部から出力し、該第2の入力部に入力されたデータを該第1の出力部から出力する第2の切替動作の一方を行うことを特徴とする付記11記載の暗号化装置。
(付記15)前記1つ以上の単位データ列経路選択手段のそれぞれに対して、前記乱数を構成する複数の値のうち異なる4個の値が入力され、前記複数の切替手段は、該乱数の4個の値のそれぞれに応じて動作する第1、第2、第3、および第4の切替手段からなり、該第1の切替手段の第1および第2の出力部は、該第3の切替手段の第1の入力部および該第4の切替手段の第1の入力部にそれぞれ接続され、該第2の切替手段の第1および第2の出力部は、該第3の切替手段の第2の入力部および該第4の切替手段の第2の入力部にそれぞれ接続され、該第1の切替手段の第1および第2の入力部と該第2の切替手段の第1および第2の入力部に4個のデータがそれぞれ入力され、該第3の切替手段の第1および第2の出力部と該第4の切替手段の第1および第2の出力部から4個のデータがそれぞれ出力されることを特徴とする付記14記載の暗号化装置。
(付記16)前記1つ以上の単位データ列経路選択手段のそれぞれに対して、前記乱数を構成する複数の値のうち異なる6個の値が入力され、
前記第1、第3、第4、第7、第9、および第10の経路選択手段に含まれる複数の切替手段は、前記乱数の6個の値のそれぞれに応じて動作する第1、第2、第3、第4、第5、および第6の切替手段からなり、該第1の切替手段の第1および第2の出力部は、該第3の切替手段の第1の入力部および該第4の切替手段の第1の入力部にそれぞれ接続され、該第2の切替手段の第1および第2の出力部は、該第3の切替手段の第2の入力部および該第4の切替手段の第2の入力部にそれぞれ接続され、該第3の切替手段の第1および第2の出力部は、該第6の切替手段の第2の入力部および該第5の切替手段の第1の入力部にそれぞれ接続され、該第4の切替手段の第1および第2の出力部は、該第5の切替手段の第2の入力部および該第6の切替手段の第1の入力部にそれぞれ接続され、該第1の切替手段の第1および第2の入力部と該第2の切替手段の第1および第2の入力部に4個のデータがそれぞれ入力され、該第5の切替手段の第1および第2の出力部と該第6の切替手段の第1および第2の出力部から4個のデータがそれぞれ出力され、
前記第2および第8の経路選択手段に含まれる複数の切替手段は、前記乱数の6個の値のそれぞれに応じて動作する第7、第8、第9、第10、第11、および第12の切替手段からなり、該第7の切替手段の第1および第2の出力部は、該第9の切替手段の第2の入力部および該第10の切替手段の第1の入力部にそれぞれ接続され、該第8の切替手段の第1および第2の出力部は、該第10の切替手段の第2の入力部および該第9の切替手段の第1の入力部にそれぞれ接続され、該第9の切替手段の第1および第2の出力部は、該第11の切替手段の第1の入力部および該第12の切替手段の第1の入力部にそれぞれ接続され、該第10の切替手段の第1および第2の出力部は、該第11の切替手段の第2の入力部および該第12の切替手段の第2の入力部にそれぞれ接続され、該第7の切替手段の第1および第2の入力部と該第8の切替手段の第1および第2の入力部に4個のデータがそれぞれ入力され、該第11の切替手段の第1および第2の出力部と該第12の切替手段の第1および第2の出力部から4個のデータがそれぞれ出力されることを特徴とする付記14記載の暗号化装置。
(付記17)前記第1の経路選択手段、第2の経路選択手段、第3の経路選択手段、第4の経路選択手段、第7の経路選択手段、第8の経路選択手段、第9の経路選択手段、および第10の経路選択手段の各々は、複数の単位データ列経路選択手段と、該複数の単位データ列経路選択手段に入力されるデータ列を、1つ以上の単位データ列からなる2つの部分に分割し、前記乱数を構成する複数の値のうちの1つに応じて該2つの部分の順序を入れ替えて、該複数の単位データ列経路選択手段に出力する切替手段とからなることを特徴とする付記14、15、または16記載の暗号化装置。
(付記18)前記第1の経路選択手段、第2の経路選択手段、第3の経路選択手段、第4の経路選択手段、第7の経路選択手段、第8の経路選択手段、第9の経路選択手段、および第10の経路選択手段の各々は、4つの単位データ列経路選択手段と、該4つの単位データ列経路選択手段に入力されるデータ列を4つの単位データ列に分割し、前記乱数を構成する複数の値のうちの一部に応じて該4つの単位データ列の順序を入れ替えて、該4つの単位データ列経路選択手段に出力する切替手段とからなることを特徴とする付記14、15、または16記載の暗号化装置。
(付記19)共通鍵暗号の暗号処理を行う暗号化方法であって、
乱数を発生し、
前記乱数の値に応じて、拡大鍵をマスクするための複数の拡大鍵マスク値からなるデータ列をランダムに並べ替え、
並べ替えられた複数の拡大鍵マスク値と、前記拡大鍵を表すデータ列と、入力データ列との排他的論理和を生成し、
前記乱数の値に応じて前記複数の拡大鍵マスク値とは逆の並べ替えを行うことで、前記排他的論理和のデータ列を並べ替え、
並べ替えられたデータ列の非線形変換を行って、複数の非線形変換マスク値によりマスクされたデータ列を生成し、
前記乱数の値に応じて前記複数の拡大鍵マスク値と同じ並べ替えを行うことで、前記マ
スクされたデータ列を並べ替える
ことを特徴とする暗号化方法。
102−1 第1の経路選択手段
102−2 第2の経路選択手段
102−3 第3の経路選択手段
103 拡大鍵演算手段
104 非線形変換手段
201、202、907、909、910、921、923、924、930、931、935、3302−0、3302−15、3303−0、3303−15、3701−0、3701−1、3701−2、3701−3、3702−0、3702−1、3702−2、3702−3 XOR演算器
203、204、205、301、302、701、702、908、911、912、914、915、918、922、925、927、929、933、934、1001−1、1001−2、1001−P、1102−1、1102−2、1202−1、1202−2、1202−3、1202−4、1302−1、1302−2、1302−3、1302−4、3501、3502、3602、3603、3705、3706 経路選択回路
311、312、313、314、321、322、323、324、711、712、713、714、715、716、721、722、723、724、725、726、1101、1201、1301−1、1301−2、1301−3、1301−4 切替回路
901 乱数発生器
902、903、904、905 分割回路
906 結合回路
913、926、3305−0、3305−15 Sbox回路
916、919、928、932 ShiftRow回路
917、920 MixColumn回路
1501、1601 拡大鍵生成
1502、1602 ラウンド処理
1611 RoundKey
1612 Subbyte
1613 ShiftRow
1614 MixColumn
1801−1、1801−2、1801−16、S、S0 、S1 、S2 、S3 、S’0 、S’1 、S’2 、S’3 、S’q-1 、w0 、w1 、wu-1 、wj Sbox
2001−1、2001−4
3101 スマートカード
3102 抵抗
3103 オシロスコープ
3201 電磁波プローブ
3301−0、3301−15、3306−0、3306−15、3621−1、3621−2、3621−3、3621−4、3622−1、3622−2、3622−3、3622−4、3703−0、3703−1、3703−2、3703−3 セレクタ
3304−0、3304−15 デマルチプレクサ
3601、3704 選択信号生成回路
3611、3712 乱数デコーダ
3612、3711 インバータ回路
Claims (5)
- 共通鍵暗号の暗号処理を行う暗号化装置であって、
乱数を発生する乱数発生手段と、
前記乱数の値に応じて、拡大鍵をマスクするための複数の拡大鍵マスク値からなるデータ列をランダムに並べ替えて出力する第1の経路選択手段と、
前記第1の経路選択手段から出力される複数の拡大鍵マスク値と、前記拡大鍵を表すデータ列と、入力データ列との排他的論理和を生成する拡大鍵演算手段と、
前記乱数の値に応じて前記第1の経路選択手段とは逆の並べ替えを行うことで、前記排他的論理和のデータ列を並べ替えて出力する第2の経路選択手段と、
前記第2の経路選択手段から出力されるデータ列の非線形変換を行って、複数の非線形変換マスク値によりマスクされたデータ列を出力する非線形変換手段と、
前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、前記非線形変換手段から出力されるデータ列を並べ替えて出力する第3の経路選択手段と
を備えることを特徴とする暗号化装置。 - 前記非線形変換手段から出力されるデータ列は、前記第2の経路選択手段から出力されるデータ列と前記複数の拡大鍵マスク値の排他的論理和をマスクなし非線形変換テーブルにより変換した結果と、前記複数の非線形変換マスク値との排他的論理和を表すことを特徴とする請求項1記載の暗号化装置。
- 前記第1の経路選択手段、第2の経路選択手段、および第3の経路選択手段の各々は複数の切替手段を含み、各切替手段は、第1および第2の入力部と第1および第2の出力部を有し、前記乱数の値に応じて、該第1の入力部に入力されたデータを該第1の出力部から出力し、該第2の入力部に入力されたデータを該第2の出力部から出力する第1の切替動作と、該第1の入力部に入力されたデータを該第2の出力部から出力し、該第2の入力部に入力されたデータを該第1の出力部から出力する第2の切替動作の一方を行うことを特徴とする請求項1または2記載の暗号化装置。
- 前記乱数の値に応じて前記第1の経路選択手段と同じ並べ替えを行うことで、平文をマスクするための複数の平文マスク値からなるデータ列を並べ替えて出力する第4の経路選択手段と、
前記第4の経路選択手段から出力される複数の平文マスク値と、前記平文を表すデータ列との排他的論理和を生成し、前記入力データ列として前記拡大鍵演算手段に出力する平文演算手段と、
前記第3の経路選択手段から出力されるデータ列に対して、シフトロウ処理およびミクスコラム処理を行う第1の処理手段と、
前記第1の処理手段の処理結果と、該第1の処理手段の処理結果に対するマスクを解除するためのデータ列と、複数の新たなマスク値との排他的論理和を生成するマスク演算手段とをさらに備え、
前記非線形変換手段から出力されるデータ列は、前記第2の経路選択手段から出力されるデータ列と前記複数の拡大鍵マスク値と前記複数の平文マスク値の排他的論理和をマスクなし非線形変換テーブルにより変換した結果と、前記複数の非線形変換マスク値との排他的論理和を表し、前記マスク演算手段から出力される排他的論理和のデータ列が前記入力データ列として前記拡大鍵演算手段にフィードバックされ、0番目からN−2番目までのN−1個の拡大鍵のそれぞれについて、前記第1の経路選択手段、拡大鍵演算手段、第2の経路選択手段、非線形変換手段、第3の経路選択手段、第1の処理手段、およびマスク演算手段によるループ処理が繰り返されることを特徴とする請求項1記載の暗号化装置。 - 共通鍵暗号の暗号処理を行う暗号化装置によって実行される暗号化方法であって、
乱数発生手段が、乱数を発生し、
第1の経路選択手段が、前記乱数の値に応じて、拡大鍵をマスクするための複数の拡大鍵マスク値からなるデータ列をランダムに並べ替え、
拡大鍵演算手段が、並べ替えられた複数の拡大鍵マスク値と、前記拡大鍵を表すデータ列と、入力データ列との排他的論理和を生成し、
第2の経路選択手段が、前記乱数の値に応じて前記複数の拡大鍵マスク値とは逆の並べ替えを行うことで、前記排他的論理和のデータ列を並べ替え、
非線形変換手段が、並べ替えられたデータ列の非線形変換を行って、複数の非線形変換マスク値によりマスクされたデータ列を生成し、
第3の経路選択手段が、前記乱数の値に応じて前記複数の拡大鍵マスク値と同じ並べ替えを行うことで、前記マスクされたデータ列を並べ替える
ことを特徴とする暗号化方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006310716A JP4909018B2 (ja) | 2006-11-16 | 2006-11-16 | 共通鍵暗号のための暗号化装置 |
EP07120575.1A EP1924023A3 (en) | 2006-11-16 | 2007-11-13 | Encrypting apparatus for symmetric key cipher |
US11/941,663 US8218762B2 (en) | 2006-11-16 | 2007-11-16 | Encrypting apparatus for common key cipher |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006310716A JP4909018B2 (ja) | 2006-11-16 | 2006-11-16 | 共通鍵暗号のための暗号化装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008131108A JP2008131108A (ja) | 2008-06-05 |
JP4909018B2 true JP4909018B2 (ja) | 2012-04-04 |
Family
ID=39135170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006310716A Expired - Fee Related JP4909018B2 (ja) | 2006-11-16 | 2006-11-16 | 共通鍵暗号のための暗号化装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8218762B2 (ja) |
EP (1) | EP1924023A3 (ja) |
JP (1) | JP4909018B2 (ja) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090245510A1 (en) * | 2008-03-25 | 2009-10-01 | Mathieu Ciet | Block cipher with security intrinsic aspects |
JP4687775B2 (ja) * | 2008-11-20 | 2011-05-25 | ソニー株式会社 | 暗号処理装置 |
JP5202350B2 (ja) * | 2009-01-16 | 2013-06-05 | 三菱電機株式会社 | 暗号処理装置及び暗号処理方法及び暗号処理プログラム |
JP5688528B2 (ja) * | 2009-03-10 | 2015-03-25 | イルデト・ベー・フェー | 入力に依存する符号化を用いたホワイトボックス暗号システム |
JP5060570B2 (ja) * | 2010-02-23 | 2012-10-31 | 株式会社東芝 | 暗号化装置および復号装置 |
US8707053B2 (en) * | 2011-02-09 | 2014-04-22 | Apple Inc. | Performing boolean logic operations using arithmetic operations by code obfuscation |
WO2012131926A1 (ja) * | 2011-03-29 | 2012-10-04 | 富士通株式会社 | 暗号処理装置、認証方法およびプログラム |
JP5481455B2 (ja) * | 2011-09-27 | 2014-04-23 | 株式会社東芝 | 暗号処理装置 |
FR2995111B1 (fr) * | 2012-09-04 | 2015-07-24 | Morpho | Protection contre canaux auxiliaires |
CN103684748B (zh) * | 2012-09-26 | 2017-02-08 | 上海复旦微电子集团股份有限公司 | 对称式加解密方法、对称式加解密系统 |
JP6089668B2 (ja) * | 2012-12-13 | 2017-03-08 | 日本電気株式会社 | 暗号化処理回路及び復号処理回路とその方法並びにそのプログラム |
US9118441B2 (en) | 2013-01-25 | 2015-08-25 | Freescale Semiconductor, Inc. | Layout-optimized random mask distribution system and method |
CN104601321B (zh) * | 2013-10-31 | 2017-09-29 | 上海复旦微电子集团股份有限公司 | 密钥扩展方法和装置 |
US20150222421A1 (en) * | 2014-02-03 | 2015-08-06 | Qualcomm Incorporated | Countermeasures against side-channel attacks on cryptographic algorithms |
US9425961B2 (en) * | 2014-03-24 | 2016-08-23 | Stmicroelectronics S.R.L. | Method for performing an encryption of an AES type, and corresponding system and computer program product |
US9654111B1 (en) * | 2014-11-12 | 2017-05-16 | Maxim Integrated Products, Inc. | Systems and methods for protecting data using reconfigurable logic paths |
US10210350B2 (en) * | 2015-08-10 | 2019-02-19 | Samsung Electronics Co., Ltd. | Electronic device against side channel attacks |
US10027640B2 (en) * | 2015-09-22 | 2018-07-17 | Qualcomm Incorporated | Secure data re-encryption |
JP6187624B1 (ja) * | 2016-03-17 | 2017-08-30 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
JP6222285B1 (ja) * | 2016-06-01 | 2017-11-01 | 富士電機株式会社 | データ処理装置、データ処理方法及びプログラム |
WO2018002939A1 (en) * | 2016-06-29 | 2018-01-04 | Bar-Ilan University | Pseudo-asynchronous digital circuit design |
US10521530B2 (en) | 2016-07-28 | 2019-12-31 | Bar-Ilan University | Data-dependent delay circuits |
CN106788974B (zh) * | 2016-12-22 | 2020-04-28 | 深圳国微技术有限公司 | 掩码s盒、分组密钥计算单元、装置及对应的构造方法 |
US11218291B2 (en) * | 2018-02-26 | 2022-01-04 | Stmicroelectronics (Rousset) Sas | Method and circuit for performing a substitution operation |
WO2019167050A1 (en) | 2018-02-28 | 2019-09-06 | Bar-Ilan University | Information redistribution to reduce side channel leakage |
JP7383985B2 (ja) * | 2019-10-30 | 2023-11-21 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
US11936787B2 (en) | 2019-12-10 | 2024-03-19 | Winkk, Inc. | User identification proofing using a combination of user responses to system turing tests using biometric methods |
US11928193B2 (en) | 2019-12-10 | 2024-03-12 | Winkk, Inc. | Multi-factor authentication using behavior and machine learning |
US11574045B2 (en) | 2019-12-10 | 2023-02-07 | Winkk, Inc. | Automated ID proofing using a random multitude of real-time behavioral biometric samplings |
US11553337B2 (en) | 2019-12-10 | 2023-01-10 | Winkk, Inc. | Method and apparatus for encryption key exchange with enhanced security through opti-encryption channel |
US11328042B2 (en) | 2019-12-10 | 2022-05-10 | Winkk, Inc. | Automated transparent login without saved credentials or passwords |
US11843943B2 (en) | 2021-06-04 | 2023-12-12 | Winkk, Inc. | Dynamic key exchange for moving target |
US11824999B2 (en) * | 2021-08-13 | 2023-11-21 | Winkk, Inc. | Chosen-plaintext secure cryptosystem and authentication |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3600454B2 (ja) * | 1998-08-20 | 2004-12-15 | 株式会社東芝 | 暗号化・復号装置、暗号化・復号方法、およびそのプログラム記憶媒体 |
US6295606B1 (en) * | 1999-07-26 | 2001-09-25 | Motorola, Inc. | Method and apparatus for preventing information leakage attacks on a microelectronic assembly |
JP3942073B2 (ja) * | 2000-07-13 | 2007-07-11 | 富士通株式会社 | 拡大鍵生成装置、拡大鍵生成プログラムおよび記録媒体 |
US6956951B2 (en) * | 2000-07-13 | 2005-10-18 | Fujitsu Limited | Extended key preparing apparatus, extended key preparing method, recording medium and computer program |
JP4596686B2 (ja) | 2001-06-13 | 2010-12-08 | 富士通株式会社 | Dpaに対して安全な暗号化 |
WO2003101020A1 (en) * | 2002-05-23 | 2003-12-04 | Atmel Corporation | Advanced encryption standard (aes) hardware cryptographic engine |
AU2003274687A1 (en) * | 2003-09-05 | 2005-03-29 | Telecom Italia S.P.A. | Secret-key-controlled reversible circuit and corresponding method of data processing |
JP2005134477A (ja) * | 2003-10-28 | 2005-05-26 | Sony Corp | 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム |
EP1724961B1 (en) * | 2005-05-10 | 2007-09-26 | Research In Motion Limited | Key Masking for Cryptographic Processes using a Combination of Random Mask Values |
JP4783104B2 (ja) * | 2005-09-29 | 2011-09-28 | 株式会社東芝 | 暗号化/復号装置 |
JP2007189659A (ja) * | 2005-12-15 | 2007-07-26 | Toshiba Corp | 暗号化装置、暗号化方法及び暗号化プログラム |
JP4614135B2 (ja) * | 2006-01-16 | 2011-01-19 | 株式会社石垣 | ポンプゲート |
-
2006
- 2006-11-16 JP JP2006310716A patent/JP4909018B2/ja not_active Expired - Fee Related
-
2007
- 2007-11-13 EP EP07120575.1A patent/EP1924023A3/en not_active Withdrawn
- 2007-11-16 US US11/941,663 patent/US8218762B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8218762B2 (en) | 2012-07-10 |
EP1924023A3 (en) | 2014-12-17 |
JP2008131108A (ja) | 2008-06-05 |
EP1924023A2 (en) | 2008-05-21 |
US20090003598A1 (en) | 2009-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4909018B2 (ja) | 共通鍵暗号のための暗号化装置 | |
JP5229315B2 (ja) | 共通鍵暗号機能を搭載した暗号化装置及び組込装置 | |
JP4596686B2 (ja) | Dpaに対して安全な暗号化 | |
EP1820295B1 (en) | Substitution boxes | |
Moradi et al. | Pushing the limits: A very compact and a threshold implementation of AES | |
US7567668B2 (en) | Calculating unit and method for performing an arithmetic operation with encrypted operands | |
Schneider et al. | Arithmetic Addition over Boolean Masking: Towards First-and Second-Order Resistance in Hardware | |
JP5364840B2 (ja) | 暗号化装置 | |
KR100800468B1 (ko) | 저전력 고속 동작을 위한 하드웨어 암호화/복호화 장치 및그 방법 | |
Abdulgadir et al. | Side-channel resistant implementations of three finalists of the nist lightweight cryptography standardization process: Elephant, tinyjambu, and xoodyak | |
Rao et al. | FPGA implementation of combined AES-128 | |
JP2008151829A (ja) | 暗号演算装置 | |
Ha et al. | Differential power analysis on block cipher ARIA | |
Golić | DeKaRT: A new paradigm for key-dependent reversible circuits | |
Saqib et al. | A compact and efficient FPGA implementation of the DES algorithm | |
Yli-Mäyry et al. | Chosen-input side-channel analysis on unrolled light-weight cryptographic hardware | |
Yang et al. | A new block cipher based on chaotic map and group theory | |
JP5500277B2 (ja) | 共通鍵暗号機能を搭載した暗号化装置及び組込装置 | |
JPWO2008117804A1 (ja) | ストリーム暗号向け擬似乱数生成装置とプログラムと方法 | |
Kang et al. | Secure hardware implementation of ARIA based on adaptive random masking technique | |
Wang et al. | Improved method to increase AES system speed | |
Sudhakar et al. | Improving Security Using Modified S-Box for AES Cryptographic Primitives | |
Zhao | Secure and Efficient Masking of Lightweight Ciphers in Software and Hardware | |
AU2007100156A4 (en) | Substitution Boxes | |
Anashin et al. | Security and Implementation Properties of ABC v. 2 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090810 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110928 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111004 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20111125 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20111128 |
|
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: 20120110 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150120 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |