JP2011521292A - 暗号システム - Google Patents

暗号システム Download PDF

Info

Publication number
JP2011521292A
JP2011521292A JP2011510070A JP2011510070A JP2011521292A JP 2011521292 A JP2011521292 A JP 2011521292A JP 2011510070 A JP2011510070 A JP 2011510070A JP 2011510070 A JP2011510070 A JP 2011510070A JP 2011521292 A JP2011521292 A JP 2011521292A
Authority
JP
Japan
Prior art keywords
plaintext
value
error
word
plaintext word
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
JP2011510070A
Other languages
English (en)
Other versions
JP5539331B2 (ja
Inventor
ヴィルヘルムス・ペー・アー・イェー・ミヒールス
パウルス・エム・ハー・エム・アー・ゴリッセン
ヘンドリク・デー・エル・ホールマン
ルードヴィクス・エム・ヘー・エム・トルハイゼン
Original Assignee
イルデト・コーポレート・ビー・ヴイ
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 イルデト・コーポレート・ビー・ヴイ filed Critical イルデト・コーポレート・ビー・ヴイ
Publication of JP2011521292A publication Critical patent/JP2011521292A/ja
Application granted granted Critical
Publication of JP5539331B2 publication Critical patent/JP5539331B2/ja
Expired - Fee Related 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/304Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy based on error correction codes, e.g. McEliece
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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/12Details relating to cryptographic hardware or logic circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)

Abstract

複数の平文ワードを暗号化するための暗号化システムを作成する方法が提供される。本方法は、各平文ワード(202)を、誤りベクトルの誤り位置(212)の各集合(207)に関連付ける段階(104)と、少なくとも1つの平文ワード(202)の各値を、各誤りベクトル値に関連付ける段階(106)とを有する。平文ワード(202)のうちの1つに関連付けられた誤り位置の集合(207)外の各誤りベクトル値の位置はゼロである。本方法は、平文ワード(202)の各値を、誤り訂正符号に従って、各誤りベクトルの各シンドローム(218)の各表現に関連付ける段階(108)をさらに有する。

Description

本発明は暗号法に関する。本発明はまた、暗号化または復号化システムを作成する方法に関する。本発明はまた、暗号化および復号化を行うためのシステムおよび方法に関する。
公開鍵暗号(非対称暗号とも呼ばれる)は、1つは暗号化用で、もう1つは復号用の2つの異なる鍵を有する暗号である。暗号化鍵は公開されるので、誰でもそれを使用することができるが、復号鍵は秘密に保たれる。既知の公開鍵暗号はほんのわずかである。既知の公開鍵暗号としては、RSA、楕円曲線、McEliece、およびHFE(Hidden Field Equations)がある。対称暗号と比較すると、公開鍵暗号は、例えば、計算能力、ハードウェアのコスト、および/または計算時間の点で比較的コストがかかる。このため、現在の公開鍵暗号は、センサなど、安価でリソースの限られたデバイスを用いる用途に対して有用ではない。
Niederreiterは、線形の誤り訂正符号に基づいたMcEliece暗号化スキームの変形を提示した。Niederreiterの暗号化スキームでは、平文メッセージは、誤りベクトルとして解釈され、暗号文メッセージは、誤りベクトルのシンドロームに基づいている。したがって、使用される特定の誤り訂正符号に従って、暗号化は、誤りベクトルのシンドロームの計算を含み、復号化は、シンドロームから誤りベクトルを計算することを含むこととなる。誤り訂正符号に関連する性質のため、誤りベクトルは、限られた数の1だけを有することができる。したがって、任意の数の1を有することのある平文メッセージは、まず、限られた数の1を有する誤りベクトルへと変換される。この変換ステップは、かなりの量の計算時間を必要とする可能性がある。
Henk C. A. van Tilborg(編)、「Encyclopedia of Cryptography and Security」、Springer 2005、ISBN 978-0-387-23473-1
暗号化システムまたは復号化システムを作成する改良された方法の実現は有益となろう。この問題によりよく対処するために、本発明の第1の態様では、各平文ワードを、誤りベクトルの誤り位置の各集合に関連付ける段階と、平文ワードの少なくとも1つの各値を、平文ワードの1つに関連付けられた誤り位置の集合外の位置では同一の値を有する各誤りベクトルに関連付ける段階とを有する方法が提示される。
これらの関連付けにより、効率的な暗号化または復号化が可能になる。各平文ワードは誤り位置の各集合に関連付けられ、また平文ワード取り得る各値に関連付けられた誤りベクトルは、各集合における位置外では同一の値を有するので、位置に関連する1つまたは複数の平文ワードを検討するだけで、誤りベクトルの位置の値を確定することが可能になる。換言すれば、特定の平文ワードに関連しない誤りベクトルの位置の値を確定するためには、この特定の平文ワードの値を考慮する必要がない。これは、前処理段階の複雑さを低減する。さらに、復号器では、その関連付けは、誤りベクトルから平文ワードをより効率的に取得するために使用することができる。本発明のこの態様は、平文から誤りベクトルに関係する量へと効率的に変換することを可能にするが、それは、そのような変換が、個々の平文ワードを評価すること、およびこれらの個々の平文ワードから得られた誤りベクトルを比較的効率のよい方法で結合することにより実施できるからである。
各平文ワードは、例えば、平文ブロック中の一連のワードなど、一連のワードに対応することができる。平文ブロック中の平文ワードの連続的な位置と、それに関連する誤り位置の各集合との間に固定された、または所定の関係が存在する可能性がある。平文ワードの各値は、このような平文ワードが取り得る各値、例えば、平文ワードのビットで構成することのできるある範囲の値である。平文ワードの様々な値は、各平文ワードに関連する位置における誤りベクトルの値を変化させることにより、様々な誤りベクトルに関連付けられる。誤り位置の集合外の誤りベクトルの位置は、平文ワードに関連するすべての誤りベクトルに対して固定された値に保持することができる。原理的には、このような固定値は、誤り位置の集合外の異なる位置に対して異なることができる。例示的な実施形態では、誤りベクトルの値は、誤り位置の関連する集合外でゼロである。
実施形態では、平文ワードの各値は、誤り訂正符号に従って、各誤りベクトルの各シンドロームの各表現に関連付けられる。平文ワードとシンドロームの表現との間のこの直接的な関連付けにより、非常に効率的な暗号化システムが作成されるが、それは、誤りベクトルそれ自体を計算する必要がなくなるからである。
実施形態では、平文ワードの各値に関連付けられた各表現は、平文ワードの各値が広がる線形空間の次元と少なくとも同様の大きさ、または好ましくは、それより大きい次元を有する線形空間に広がる。こうすることにより、ホワイトボックス(white-box)暗号法など、特定の用途において、得られた暗号システムを攻撃することがより困難になる。
実施形態では、誤り位置の各集合は互いに分離されている。このように、誤りベクトル位置の値を確定するためには、単一の平文ワードだけを検討する必要があるに過ぎない。こうすることにより、効率的な暗号化システムおよび/または復号化システムを提供することが可能になる。
確立された様々な関連付けは、1つまたは複数の参照用テーブルにより暗号化システムに提供することができ、それにより、暗号化は、複数の参照演算を実施すること、および参照演算の結果を結合することによって行われる。
本発明の他の態様は、複数の平文ワードを暗号化するためのシステムを提供し、システムは、各平文ワードに対応する複数の各参照テーブルであって、平文ワードに対応する参照テーブルが、その平文ワードの各値を各誤りベクトルに基づいて各シンドロームの各表現に関連付けるように構成され、また各誤りベクトルが、平文ワードに関連付けられた集合の誤り位置の外側でゼロである、参照テーブルと、各平文ワードの各値に関連付けられた表現を、暗号文ブロックへと結合するための暗号文生成器とを備える。
暗号化のためのこのシステムは、参照テーブルにより記憶された関連付けを用いて平文を適切な暗号文に変換するので比較的効率がよい。
本発明の他の諸態様は独立請求項で定義される。従属請求項は、有利な諸実施形態を定義する。
本発明のこれらの、および他の諸態様は、図面を参照してさらに明確化され、かつ記述されることになる。
暗号システムを作成する方法の処理ステップを示す図である。 暗号化および復号化を行うために使用されるいくつかの関連付けを示す図である。 データを暗号化するためのシステムを示す図である。 ハードウェアアーキテクチャを示す図である。
以下では、Niederreiterの暗号化スキームに基づいた諸実施形態について説明する。しかし、これは限定を意図しない。Niederreiterの暗号化スキームの変形形態を、他の暗号化スキームと同様に使用することもできる。暗号化する部分は、使用されるリソースおよび計算時間に関して効率的になる。さらに、復号化を比較的簡単な方法で実施することができる。
Niederreiterは、線形の誤り訂正符号に基づいたMcEliece暗号化スキームの変形を提示した。Niederreiterの暗号化スキームの背景にある考えは、平文メッセージを、誤りベクトルとして解釈することである。暗号文は、この誤りベクトルに関連付けられたシンドロームに基づく。より正確には、eが、平文メッセージに対応する誤りベクトルである場合、暗号化は、ある行列H*に対する行列乗算H*eにより実施することができる。ここで、行列H*は、H*=SHQにより与えられ、式中、Sは、ランダムに選択された可逆行列であり、Hは、考慮中の線形符号に対するパリティ検査行列であり、さらにQは、ランダムに選択された順序行列である。復号は、SおよびQの逆を行うこと、ならびに誤り訂正符号の復号プロセスを実施すること、すなわち、そのシンドロームHから誤りeを導出することを含む。符号が、t-誤り訂正である場合、この手順は、誤りベクトルeのハミング重み(すなわち、eにおける1の数)が、最大でtである場合に動作することをだけを保証する。したがって、暗号化スキームは、任意の平文メッセージが、最大でtのハミング重みを有する誤りベクトルにマップされる前処理ステップを用いて拡張することができる。Niederreiterの暗号化スキームはこのマッピングを指定しない。例えば、積符号を使用する場合、tを超える誤りを有する誤りベクトルを使用することが可能になりうる。しかし、このような場合には、そのシンドロームに基づいて再構成が可能な誤りベクトルだけが使用されることを確認する必要があるだろう。
Henk C. A. van Tilborg(編)、「Encyclopedia of Cryptography and Security」(非特許文献1)では、「Niederreiter encryption scheme」と題するセクションにおいて、重みtのワードと、区間
Figure 2011521292
における整数を有する長さnとの間に1対1の対応が存在することに言及している。この対応を正確に計算することは、比較的コストがかかる(ブロック長nの2次式)。ブロック長nに比例するコストを有する近似解も存在する。
図1は、暗号化システム、すなわち、暗号化装置を作成するプロセスの実施形態を示す。このような暗号化システムは、ハードウェアコンポーネント、例えば、暗号処理を実施できる電子回路を備えたチップを備えることができる。暗号化システムはまた、部分的に、または完全に、ソフトウェアで実現することもできる。プロセスは、暗号化装置をより効率的にするのを助ける。さらに、本明細書に開示されたプロセスは、暗号化システムを作成する効率的な方法を提供する。また、プロセスは、図2を参照して以下で説明される。図2は、複数の平文ワード206、誤りベクトル210、および複数のシンドローム値220、ならびに平文ワードと誤りベクトルの位置との間の関連付け(207)、および誤りベクトル値とシンドロームとの間の関連付け(214)を図式的に示している。
プロセスは、完結した暗号化システムを作成することができる。しかし、それはまた、既存のパラメータ化された暗号化システムと共に使用できる1組のパラメータを単に生成することも可能である。このようなパラメータは、暗号化システムで適用される暗号の鍵を、またはこのような鍵から導出される値を含むことができ、それらは、暗号化プロセスの処理ステップを実行するために、暗号化システムで使用される。
ステップ102では、誤り訂正符号を確立する。例えば、既知のBCH符号、または既知の積符号などの線形符号を含むこのような誤り訂正符号は、元々、送信チャネルを介して送信されたデータ中の誤りを訂正するために開発された。通常、誤り訂正符号は、誤りを含む可能性のある受信したデータブロックから、シンドロームと呼ばれるベクトルを導出することを可能にする。通常、生じた誤りとシンドロームとの間には、1対1の関係が存在する。当技術分野における既知の誤り訂正スキームを、シンドロームに基づく誤り発見に適用できる。しかしながら、誤り訂正符号のパラメータ(例えば、パリティ検査行列など)の知識なしに、シンドロームに基づいてこれらの誤りを見出すことは簡単なことではない。この性質のために、誤りベクトルのシンドロームの形でデータを暗号化することが可能である。平文から誤りベクトルへの変換をパラメータ化することができ、これらのパラメータは、暗号鍵の一部を形成することができる。
ステップ104では、各平文ワード202、204が、誤りベクトルの誤り位置の各集合に関連付けられる。各平文ワードは、例えば、暗号化すべき平文ブロックに含まれたいくつかのワードである。例えば、平文ブロックは、複数の平文ワード206を含む。これらの平文ワードは、連続して配置することができる。複数の平文ワード206における各平文ワード202、204は、そのシーケンス中のそれらの位置に従って、誤り位置の各集合に関連付けることができる。図2では、平文ワード202が、誤り位置の集合207に関連付けられ、それは、その集合に含まれる誤りベクトル210の位置を指す破線の矢印により図で示されている。例えば、平文ワード202は、矢印207で示された位置に関連付けられる。例えば、矢印208は、誤りベクトル210の位置212を指している。これらの位置は、ランダムに選択することができる。しかし、2つの平文ワード202、204が、同一の誤り位置212に関連付けられないことが好ましい。したがって、誤り位置の集合は分離されていることが好ましい。こうすることにより、暗号化および/または復号化プロセスが単純化される。
ステップ106で、例えば、平文ワード202などの平文ワードの各値が、各誤りベクトル値に関連付けられる。平文ワード202に関連付けられた誤り位置の集合207外の各誤りベクトル値の位置はゼロである。平文ワード値と誤りベクトル値との間の1対1のマッピングは、関連付けによりこのステップで確立されることが好ましい。例えば、集合に含まれる誤り位置の数は、平文ワード202の取り得る値の数よりも少なくとも1つ少ない。この場合、1つの平文ワード値をゼロの誤り値に関連付けることができ、また他の平文ワード値を、集合207に含まれる1つの位置212を除き、すべての位置でゼロを含む一意に定まる誤りベクトル値にマップすることができる。したがって、様々な平文ワード値が、集合207に含まれる様々な位置で1にマップされる。しかしながら、他の構成も可能である。例えば、集合207に含まれる最大で2つの位置で1に設定できるようにすることも可能である。非2進符号の場合、誤り位置は、平文ワード値に応じて0および1とは異なる値を取ることもできる。
代替実施形態では、ステップ106で、誤り位置の集合207外の各誤りベクトル値は、すべてがゼロに設定されることはない。例えば、誤り位置の集合207外の各誤りベクトル位置が、単一の値に割り当てられる。集合207外の誤りベクトル位置は、特定の平文ワードが取る可能性のあるすべての平文ワード値に対してこの値を得ることができる。例えば、集合207外のすべての位置が1に設定される。代替的には、集合207外のいくつかの位置が1に設定され、集合207外の他の位置が0に設定されうる。
ステップ106は、複数のワードにおける平文ワードのそれぞれに対して繰り返すことができる。各平文ワード202、204に対して、誤りベクトル位置212の各集合207が使用される。その関連付けは、暗号の安全性を高めるためにランダムに選択することができる。代替的には、所定のスキームを、関連付けに対して使用することもできる。
このプロセスにより、現在、平文ブロック206の値の、誤りベクトル210の値へのマッピングが得られた。暗号化システムは、複数の平文ワード値を含む具体的な平文ブロックを処理する場合、各平文ワードに関連付けられた誤りベクトル値を見出し、かつこれらの誤りベクトル値を、完全な平文ブロックを表す単一の誤りベクトル値を得るために足し合わせることができる。平文ワードは、様々な誤りベクトル位置に関連付けられているので、誤りベクトルを足し合わせても情報は何も失われない。加算を使用することに代えて、各平文ワードに関連付けられた誤りベクトル値が、結合された単一の誤りベクトルから復元できるという制約の下に、誤りベクトルを単一の誤りベクトルに結合する他の方法を使用することもできる。2進の誤りベクトルの場合、加算は、モジュロ2になるはずであり、それは、効率的なXOR演算に相当する。
プロセスは、ステップ108で、誤り訂正符号に従って、平文ワード202の各値を、各誤りベクトルの各シンドローム218に関連付けるステップを含むことができる。より具体的には、各値は、各シンドロームの各表現に関連付けられる。誤りベクトルのシンドロームは、使用される符号から得られる。
このステップは、ランダムな線形の可逆演算子を選択するステップを含むことができる。このランダムな線形演算子は、シンドロームに適用されて、シンドロームの表現を得ることができる。このようなランダムな線形の可逆演算子は、暗号の安全性をさらに向上させる。同一の演算子を、すべての平文ワードのすべてのシンドロームに適用することが好ましい。こうすることにより、暗号化されたメッセージに対応するシンドロームを得るために、受け取った暗号文に対して、復号器が逆演算子を適用することを可能にする。
暗号化システムは、誤りベクトルの計算および/または加算ではなく、シンドロームを見出すために関連付けを使用し、シンドロームを加算し、加算されたシンドロームを取得し、かつランダムな可逆の線形演算子を、加算されたシンドロームに適用することができる。これは、誤りベクトルを明示的に確立する必要性を回避し、それにより、誤りベクトルを記憶するために必要な記憶空間の量が低減される。暗号化システムは、(例えば、線形の可逆演算子を適用させた後に)、シンドロームの関連付けられた表現と平文ワードとの直接的な関連付けを備えることが好ましい。このように、線形の可逆演算子は、暗号化システム中で適用される必要がなく、それにより、計算の複雑さが減少される。さらに、鍵データのサイズも低減される。シンドロームを加えることに代えて、またはそれに加えて、シンドロームを結合する他の方法もまた企図されうる。
例えば、ステップ110で、暗号化システムは、平文ワードの様々な値に関連付けられたシンドロームの表現を一覧にする参照テーブルを備えることができる。例えば、平文ブロックにおける各平文ワードに対して、別個の参照テーブルが提供される。
平文ワードの各値に関連付けられた各表現は、平文ワードの各値が広がる線形空間の次元よりも大きい次元を有する線形空間に広がることが好ましい。例えば、関連付けが、各平文ワードに対して別個の参照テーブルに記憶される場合、このような参照テーブルを、平文ワード値ごとに行を有する2進行列として見るとき、行列の階数は、平文ワードのビットサイズよりも大きいことが好ましい。平文ワードの各値に関連付けられた各表現は、その表現の次元に等しい階数、または近い階数など、高い階数を有する線形空間に広がることが好ましい。このような高い階数は、例えば、実験的試行により実現することができる。
誤り位置の各集合は、相互に分離されることが好ましい。このように、誤りベクトルの個々の位置は、単一の平文ワードに基づいており、それにより、誤りベクトルおよびシンドロームの決定がより効率化される。
様々な平文ワード値に対して、様々な誤りベクトル位置を予約することが可能である。このような場合、各平文ワード値に関連付けられた各誤りベクトルは、最大で1つの非ゼロの位置212を有する。こうすると、誤りベクトルの非ゼロの位置が十分に平文ワードの値を決定するので、復号化システムがより効率的になる。
平文ワードの各値に関連付けられた各誤りベクトル値は、互いに一意のものとすることができる。これは、曖昧さを含むことなく暗号文を復号化できるようにする。
図3は、複数の平文ワード202を暗号化するためのシステムを示している。このようなシステムは、例えば、上記で述べられたプロセスにより提供することができる。システムは、各平文ワードに対応する複数の各参照テーブル304を備えており、平文ワードに対応する参照テーブルは、その平文ワードの各値を、各誤りベクトル値に基づく各シンドロームの各表現に関連付けるように構成され、平文ワードに関連付けられた誤り位置の集合外の各誤りベクトル値の位置はゼロである。システムはさらに、複数の平文ワードに関連付けられた表現を暗号文ブロック308へと結合するための暗号文生成器306を備える。暗号文生成器306は、XORにより、表現304を結合するためのXORユニットを備えることができる。このようなシステムは、後に、より詳細に述べる。例えば、ベクトル加算など、結合する他の方法もまた可能である。
複数の平文ワードを暗号化する方法は、各平文ワード302に対応する複数の各参照テーブル304における各平文ワード302の各値に関連付けられた各シンドロームの各表現を調べるステップを含み、平文ワードに対応する参照テーブルは、その平文ワードの各値を、各誤りベクトル値に基づいて、各シンドロームの各表現に関連付けるように構成され、また各誤りベクトルは、平文ワードに関連付けられた誤り位置の集合外ではゼロである。方法はさらに、複数の平文ワードに関連付けられた表現を暗号文ブロック308へと結合するステップを含む。
暗号文ブロック308を復号化する方法は、線形の誤り訂正符号に従って、暗号文ブロックからシンドロームに対応する誤りベクトルを復元するステップを含む。方法は、参照テーブルにおける誤りベクトルの各非ゼロの位置に対応する各平文ワード値を調べるステップをさらに含む。参照テーブルを用いるこのように比較的簡単な復号化システムは、誤りベクトルの位置が、単一の平文ワードに直接リンクされる場合に可能である。
一実施形態では、各平文ワード202に関連付けられた(208)誤りベクトルの誤り位置212で誤りベクトルの少なくとも1つの値から各平文ワード202の値を調べるための参照テーブルが提供される。
暗号文ブロック308を復号化するためのシステムは、誤り訂正符号に従って、暗号文ブロックからシンドロームに対応する誤りベクトルを復元するための復号器を備える。誤り訂正符号は、線形の誤り訂正符号とすることができる。このような復号器は、既知のBCH符号のための復号アルゴリズムなど、既知の復号アルゴリズムに基づくことができる。システムは、誤りベクトルの各非ゼロのビット位置に対応する各平文ワード値を調べるための参照テーブルをさらに備えることができる。
以下では、平文を誤りベクトルにマップする別の実施形態が開示される。さらに、このマッピングが、暗号化の効率的な実施を実現するために使用される実施形態が開示される。まず、暗号化を実施する実施形態が開示される。その後に、マッピングが、より詳細に開示される。以下では、Cを、例えば、長さがnの固定された2進で線形のt-誤り訂正符号とし、またHを、Cに対するr×nのパリティ検査行列とする、すなわち、Cは、Hc=0であるnビットのワードcからなる。
図3は、先に説明した暗号化のためのシステムを示す。以下では、暗号化のためのシステムのより選択性のある細部を説明する。暗号化は、t個の参照テーブルT0,T1,...,Tt-1の集合体に基づく。N=t・mビットからなる平文ブロックPは、それぞれがmビットのt個のワードP0,P1,...,Pt-1へと分割される。0≦i≦t-1の値iに対して、ワードPiは、テーブルTiにおける行riを示し、また暗号文Cは、t個の行r0,r1,...,rt-1に対し排他的論理和演算を行うことにより得られる。
以下では、参照テーブルを用いて上記の暗号化システムが得られるように、Niederreiter暗号化スキームにおいて、平文から誤りベクトルへのマッピングを確立できるようにするプロセスが開示される。
図3の暗号化システムにおいて、それぞれがmビットのt個のワードP0,P1,...,Pt-1へと分割されるN=t・mビットからなる平文ブロックPの場合、長さn=t・2m-1の誤りベクトルが使用される。V={0,1,...,n}を、誤りベクトルの位置(またはコンポーネント)1,...,nおよび値0の集合とする。
第1に、Vを、それぞれがサイズ2mのt個の分離した集合V0,V1,...,Vt-1に区分することを選択することができる。例えば、その区分は、セキュリティを高めるためにランダムに選択される。
第2に、i=0,...,t-1に対して、viを、mビットのワードからViへのマップとする。マッピングviは、これも安全性の理由でランダムに選択することができる。このように、平文ワードPiは、数vi(Pi)∈Viに対応する。この数vi(Pi)は、誤りベクトルの位置として、またはコンポーネントとして使用される。
これは、1からnに表記された位置またはコンポーネントを有するnビットのベクトルとして、誤りベクトルe(P)を定義することを可能にし、その場合、すべての位置は、位置vi(Pi)、ただし、i=0,...,t-1を除いて、0に設定される。後者の位置は1に設定される。vi(Pi)が0に等しい場合、誤りベクトルに非ゼロのコンポーネントを加えない。このように、e(P)は、ハミング重みtまたはt-1を有する。ハミング重みは、何らかのvi(Pi)が0に等しい場合、t-1である。
誤りベクトルe(P)は、SHQを誤りベクトルe(P)に適用することにより、当技術分野では既知の方法で、Niederreiterスキームに従って暗号化することができるが、Qは、2進の順序行列であり、Sは可逆行列である。しかし、ランダムな区分V0,V1,...,Vt-1およびランダムなマッピングviのために、2進の順序行列Qを除外することができるが、あるいは区分およびマッピングを、Qを吸収するように変更することができる。したがって、e(P)は、行列SHを誤りベクトルe(P)に適用することにより暗号化され、それにより、SHe(P)を計算するが、Sはランダムに選択された線形行列である。
図3の暗号化システムに戻ると、i=0,...,t-1、および任意のmビット値x(ただし、値xはPiの可能な値を表す)に対する参照テーブルTi(x)のエントリは、vi(x)により索引付けられたSHの列で満たされる。換言すれば、SHのvi(x)番目の列は、Ti(x)の値として使用される。vi(x)=0に対して、Ti(x)の値は0に設定される。図3の参照テーブルに対してこれらの値を使用すると、暗号化システムは、所望の暗号文を生成することができる。このように得られた暗号化システムは、その主な演算が、テーブルの参照およびXOR演算であるため非常に効率的である。この実施形態における、任意の平文から誤りベクトルへのマッピングは、n+1の位置のt個の集合へのランダムな区分と、これらの集合のそれぞれの内側の位置のランダムな番号付けに基づいている。
以下では、特定の実施形態が開示される。この特定の実施形態は、ブロックサイズなどに対して特定の数を使用するが、これらの特定の数は、限定的なものではない。平文に対して、128ビットのブロックサイズ、および8ビットのワードサイズが使用される。暗号化は、128/8=16の参照テーブルを使用し、したがって、各ワードに対して1つの参照テーブルが使用される。これらの数は、単に例示的なものであり、ブロック暗号は、他の数でも同様に定義することができる。暗号文のブロックサイズは、平文に対する128ビットよりも大きく、すなわち、192ビットである。したがって、公開鍵暗号は、50%のサイズオーバヘッドを受ける。図3に関する記述で使用される変数に関しては、前述の数は、平文ブロック長M=128、平文ワードサイズm=8、および平文ブロック中の平文ワード数t=16により指定される。
誤りベクトルの長さに相当するコードワード長nは、16・28-1=212-1であるが、それは、8ビットの平文ワードが、誤りベクトルの28-1の位置へと変換される1つの8ビット平文ワード以外は、誤りベクトルの28の位置へと変換されるからである。
誤りベクトルは、t=16ワードのそれぞれに対して1つの誤りを含むことができるので、当技術分野では既知のように、16個の誤りを訂正できる長さ212-1の誤り訂正符号、例えば、長さ212-1のBCH符号が使用される。このBCH符号のパリティ検査行列は、192行を有することが可能であることが当技術分野では既知である。すなわち、シンドロームは、192ビットを含む。したがって、128ビットの平文は、192ビットのシンドロームにマップされ、そのシンドロームが暗号文の基礎となる。
暗号の秘密の部分は、28×24から212への全単射関数を定義するランダムに選択された12ビットのSボックスUを含むことができる。vi(x)の値は、2進数の値U(x,i)により表される{0,1,...,n}からの数により与えられ、またViはすべてのバイトxに対して、数vi(x)を含む。我々は、Niederreiterの暗号化スキームで順序行列QをUが吸収することに気付いた。Uを順序行列であるように制限しないことにより、その実施形態は、安全性を得ることができる。
暗号の秘密の部分はさらに、ランダムに選択された192×192ビットの可逆行列Sを含む。
暗号の秘密の部分はさらに、16-誤り訂正BCH符号により与えられる192×(212-1)ビットのパリティ検査行列Hを含むことができる。例えば、短縮型BCH符号を使用することができる。
展開関数Eを、12ビットの入力xに対して、x>0の場合、位置xで1、その他で0を有する212-1ビットの出力ベクトルを、またx=0の場合はゼロベクトルを返す212から
Figure 2011521292
の関数とする。暗号の公開部分は、テーブルT0,T1,...,T15の集合体を含むことができ、その場合、Tiは8ビットから192ビットの以下の関数を定義する。
Figure 2011521292
平文ブロックP=(P0,P1,...,P15)の暗号文ブロックCは、
Figure 2011521292
により得られる。
この暗号化は、公に利用可能な情報(参照テーブルTi)に基づいて行うことができる。したがって、この実施形態を用いると、暗号化装置で参照テーブルだけを利用できるようにする必要があるに過ぎない。行列SHQを明らかにする必要はない。
復号化は、秘密情報を知っている場合にだけ行うことが可能である。それは次のように働く。まず、S-1が適用される。これは、値
Figure 2011521292
を与える。
BCH復号により、値
Figure 2011521292
が導出される。この値は、Piの1つがU(Pi,i)=0を満足するかどうかに応じて、15個または16個の1を含む。1を含むこの値の各位置に対してU-1が適用される。このことから、平文P0,P1,...,P15を導出することができる。
本明細書で開示された技法は、公開鍵暗号法が望ましいシステムにおいて適用することができるので有利であるが、例えば、リソースの制約のため、RSAなどの計算を多用する解決策の場合には、あまり適していない。
図4は、本明細書で述べたシステムおよび方法を、少なくとも部分的にソフトウェアで実現するのに適した例示的なハードウェアアーキテクチャを示す。ソフトウェアは、メモリ406に記憶することができ、また、ソフトウェアの命令は、プロセッサ402により実行される。入力404およびディスプレイ412を用いて、いくつかのプロセスを開始することができ、またユーザ対話の可能性を提供することができる。鍵データ、参照テーブル値、平文、および/または暗号文は、例えば、通信ポート408および/または取外し可能な媒体410を介して通信することができる。通信ポート408は、例えば、ローカルエリアネットワーク、インターネット、またはテレビジョンネットワークとの接続を提供することができる。このような接続は、有線または無線とすることができる。取外し可能な媒体は、CDもしくはDVD読取り装置および/または書込装置を備えることができる。センサ414は、感知したデータを取得するために提供されうる。センサ414は、例えば、デジタル指紋センサまたは虹彩スキャナを含むことができる。代替的には、センサ414は、X線センサまたは超音波スキャナなどの医療用走査装置を含むこともできる。本明細書で述べた暗号化システムが、メモリ406に記憶されたソフトウェアで実現される場合、システムは、例えば、通信ポート408または取外し可能な媒体410を介して、複数の参照テーブルを受け取ることができる。システムは、センサ414、通信ポート408、または取外し可能な媒体410を介して得られたデータを暗号化することができる。暗号化されたデータは、メモリ406にローカルに記憶することができるが、あるいは通信ポート408または取外し可能な媒体410を介してエクスポートすることができる。ハードウェアアーキテクチャを用いて、暗号化システムをソフトウェアで生成するための方法を実施することも可能である。例えば、メモリ406に記憶されたソフトウェアは、前述の方法で複数の参照テーブルを生成する。このような参照テーブルは、暗号化システム中にハードコード化することができ、または通信ポート408を介して、このような参照テーブルを受け取ることのできる事前にプログラムされた暗号化システムに送信することもできる。
本発明はまた、コンピュータプログラム、特に、本発明を実行するように適合された、担持体上もしくは担持体中のコンピュータプログラムにまで及ぶことが理解されよう。プログラムは、ソースコード、オブジェクトコード、部分的にコンパイルされた形態などのソースコードとオブジェクトコードとの間の中間的なコードの形態、または本発明による方法を実施する場合の使用に適した任意の他の形態とすることができる。このようなプログラムは、多くの様々なアーキテクチャ上の設計を有することができることも理解されよう。例えば、本発明による方法またはシステムの機能を実現するプログラムコードは、1つまたは複数のサブルーチンへと、細分化することができる。これらのサブルーチン中に機能を分配するための多くの様々な方法は、当業者には明らかであろう。サブルーチンは、1つの実行可能なファイルに共に記憶されて、自己完結型のプログラムを形成することができる。このような実行可能なファイルは、コンピュータ実行可能命令、例えば、プロセッサ命令、および/またはインタープリタ命令(例えば、Java(登録商標)インタープリタ命令)を含むことができる。代替的には、1つまたは複数のまたはすべてのサブルーチンを、少なくとも1つの外部ライブラリのファイルに記憶し、かつ静的に、または実行時など動的に、主プログラムとリンクさせることができる。主プログラムは、少なくとも1つのサブルーチンに対する少なくとも1つの呼出しを含む。さらに、サブルーチンは、互いに対する関数呼出しを含むことができる。コンピュータプログラム製品に関する実施形態では、前述の方法の少なくとも1つの処理ステップのそれぞれに対応するコンピュータ実行可能命令を含む。これらの命令は、サブルーチンに細分化することができ、かつ/または静的にもしくは動的にリンクされうる1つまたは複数のファイル中に記憶することができる。コンピュータプログラム製品に関する他の実施形態は、前述のシステムおよび/または製品の少なくとも1つの手段のそれぞれに対応するコンピュータ実行可能命令を含む。これらの命令は、サブルーチンへと細分化することができ、かつ/または静的にもしくは動的にリンクされうる1つまたは複数のファイルに記憶することができる。
コンピュータプログラムの担持体は、プログラムを担持することのできる任意のエンティティまたは装置とすることができる。例えば、担持体は、ROM、例えばCD ROMもしくは半導体ROM、または磁気記録媒体、例えば、フロッピー(登録商標)ディスクもしくはハードディスクなどの記憶媒体を含むことができる。さらに、担持体は、電気的なもしくは光ケーブルを介して搬送できる、または無線もしくは他の手段により搬送できる電気信号もしくは光信号など、送信可能な担持体とすることができる。プログラムがこのような信号で実施されたとき、担持体は、このようなケーブルまたは他の装置もしくは手段により構成されうる。代替的には、担持体は、プログラムが組み込まれた集積回路とすることができ、集積回路は、関連する方法を実施するように、または実施するのに使用されるように適合される。
上記で述べた諸実施形態は本発明を例示したものであって、限定を意図しないこと、また、当業者であれば、添付の特許請求の範囲から逸脱することなく、多くの代替の実施形態を設計できるということに留意されたい。請求項において、カッコの間に置かれた任意の参照記号は、特許請求の範囲を限定するものと解釈されるべきではない。動詞「有する/具備する(comprise)」、およびその活用形を使用することは、特許請求の範囲で述べられたもの以外の要素またはステップの存在を除外するものではない。要素に先行する冠詞「1つの(a または an)」は、複数のこのような要素の存在を除外するものではない。本発明は、いくつかの別個の要素を備えるハードウェアにより、かつ適切にプログラムされたコンピュータにより実現することができる。いくつかの手段を列挙する装置の請求項では、これらの手段のいくつかは、ハードウェアの同一の要素により実施することができる。特定の対策が、単に、相互に異なる従属項に記載されているとしても、これらの対策の組合せを、適切に利用するために使用できないことを示すものではない。
202,204 平文ワード
206 複数の平文ワード(平文ブロック)
207 誤り位置の集合への関連付け
208 誤り位置への関連付け
210 誤りベクトル
212 誤りベクトルの誤り位置(非ゼロの位置)
214,215 シンドロームへの関連付け
216,218 シンドローム
220 複数のシンドローム
302 平文ワード
304 参照テーブル、表現
306 暗号文生成器
308 暗号文ブロック
402 プロセッサ
404 入力
406 メモリ
408 通信ポート
410 取外し可能な媒体
412 ディスプレイ
414 センサ

Claims (14)

  1. 複数の平文ワードを暗号化または復号化するための暗号化または復号化システムを作成する方法であって、
    各平文ワード(202)を、誤りベクトルの誤り位置(212)の各集合(207)に関連付ける段階(104,207)と、
    前記平文ワード(202)のうちの少なくとも1つの各値を、前記平文ワード(202)のうちの1つに関連付けられた誤り位置の前記集合(207)外の位置では同一の値を有する各誤りベクトルに関連付ける段階(106)と
    を有することを特徴とする方法。
  2. 前記平文ワード(202)の前記各値を、誤り訂正符号に従って、前記各誤りベクトルの各シンドローム(218)の各表現に関連付ける段階(108)をさらに有することを特徴とする請求項1に記載の方法。
  3. 平文ワードの前記各値に関連付けられた前記各表現が、前記平文ワードの前記各値が広がる線形空間の次元よりも大きい次元を有する線形空間に広がることを特徴とする請求項1に記載の方法。
  4. 誤り位置の前記各集合が相互に分離されていることを特徴とする請求項1に記載の方法。
  5. 前記各誤りベクトル値が、最大で1つの非ゼロの位置(212)を有することを特徴とする請求項1に記載の方法。
  6. 平文ワードの前記各値に関連付けられた前記各誤りベクトル値が相互に一意性を有することを特徴とする請求項1に記載の方法。
  7. 前記平文ワードの前記各値に関連付けられた前記各表現を指定する参照テーブルを提供する段階(108)をさらに有することを特徴とする請求項1に記載の方法。
  8. 複数の平文ワードを暗号化するための暗号化システムを作成するシステムであって、
    各平文ワード(202)を、誤りベクトルの誤り位置(212)の各集合(207)に関連付けるための手段と、
    前記平文ワード(202)のうちの少なくとも1つの各値を、前記平文ワード(202)のうちの1つに関連付けられた誤り位置の前記集合(207)外の位置では同一の値を有する各誤りベクトルに関連付けるための手段と
    を具備することを特徴とするシステム。
  9. 複数の平文ワード(302)を暗号化するためのシステムであって、
    各平文ワード(302)に対応する複数の各参照テーブル(304)であり、平文ワードに対応する参照テーブルが、当該平文ワードの各値を、各誤りベクトルに基づいて各シンドロームの各表現に関連付けるように構成され、平文ワードの各値に関連付けられた前記各誤りベクトルが、当該平文ワードに関連付けられた誤り位置の集合外の位置では同一の値を有する、参照テーブル(304)と、
    前記各平文ワード(302)の前記各値に関連付けられた前記表現を、暗号文ブロック(308)へと結合するための暗号文生成器(306)と
    を具備することを特徴とするシステム。
  10. 前記暗号文生成器(306)が、XORにより表現を結合するためのXORユニットを具備することを特徴とする請求項9に記載のシステム。
  11. 複数の平文ワード値を暗号化する方法であって、
    各平文ワード(302)に対応する複数の各参照テーブル(304)において、前記各平文ワード(302)の各値に関連付けられた各シンドロームの各表現(304)を調べる段階であって、平文ワードに対応する参照テーブルが、当該平文ワードの各値を、各誤りベクトルに基づいて、各シンドロームの各表現に関連付けるように構成され、かつ平文ワードの各値に関連付けられた前記各誤りベクトルが、前記平文ワードに関連付けられた誤り位置の集合外の位置では同一の値を有する、段階と、
    前記各平文ワード(302)の前記各値に関連付けられた前記表現を、暗号文ブロック(308)へと結合する段階と
    を有することを特徴とする方法。
  12. 暗号文ブロックを復号するためのシステムであって、
    誤り訂正符号に従って、前記暗号文ブロックからシンドロームに対応する誤りベクトル(210)を復元するための復号器と、
    各平文ワード(202)に関連付けられた(208)前記誤りベクトルの誤り位置(212)で前記誤りベクトルの少なくとも1つの値から前記各平文ワード(202)の値を調べるための参照テーブルと
    を具備することを特徴とするシステム。
  13. 暗号文ブロックを復号する方法であって、
    誤り訂正符号に従って、前記暗号文ブロックからシンドロームに対応する誤りベクトル(210)を復元する段階と、
    各平文ワード(202)に関連付けられた(208)前記誤りベクトルの誤り位置(212)で前記誤りベクトルの値から前記各平文ワード(202)の値を調べる段階と
    を有することを特徴とする方法。
  14. プロセッサに、請求項1、11、または13に記載の方法を実施させる機械読み取り可能な命令からなるコンピュータプログラム。
JP2011510070A 2008-05-20 2009-05-12 暗号システム Expired - Fee Related JP5539331B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP08156522.8 2008-05-20
EP08156522 2008-05-20
PCT/IB2009/051944 WO2009141756A2 (en) 2008-05-20 2009-05-12 Cryptographic system

Publications (2)

Publication Number Publication Date
JP2011521292A true JP2011521292A (ja) 2011-07-21
JP5539331B2 JP5539331B2 (ja) 2014-07-02

Family

ID=41119662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011510070A Expired - Fee Related JP5539331B2 (ja) 2008-05-20 2009-05-12 暗号システム

Country Status (7)

Country Link
US (1) US8724802B2 (ja)
EP (1) EP2294752A2 (ja)
JP (1) JP5539331B2 (ja)
KR (1) KR101582806B1 (ja)
CN (1) CN102187617B (ja)
CA (1) CA2736910C (ja)
WO (1) WO2009141756A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022520675A (ja) * 2018-12-21 2022-04-01 01 コミュニーク ラボラトリー インコーポレイテッド 暗号システムおよび方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2469393C (en) * 2010-04-22 2014-08-06 Cen Jung Tjhai Public encryption system using deliberatily corrupted codewords from an error correcting code
GB2473154B (en) 2010-11-16 2011-06-15 Martin Tomlinson Public key encryption system using error correcting codes
US8891762B2 (en) * 2010-12-10 2014-11-18 Mitsubishi Electric Research Laboratories, Inc. Method for privacy-preserving order selection of encrypted element
US9886597B2 (en) * 2013-02-27 2018-02-06 Morpho Method for encoding data on a chip card by means of constant-weight codes
EP2885892A1 (en) * 2013-03-27 2015-06-24 Irdeto B.V. Aes implementation with error correction
US9576116B2 (en) * 2013-12-26 2017-02-21 Nxp B.V. Secure software components anti-reverse-engineering by table interleaving
US9641337B2 (en) * 2014-04-28 2017-05-02 Nxp B.V. Interface compatible approach for gluing white-box implementation to surrounding program
US11502830B2 (en) * 2020-10-12 2022-11-15 Kyndryl, Inc. Ultrasound split key transmission for enhanced security

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0385923A (ja) * 1989-08-30 1991-04-11 Fujitsu Ltd Crc演算方式
JPH03192383A (ja) * 1989-10-04 1991-08-22 Teledyne Ind Inc ブロツク置換法
JPH06138820A (ja) * 1992-10-30 1994-05-20 Nippon Telegr & Teleph Corp <Ntt> 暗号化装置及び暗号復号装置
US20050117745A1 (en) * 2003-10-08 2005-06-02 Samsung Electronics Co. Ltd. Data encryption and decryption method using a public key
US20060072743A1 (en) * 2002-10-17 2006-04-06 Mats Naslund Cryptography using finite fields of odd characteristic on binary hardware
JP2006189607A (ja) * 2005-01-06 2006-07-20 Murata Mach Ltd 復号装置とそのプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5054066A (en) * 1988-11-16 1991-10-01 Grumman Corporation Error correcting public key cryptographic method and program
DE10148415C2 (de) * 2001-09-29 2003-07-31 Univ Braunschweig Tech Verfahren und Vorrichtung zum Verschlüsseln und Entschlüsseln von Daten
KR100561846B1 (ko) * 2003-10-08 2006-03-16 삼성전자주식회사 가중된 비밀 공유 및 복원 방법
EP1842203A4 (en) * 2004-11-12 2011-03-23 Verayo Inc KEYS OF VOLATILE DEVICES, AND THEIR APPLICATIONS
US7941726B2 (en) * 2006-06-30 2011-05-10 Microsoft Corporation Low dimensional spectral concentration codes and direct list decoding

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0385923A (ja) * 1989-08-30 1991-04-11 Fujitsu Ltd Crc演算方式
JPH03192383A (ja) * 1989-10-04 1991-08-22 Teledyne Ind Inc ブロツク置換法
JPH06138820A (ja) * 1992-10-30 1994-05-20 Nippon Telegr & Teleph Corp <Ntt> 暗号化装置及び暗号復号装置
US20060072743A1 (en) * 2002-10-17 2006-04-06 Mats Naslund Cryptography using finite fields of odd characteristic on binary hardware
US20050117745A1 (en) * 2003-10-08 2005-06-02 Samsung Electronics Co. Ltd. Data encryption and decryption method using a public key
JP2006189607A (ja) * 2005-01-06 2006-07-20 Murata Mach Ltd 復号装置とそのプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022520675A (ja) * 2018-12-21 2022-04-01 01 コミュニーク ラボラトリー インコーポレイテッド 暗号システムおよび方法
JP7328969B2 (ja) 2018-12-21 2023-08-17 01 コミュニーク ラボラトリー インコーポレイテッド 暗号システムおよび方法

Also Published As

Publication number Publication date
KR20110014211A (ko) 2011-02-10
US20110091033A1 (en) 2011-04-21
EP2294752A2 (en) 2011-03-16
WO2009141756A2 (en) 2009-11-26
WO2009141756A3 (en) 2010-01-14
CA2736910C (en) 2017-01-24
CA2736910A1 (en) 2009-11-26
US8724802B2 (en) 2014-05-13
JP5539331B2 (ja) 2014-07-02
CN102187617B (zh) 2014-10-08
KR101582806B1 (ko) 2016-01-07
CN102187617A (zh) 2011-09-14

Similar Documents

Publication Publication Date Title
JP5539331B2 (ja) 暗号システム
KR101267109B1 (ko) 준군을 이용한 암호화 프리미티브, 에러 코딩, 및 의사난수 향상 방법
JP5812300B2 (ja) 双一次形式に関する効率的な準同形暗号方式のためのコンピュータ読み取り可能記憶媒体および装置
JP6083234B2 (ja) 暗号処理装置
KR101027199B1 (ko) 키공유 시스템, 공유키 생성장치 및 공유키 복원장치
GB2549981A (en) A public key cryptosystem based on the partitioning of elements of vectors
JP2003023421A (ja) 暗号方法、そのプログラム、そのプログラムを記録した記録媒体および暗号装置並びに復号方法および復号装置
JP2001142394A (ja) 暗号化方法、暗号化装置、復号化方法及び復号化装置
CN108183791B (zh) 应用于云环境下的智能终端数据安全处理方法及系统
KR102169369B1 (ko) 경량 블록 암호화에 대한 1차 부채널 공격에 대응하는 방법 및 이를 이용한 장치
KR20060134992A (ko) 정수를 가산하는 컴퓨터 시스템
CN104769881A (zh) 具有错误校正的aes实现方式
EP1287641B1 (en) A method of validating an encrypted message
JP2017167390A (ja) 情報処理装置、情報処理方法及びプログラム
Shehhi et al. An ind-cca-secure code-based encryption scheme using rank metric
JP7117964B2 (ja) 復号装置、暗号システム、復号方法及び復号プログラム
US10917232B1 (en) Data enciphering or deciphering using a hierarchical assignment system
JP4715748B2 (ja) 暗号方式の安全性を保証するパディング適用方法
JP6441390B2 (ja) 生成装置、暗号化装置、復号装置、生成方法、暗号化方法、復号方法およびプログラム
JP4685621B2 (ja) 鍵生成装置、暗号化装置、復号化装置、乗法型ナップザック暗号システム、乗法型ナップザック暗号復号方法およびプログラム
JP2003304237A (ja) 共通鍵生成方法、その共通鍵を用いる暗号方法および共通鍵管理方法並びに端末の固体番号による固体認証方法、並びにそれらの方法を実行するプログラム、及びそのプログラムを含む応用ソフトウェア
JP5578422B2 (ja) 暗号化通信システム、送信装置、受信装置、暗号化/復号化方法およびそれらのプログラム
Potey et al. Efficient homomorphic encryption using ECC-ElGamal scheme for cloud data
RU2775253C1 (ru) Способ криптографического преобразования с одновременной выработкой производного ключа шифрования
Dhamodharan et al. Multifarious mapping schemes on Elliptic curve cryptography for IoT security

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130716

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131016

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20131023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140310

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

R150 Certificate of patent or registration of utility model

Ref document number: 5539331

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140430

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees