JP6926042B2 - 鍵生成装置、鍵生成方法及びプログラム - Google Patents

鍵生成装置、鍵生成方法及びプログラム Download PDF

Info

Publication number
JP6926042B2
JP6926042B2 JP2018174928A JP2018174928A JP6926042B2 JP 6926042 B2 JP6926042 B2 JP 6926042B2 JP 2018174928 A JP2018174928 A JP 2018174928A JP 2018174928 A JP2018174928 A JP 2018174928A JP 6926042 B2 JP6926042 B2 JP 6926042B2
Authority
JP
Japan
Prior art keywords
size
key
outputable
determines
block size
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018174928A
Other languages
English (en)
Other versions
JP2020048069A (ja
Inventor
莉里香 高橋
莉里香 高橋
佳道 谷澤
佳道 谷澤
一右 土井
一右 土井
真美子 鯨岡
真美子 鯨岡
村上 明
明 村上
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2018174928A priority Critical patent/JP6926042B2/ja
Priority to US16/289,066 priority patent/US11115198B2/en
Priority to EP19160022.0A priority patent/EP3627757B1/en
Publication of JP2020048069A publication Critical patent/JP2020048069A/ja
Application granted granted Critical
Publication of JP6926042B2 publication Critical patent/JP6926042B2/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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • H04L9/0858Details about key distillation or coding, e.g. reconciliation, error correction, privacy amplification, polarisation coding or phase coding
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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
    • H04L2209/122Hardware reduction or efficient architectures

Description

本発明の実施形態は鍵生成装置、鍵生成方法及びプログラムに関する。
光ファイバーにより接続された送信装置と受信装置との間で連続的に送信された単一光子を利用して、安全に暗号鍵を共有する量子鍵配送(QKD:Quantum Key Distribution)技術が従来から知られている。
英国特許第2503045号明細書
Efficient decoy−state quantum key distribution with quantified security, M. Lucamarini et al., Optics Express, Vol. 21, Issue 21, pp. 24550−24565 (2013).
しかしながら、従来の技術では、制限されたリソース下で、鍵の安全性を維持しながら、生成速度を向上させることが難しかった。
実施形態の鍵生成装置は、計算部と決定部と生成部とを備える。計算部は、鍵長を計算する。決定部は、鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する。生成部は、前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する。前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定する。前記決定部は、前記鍵長が計算される度に、前記鍵長のフィードバックを受け付け、フィードバックされた鍵長と、前記出力可能サイズとを比較して、前記出力可能サイズが前記鍵長と等しくなるように、前記ブロックサイズを動的に決定する。
鍵蒸留処理の例を示すフローチャート。 ブロックサイズ、出力可能サイズ及び鍵長の関係を示す図。 実施形態の鍵生成装置の機能構成の例を示す図。 実施形態のブロックサイズ及び出力可能サイズの例1を示す図。 実施形態のブロックサイズ及び出力可能サイズの例2を示す図。 実施形態の鍵生成装置10の効果を説明するための図。 実施形態の鍵生成装置のハードウェア構成の例を示す図。
以下に添付図面を参照して、鍵生成装置、鍵生成方法及びプログラムの実施形態を詳細に説明する。
(QKD概要)
はじめに、量子暗号通信システムについて説明する。量子暗号通信システムは、送信機と受信機とによって構成される。送信機が光子を光ファイバーリンク上で送信し、受信機がこれを検出する。その後、送信機と受信機とが相互に制御情報を交換することによって、送信機と受信機との間で暗号鍵情報を共有する。この処理をシフティング処理(Sifting)と称する。次に、共有された暗号鍵情報をもとに、誤り訂正処理(Error Correction,EC)によって、送信機と受信機との間で生じた暗号鍵情報の誤りを修正する。さらに、暗号鍵情報のうち、盗聴者によって盗聴されたかもしれない情報を打ち消すための情報圧縮に相当する秘匿性増強処理(Privacy Amplification,PA)を実施する。以上の処理によって、最終的に、送信機及び受信機は盗聴されていないことが保証された暗号鍵を共有することができる。
以上の技術は一般に量子鍵配送(Quantum Key Distribution,QKD)と呼ばれる技術により実現できる。共有された暗号鍵は、送信機と受信機との間、あるいは、それぞれの装置に接続されたアプリケーション間でデータの暗号通信を行う際に利用される。
QKDでは、暗号鍵を共有するために利用される量子は、観測されることで状態が変化する、量子力学の基本原理の一つである不確定原理を持っている。この性質により、送信機が送信した暗号鍵情報を含む量子を量子通信路上で盗聴者が観測すると、量子の状態が変化し、量子を受け取った受信機は、盗聴者に量子を観測されたことを知ることができる。その際、量子状態の変化は送信機と受信機間のリンクの量子ビットエラーレート(Quantum Bit Error Rate、QBER)として現れる。盗聴者が量子を盗聴しようとすると、量子の状態が変化し、QBERが大きくなるため、受信機と送信機は盗聴者の存在を知ることができる。
(性能・セキュアキーレート)
共有する暗号鍵の単位時間あたりの量は、セキュアキーレートと呼ばれ、量子暗号システムの動作速度性能に相当する。沢山の暗号鍵を利用できる方が、より高速、かつ、安全な暗号通信ができるため、セキュアキーレートが大きいほど、より高性能な量子暗号通信システムであると言える。
(安全性・有限長効果)
QKDでは、盗聴者に盗聴された情報量を正確に知ることは難しいため、盗聴された情報量を推定して、推定値から安全な暗号鍵の長さの計算を行うことがある。盗聴者に漏れた情報量を取り除いた暗号鍵を出力するために、QBERなどのQKDを行ったときの測定値から、盗聴者に漏れた情報量を推定して、安全性の確保された暗号鍵の長さを算出する。
QBERなどのQKDの測定値は、盗聴者の存在だけでなく、温度やファイバーへの外的要因などの環境要因によっても変動するが、QKDシステムではこれらの違いを判別することはできない。そこで、一般的には安全側に倒して考えて、環境要因によるQKDの測定値の変動もすべて盗聴者の存在によるもの、盗聴者に情報が漏れたと考えて暗号鍵の長さを算出する。
理想的なQKDシステムにおいては、QBERから生成された暗号鍵、及び、暗号鍵が生成される過程の処理での暗号鍵情報など、QKDの動作中のすべてのQKDの測定値から盗聴者に漏れた情報量を決定し、誤差なく暗号鍵の長さを算出することが理想である。しかし、現実的には無限の長さである、すべてのQKDの測定値を収集して盗聴者に漏れた情報量を決定することは不可能であり、ある程度の長さのブロックに区切るなどして有限の長さのQKDの測定値を収集して、盗聴者に漏れた情報量をその範囲で推定しなければならない。この盗聴者に漏れた情報量の推定を行うときに、推定をより精度良く行うために、QKDの測定値の収集量を多くして変動をできるだけ抑え、推定誤差をできるだけ少なくすることが望ましいと考えられている。推定によって生じた誤差に関しても、安全側に倒して考え、盗聴者に漏れた情報量が多い方の推定値を採用して、暗号鍵の長さを算出する。そのため、理想的に無限の長さから盗聴者に漏れた情報量を決定する場合に比べて、現実的には盗聴者に漏れた情報量を多めに推定するので、算出される暗号鍵の長さは小さくなる。この理想的なシステムと実際のシステムとの乖離による暗号鍵の長さの減少を有限長効果(finite size effect)と呼んだりする。有限長効果による暗号鍵の長さの減少を抑えるためには、QKDの測定値を収集する範囲を大きくするなど、QKDシステムでの処理の単位をできるだけ大きくすることが望ましいと考えられている。この処理の単位のことをブロックサイズと呼ぶ。
(PAのステップ)
図1は鍵蒸留処理の例を示すフローチャートである。鍵蒸留処理は、シフティング処理、誤り訂正処理及び秘匿性増強処理を含む。
シフティング処理(Sifting)では、光子のパルスと基底の情報とに基づいて、量子通信で検出した光子から鍵ビット列を抽出し、さらに、鍵長を計算するために利用するパルスの統計情報データを作成する。
誤り訂正処理(EC)では、シフティング処理により生成された鍵ビット列を入力として、送受信者で共有したビット列の誤り訂正を行い、誤りビット数から量子通信路のエラーレートを算出し、EC後の鍵ビット列を出力する。
秘匿性増強処理(PA)では、量子通信路のエラーレートとパルスの統計情報データとに応じて、最終的な暗号鍵の長さを算出し、鍵長に応じたサイズの行列を用意する。そして、当該行列と、EC後の鍵ビット列とのハッシュを計算する。
具体的には、PAは、鍵長計算のステップとハッシュ計算のステップとの2つに分けられる。鍵長計算のステップでは、量子通信路のエラーレートとパルスの統計情報とに応じて、最終的な暗号鍵の長さを算出する。量子通信路のエラーレートが高いほど、盗聴者に洩れた情報量を多く見積もり、安全な鍵とするために暗号鍵の長さは小さくする。最終的な暗号鍵の長さの計算を行う際に、盗聴者に漏洩した情報量を見積もるために、パルスや基底の組合せのエラーレートを計算する。そのため、Siftingで生成されたパルスの統計情報から、複数のデータのカウント数とビット誤りの数とを計算する。さらに、鍵長計算のステップでは、ECから、量子通信路のエラーレートと誤り訂正の処理で古典通信路上を通信したビット数を受け付け、パラメータ推定に利用し、最終的な暗号鍵の長さの計算を行う。
また、前述(安全性・有限長効果)のように盗聴者に漏洩した情報量の推定での誤差を小さくするために、暗号鍵の長さ、及び、一連の処理を行うデータセットのサイズ(ブロックサイズ)をできるだけ大きくする。ブロックサイズが大きいほど、推定誤差が小さくなり、計算される暗号鍵の長さは大きくなる。
ハッシュ計算のステップでは、鍵長計算のステップで計算された暗号鍵の長さと、鍵長計算で利用したブロックサイズとに応じたサイズの行列を用意する。そして、当該行列を使用して、ECで出力されたブロックサイズ分の鍵ビット列とのハッシュ演算を計算して、最終的に鍵長計算のステップで計算された暗号鍵の長さ分の暗号鍵ビット列を出力する。ハッシュ計算は、行列とベクトルの積になるため、単純に実装すると大きなメモリが必要になってしまう。
(PAのハッシュ計算の説明)
PAのハッシュ計算は、盗聴者に漏れた情報を取り除く処理である。量子通信路でのエラーレートなどQKDの測定値の変動は盗聴者によるものかもしれないという考え、及び、古典通信路で通信するデータはすべて盗聴者に盗聴されているかもしれないという考えの上で最終的に安全な暗号鍵を生成する。処理としては、例えばハッシュ関数として、Toeplitz行列と呼ばれる、左から右の各対角線に沿って要素が一定であるような対角一定行列を、入力されるビット列にかけることにより、ビット列を安全な範囲まで圧縮する。その際、量子通信路のエラーレートなどのQKDの測定値の変動に応じて安全性を考慮して、最終的に出力すべき暗号鍵のビット列の長さを変える。
図2はブロックサイズn、出力可能サイズm及び鍵長sの関係を示す図である。図2を使用して、処理の順序について説明する。
(1)EC処理がされたブロックサイズn分の入力ビット列を受け付ける。
(2)量子通信路のエラーレートなどから暗号鍵の鍵長sが計算される。
(3)n×sのハッシュ行列が乱数を使用して構成される。
(4)入力ビット列とハッシュ行列との行列積を計算し、出力された鍵長sのビット列を暗号鍵とする。
PAでは、処理速度及び安全性(有限長効果)の観点から、できるだけ大きなサイズのハッシュ行列を利用することが理想とされているが、ハッシュ計算に割り当てられるリソース(メモリのサイズ)によってPAで扱うハッシュ行列のサイズが制限される。
PAに入力するビット列のサイズ(ブロックサイズn)を大きくすればするほど、効率的に暗号鍵を生成できるが、ハッシュを実装するメモリサイズ等の実装の制約がある。以下、実装の制約がある状況で、安全性及び高速性を考慮して、暗号鍵を生成する方法について説明する。
[機能構成の例]
図3は実施形態の鍵生成装置10の機能構成の例を示す図である。実施形態の鍵生成装置10は、共有部1、記憶部2、シフティング処理部3、誤り訂正処理部4及び秘匿性増強処理部5を備える。
実施形態の説明では、鍵生成装置10が受信装置に備えられている場合を例にして説明する。
共有部1は、送信装置との間で光子情報のやりとりを行い、当該光子情報から取り出した量子鍵ビット列、当該量子鍵ビット列を取り出す際に選択された基底の情報、及び、送信装置が光子の送信に利用したパルスの情報などを記憶部2に記憶する。
記憶部2は情報を記憶する。記憶部2は、例えば各機能ブロックにより得られた情報(ビット列等)を記憶する。なお、記憶部2に記憶される情報は、当該記憶部2を経由して、他の構成ブロックで利用してもよいし、構成ブロック間で直接やりとりしてもよい。
シフティング処理部3は、記憶部2から、量子鍵ビット列を読み出し、上述のシフティング処理を行って、送信装置と共有する共有鍵ビット列を生成し、当該共有鍵ビット列を記憶部2に記憶する。
誤り訂正処理部4は、記憶部2から共有鍵ビット列を読み出し、上述の誤り訂正処理を行って、共有鍵ビット列の誤りを訂正し、訂正後の共有鍵ビット列を記憶部2に記憶する。
秘匿性増強処理部5は、記憶部2から、訂正後の共有鍵ビット列を読み出し、上述の秘匿性増強処理を行って、暗号鍵を生成し、当該暗号鍵を記憶部2に記憶する。誤り訂正処理で送信装置との間で行われた通信は、盗聴者に漏れていると考えて、秘匿性増強処理で、盗聴された可能性のある情報の量に基づいて、訂正後の共有鍵ビット列から暗号鍵が生成される。盗聴された可能性のある情報の量が多いほど、秘匿性増強処理で削減される情報の量が多くなる。
具体的には、秘匿性増強処理部5は、計算部51、決定部52及び生成部53を備える。
計算部51は、暗号鍵の鍵長を計算する。具体的には、計算部51は、統計情報をもとに、最終的な暗号鍵の長さを計算する。例えば、統計情報は、誤り訂正処理部4から受け取ったエラーレートなどである。また例えば、統計情報は、シフティング処理部3から受け取ったパルス(例えばデコイパルス及び真空パルス等)の統計情報(カウント数及び誤り数など)である。また例えば、統計情報は、誤り訂正処理部の処理で、古典通信を介して通信されたデータのビット数である。
決定部52は、鍵生成処理の処理単位であるブロックサイズnと、当該鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズmとを決定する。ブロックサイズnは、例えば暗号鍵の鍵長を計算する計算式に基づいて、決定される。また例えば、ブロックサイズnは、フィードバックされた鍵長に基づいて、ブロックサイズnを改善していくなどして決定(更新)される。
PAにおいては、処理速度及び安全性の観点から、より大きなブロックサイズn(行数n)のハッシュ行列を利用することが理想とされているが、ハッシュ行列を保持するメモリサイズの制約により、入力であるブロックサイズnを大きくすると、出力可能サイズmが制限され、さらには、出力である最終的な暗号鍵のサイズ(鍵長s)が制限される。そこで、決定部52が、鍵長計算で得られた鍵長sに応じたブロックサイズnを決定する。
ブロックサイズnを決定するための具体的な方式の例について説明する。
(方式/最適値導出)
決定部52は、鍵生成装置10のリソース、量子通信路のエラーレート、及び、パルスの統計情報の少なくとも1つに基づいて、ブロックサイズnを決定する。具体的には、決定部52は、例えば鍵長計算で算出される鍵長sが出力可能サイズmと等しくなるようにブロックサイズnを決定する。例えば、f(n)=mという方程式を解くことで、最適なnを得る。ここで、関数fは鍵長計算の式であり、ブロックサイズnに依存することを表している。また、関数fには、例えば通信路(量子通信路)のエラーレート等の変数が含まれる。変数Xを鍵生成装置のリソースによるハッシュ行列の行数と列数の和の上限を表す定数としたとき、出力可能サイズmはブロックサイズnとリソースXから、m=X−nと表せるので、f(n)=X−nとなる。また、鍵長sは鍵長計算の式から算出されるのでs=f(n)でもある。
(方式/比較)
決定部52は、鍵長計算で算出される鍵長sと出力可能サイズmの正負の関係からブロックサイズnを処理ごとに決定(更新)する。決定部52は、m=X−nであるので、s>mならば、より出力可能サイズmを大きくするために、ブロックサイズnを小さくする。一方、決定部52は、s<mならば、出力可能サイズmを絞ってブロックサイズnを大きくする。
(方式/履歴参照)
決定部52は、これまでの鍵長計算で算出される鍵長sの履歴を収集してブロックサイズnを決定(更新)する。決定部52は、例えば、これまでの鍵長sの履歴の平均s_avgを参照して、s_avgよりも大きな出力可能サイズmとなるように、ブロックサイズnをn=X−mとして決定する。また例えば、決定部52は、これまでの鍵長sの履歴の最大のs_maxを参照して、s_maxよりも大きな出力可能サイズmとなるように、ブロックサイズnを決定する。
(方式/監視)
決定部52は、所定の時間間隔で、鍵長計算で算出される鍵長sと、鍵長sが算出されたときの出力可能サイズmと、を監視し、鍵長s(の値)と出力可能サイズm(の値)とが近づくように、ブロックサイズnを最適な値に決定(更新)する。
(方式/リアルタイム制御)
決定部52は、鍵長計算で算出される鍵長sの結果をもとに、PAの処理の内部で、リアルタイムに出力可能サイズmと比較しながら、最適なブロックサイズnを探し、適用する。具体的には、決定部52は、例えば鍵長sが計算される度に、鍵長sのフィードバックを受け付け、フィードバックされた鍵長sと、出力可能サイズmとを比較して、出力可能サイズmが鍵長sと等しくなるように、ブロックサイズnを動的に決定する。なお、決定部52は、所定の時間間隔で、鍵長sのフィードバックを受け付け、フィードバックされた鍵長sと、出力可能サイズmとを比較して、出力可能サイズmが鍵長sと等しくなるように、ブロックサイズnを決定してもよい。
なお、秘匿性増強処理の単位となるブロックサイズnは、他の統計情報から盗聴者に漏れている情報量を推定するときの推定誤差に影響する。そのため、ブロックサイズnも上述の統計情報に含めてもよい。
生成部53は、ブロックサイズnと、出力可能サイズmとにより定まるサイズの行列を使用したハッシュ演算によって、計算部51により計算された鍵長の鍵を生成する。生成部53は、例えばブロックサイズnと同じ行数と、出力可能サイズmと同じ列数とを有する行列(ハッシュ行列)を使用したハッシュ演算によって、計算部51により計算された鍵長の鍵を生成する。具体的には、生成部53は、記憶部2に記憶された訂正後の共有鍵ビット列をブロックサイズ分取り出し、送信装置と共通のブロックサイズと出力可能サイズとからなるハッシュ行列を使用してハッシュ計算を行う。ハッシュ後の鍵ビット列は、暗号鍵として出力しても良いし、ハッシュ後の鍵ビット列を記憶部2に記憶してから、暗号鍵として出力しても良い。
なお、生成部53は、ブロックサイズnと同じ列数と、出力可能サイズmと同じ行数とを有する行列を使用したハッシュ演算によって、計算部51により計算された鍵長の鍵を生成してもよい。
[動作方法の例]
上述の図1のように、PAとは、前段のECからの入力を受けて、暗号鍵を算出する処理である。ECでは、さらに前段の処理であるシフティング処理から受け取った鍵ビット列の誤りを訂正して、訂正後の鍵ビット列をPAに入力する。さらに、ECでは、鍵ビット列に含まれる誤りからエラーレートを計算し、QKDを行う量子通信路のエラーレートとして、PAに入力する。
PAの内部の処理は、鍵長計算とハッシュ計算とに分けられる。
PAの鍵長計算では、ECで算出した量子通信路のエラーレート、QKDのパラメータ(パルスの統計情報など)、及び、処理を行う鍵ビット列のサイズ(ブロックサイズ)に応じて、最終的な暗号鍵の長さを算出する。最終的な暗号鍵長の計算を行うための盗聴者に漏洩した情報量を見積もるために、パルス及び基底の組合せでエラーレートを計算することがある。そのため、計算部51は、シフティングで生成されたパルスの統計情報から、複数のデータのカウント数及びビット誤りの数を計算する。さらに、計算部51は、ECから量子通信路のエラーレートと、誤り訂正で漏洩したビット数(古典通信路上の通信ビット数)とを受け付ける。計算部51は、複数のデータのカウント数、ビット誤りの数、量子通信路のエラーレート、及び、誤り訂正で漏洩したビット数をパラメータ推定に利用し、最終的な暗号鍵長である鍵長sを計算する。
計算部51は、量子通信路のエラーレートが高いほど、盗聴者に洩れた情報量が多いと考えて、盗聴者に洩れた情報量を取り除いて、安全な鍵とするために鍵長sを小さくする。一方、計算部51は、量子通信路のエラーレートが低いほど、盗聴者に洩れた情報量が少ないと考えて、鍵長sを大きくする。
また、ブロックサイズnによって、盗聴者に漏洩した情報量の見積りの精度が変わる。そのため、ブロックサイズnは、最終的な暗号鍵長である鍵長sに影響する。
ブロックサイズnが大きければ、QKDのパラメータから推定される盗聴者に漏洩した情報量の推定誤差が減り、鍵長sは大きくなり、ブロックサイズnが小さければ、QKDのパラメータから推定される盗聴者に漏洩した情報量の推定誤差が大きくなり、鍵長sは小さくなる。安全性の評価においては、一般的に安全側に倒して考えるので、実際に盗聴された情報量は盗聴者に漏洩した情報量の推定値の最悪のケースを想定する。そのため、推定された値の範囲の中で最も大きい値を盗聴者に漏洩した情報量とする。したがって、推定誤差を小さくすることは、漏洩した情報量の推定の上限値を小さくすることにつながり、実際に近い推定ができ、実際よりも余分に多く盗聴される情報量を推定して最終的な鍵の長さを小さくすることを避けることにつながる。
PAのハッシュ計算では、鍵長計算で算出された暗号鍵の長さに応じたサイズの行列を用意して、ECで出力されたブロックサイズ分の鍵ビット列との行列積を計算して、最終的な暗号鍵ビット列を出力する。PAでは、例えば、ハッシュ行列としてToeplitz行列という特殊な対角一定行列を利用する。これを実現する場合においては、行数と列数の和がメモリサイズによって制限される。行数は入力ブロックサイズと等しく、安全性の観点からできる限り大きいことが理想である。列数は出力する暗号鍵ビット列のサイズと等しく、高速化の観点から大きいことが望まれる。
ハッシュ計算で利用するハッシュ関数では、上述の図2のようにブロックサイズnと出力可能サイズmが、行列の行数及び列数に対応する。ブロックサイズnは安全性の観点から無限に大きくするのが理想である。出力可能サイズmもできる限り大きくして、最終的に鍵長計算で算出される鍵長sをできるだけそのまま暗号鍵として出力したい。しかし、鍵生成装置のリソースによるハッシュ行列のサイズの制約Xがあるため、行列の行数と列数とがトレードオフの関係になり、両方の値をともに大きくすることが難しくなる。
ここで、鍵長sは、鍵長計算において、量子通信路のエラーレートなどの変動値とブロックサイズnによって安全性を考慮して決められる。出力可能サイズmを大きくしても、安全性を考慮した鍵長計算で算出された鍵長sしか出力することはできないし、鍵長sが出力可能サイズmよりも小さくなる可能性はある。そこで、決定部52が、鍵長計算で算出される鍵長sが出力可能サイズmと等しくなるようにブロックサイズnを決定することで、鍵生成装置のリソースを有効に活用しながら、安全性を維持しつつ、処理速度を向上させる。
(メモリサイズとハッシュ計算サイズの関係)
ハッシュ行列を用いたハッシュ計算においては、ハッシュ行列を保持するメモリサイズによって利用できる処理サイズの上限が抑えられる。例えば、数論変換(NTT:Number Theoretical Transform)を用いて、高速にToeplitz行列を用いたハッシュ計算を実行しようとした場合、ハッシュの行数と列数との和である処理サイズに応じて、NTTの実装において必要なメモリが大きくなることがわかっている。
つまり、無限の長さのQKDの測定値を用いて、ECのビット列に対してハッシュ計算を行えないにしても、できるだけ大きな長さのハッシュ計算を行おうとした場合に、ハッシュ行列を保持するためのメモリのサイズが制約となってくる。
(PAのハッシュ行列のサイズと出力サイズの関係)
例として、PAでToeplitz行列などを利用した場合、実装においては、行数と列数との和がメモリサイズによって制限される。行数は、入力されるビット列のサイズ(ブロックサイズn)と等しく、安全性と処理速度の観点から無限に大きいことが理想である。列数は出力する暗号鍵の長さと等しく、高速化の観点から大きいことが望まれる。
Toeplitz行列を用いたハッシュ計算ではハッシュ行列を保持するメモリサイズによってハッシュ関数の構成にも制約があることは前述のとおりである。このハッシュ関数の特徴の制約として、例えばハッシュ行列の行数に対応するブロックサイズnと、列数に対応する出力可能サイズmはトレードオフの関係になる。すなわち、(ブロックサイズn)+(出力可能サイズm)<(ハッシュ関数の処理サイズ(行数及び列数の和))という関係が成り立つ。ここで、前述のとおり、安全性及び処理速度の観点から、ブロックサイズnは無限に大きくすることが理想であり、出力可能サイズmは鍵長計算で算出される暗号鍵の長さsをカバーできるくらい大きくする必要がある。暗号鍵の長さsはエラーレートなどの変動値とブロックサイズnによって安全性を考慮して決められるもので、処理速度の観点からはできるだけ大きくしたい。ただし、出力可能サイズmを大きくしても、鍵長sはそれ以下になる可能性もある。
具体的には、ブロックサイズnと出力可能サイズmとの関係は、例えば図4及び図5のようになる。
図4は実施形態のブロックサイズ及び出力可能サイズの例1を示す図である。例えば、ブロックサイズnを100Mbitと大きくすると、メモリの制約によりハッシュ行列の処理サイズが決まり、出力可能サイズmは28Mbitと小さくせざるを得なくなる。生成部53は、鍵長計算で算出される鍵長sが、28Mbitよりも大きい場合は、出力可能サイズmで暗号鍵を生成する。
図5は実施形態のブロックサイズ及び出力可能サイズの例2を示す図である。また例えば、ブロックサイズnを80Mbitと小さくすると、出力可能サイズmは48Mbitまで大きくできるため、生成部53で、鍵長計算で算出される鍵長sが48Mbitとなっても鍵をすべて出力できるが、鍵長計算で算出される暗号鍵の長さsもブロックサイズnによる有限長効果によって小さくなる。
図4及び図5で示されるように、決定部52が、出力可能サイズmと鍵長sとのバランスを考慮して、ブロックサイズnを決定することが、効率的なPAの計算には不可欠である。
(効果の説明)
図6は実施形態の鍵生成装置10の効果を説明するための図である。従来は、鍵長計算で計算された暗号鍵の鍵長sにかかわらず、ハッシュ行列のブロックサイズnを固定して利用していた。しかし、例えば図4で説明したように、ハッシュ関数の処理サイズ(行数及び列数の和)が128Mbit、ブロックサイズnが100Mbitのとき、暗号鍵の出力可能サイズmは28Mbit以下に抑えられてしまう。鍵長計算で算出される暗号鍵の鍵長sが35Mbitとなったとき、28Mbitよりも大きい超過分7Mbitは処理しきれずに切り捨てられることになり、最終的なセキュアキーレートが律速されることがあった。
実施形態の鍵生成装置10では、決定部52が、鍵長計算で計算される鍵長sから最適なブロックサイズnを決定し適用することで、出力可能サイズmと鍵長計算で算出される暗号鍵の鍵長sを等しい値にすることができる。例えばハッシュ関数の処理サイズが128Mbit、ブロックサイズnが96Mbitとしたときに、暗号鍵の出力可能サイズmは32Mbit以下に抑えられる。実施形態の鍵生成装置10では、鍵長計算で算出される暗号鍵の鍵長sが32Mbitであることを、あらかじめフィードバックをかけたり、上述の方程式f(n)=mを解いたりするなどして特定する。これにより、ブロックサイズが96Mbitで出力可能サイズが32Mbit、鍵長が32Mbitとなり、鍵生成装置のリソースを有効に利用しながら、処理しきれずに切り捨てられる鍵ビット列をなくすことができる。例えば上述の図4の例では、従来は7Mbitの切り捨てによる処理速度の低下があったが、実施形態の鍵生成装置10では、この切り捨てはなくなり、32Mbitの暗号鍵ビット列を出力することができ、処理速度を向上させることができる。
以上、説明したように実施形態の鍵生成装置10では、計算部51が、鍵長sを計算する。決定部52が、鍵生成処理の処理単位であるブロックサイズnと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズmとを決定する。そして、生成部53が、ブロックサイズnと、出力可能サイズmとにより定まるサイズの行列を使用したハッシュ演算によって、鍵長sの鍵を生成する。
これにより実施形態の鍵生成装置10によれば、制限されたリソース下で、鍵の安全性を維持しつつ、生成速度をより向上させることができる。具体的には、実施形態の鍵生成装置10によれば、ハッシュ行列を保持するメモリのサイズの制約を考慮しつつ、鍵長計算で計算される鍵長sに対する最適なブロックサイズnを適用できるので、安全性を維持しつつ、セキュアキーレートを改善させることができる。
従来は、ブロックサイズが固定されていたため、最終的に算出される暗号鍵の鍵長sがブロックサイズnから導出される出力可能サイズmを超えていた場合に、実際に出力できるのは鍵長sではなく、出力可能サイズmとなってしまい、鍵を切り捨てていた。一方、実施形態の鍵生成装置10では、最適なブロックサイズnを適用するため、ブロックサイズnから導出される出力可能サイズmと、計算部51で計算される鍵長sが限りなく近くなり、鍵の切り捨てが起きることを避けることができる。こうすることで、リソースによる制約がある状況で、最大のセキュアキーレートを得ることができる。
最後に、実施形態の鍵生成装置10のハードウェア構成の例について説明する。
[ハードウェア構成の例]
図7は実施形態の鍵生成装置10のハードウェア構成の例を示す図である。実施形態の鍵生成装置10は、制御装置301、主記憶装置302、補助記憶装置303、表示装置304、入力装置305、量子通信IF(Interface)306及び古典通信IF307を備える。
制御装置301、主記憶装置302、補助記憶装置303、表示装置304、入力装置305、量子通信IF306及び古典通信IF307は、バス310を介して接続されている。
制御装置301は、補助記憶装置303から主記憶装置302に読み出されたプログラムを実行する。主記憶装置302は、ROM(Read Only Memory)及びRAM(Random Access Memory)等のメモリである。補助記憶装置303は、HDD(Hard Disk Drive)及びメモリカード等である。
表示装置304は、鍵生成装置10の状態等を表示する。入力装置305はユーザからの入力を受け付ける。
量子通信IF306は、量子通信路に接続するためのインターフェースである。古典通信IF307は、古典通信路に接続するためのインターフェースである。
実施形態の鍵生成装置10で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、メモリカード、CD−R、及び、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータ・プログラム・プロダクトとして提供される。
また実施形態の鍵生成装置10で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
また実施形態の鍵生成装置10が実行するプログラムを、ダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。
また実施形態の鍵生成装置10で実行されるプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
実施形態の鍵生成装置10で実行されるプログラムは、実施形態の鍵生成装置10の機能構成のうち、プログラムにより実現可能な機能を含むモジュール構成となっている。
プログラムにより実現される機能は、制御装置301が補助記憶装置303等の記憶媒体からプログラムを読み出して実行することにより、主記憶装置302にロードされる。すなわちプログラムにより実現される機能は、主記憶装置302上に生成される。
なお実施形態の鍵生成装置10の機能の一部又は全部を、IC(Integrated Circuit)等のハードウェアにより実現してもよい。ICは、例えば専用の処理を実行するプロセッサである。
また複数のプロセッサを用いて各機能を実現する場合、各プロセッサは、各機能のうち1つを実現してもよいし、各機能のうち2つ以上を実現してもよい。
また実施形態の鍵生成装置10の動作形態は任意でよい。実施形態の鍵生成装置10を、例えばネットワーク上のクラウドシステムを構成する装置として動作させてもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 取得部
2 決定部
3 通知制御部
4 記憶部
5 通知部
20 管理装置
100 情報処理システム
301 制御装置
302 主記憶装置
303 補助記憶装置
304 表示装置
305 入力装置
306 通信装置
310 バス

Claims (12)

  1. 鍵長を計算する計算部と、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する決定部と、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する生成部と、を備え、
    前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定部は、前記鍵長が計算される度に、前記鍵長のフィードバックを受け付け、フィードバックされた鍵長と、前記出力可能サイズとを比較して、前記出力可能サイズが前記鍵長と等しくなるように、前記ブロックサイズを動的に決定する、
    鍵生成装置。
  2. 鍵長を計算する計算部と、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する決定部と、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する生成部と、を備え、
    前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定部は、所定の時間間隔で、前記鍵長のフィードバックを受け付け、フィードバックされた鍵長と、前記出力可能サイズとを比較して、前記出力可能サイズが前記鍵長と等しくなるように、前記ブロックサイズを決定する、
    鍵生成装置。
  3. 鍵長を計算する計算部と、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する決定部と、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する生成部と、を備え、
    前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定部は、前記鍵長の履歴を収集し、前記鍵長の平均又は最大値よりも、前記出力可能サイズが大きくなるように、前記ブロックサイズを決定する、
    鍵生成装置。
  4. 鍵長を計算する計算部と、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する決定部と、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する生成部と、を備え、
    前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定部は、所定の時間間隔で、前記鍵長と、前記鍵長が算出されたときの出力可能サイズとを監視し、前記鍵長と前記出力可能サイズとが近づくように、前記ブロックサイズを決定する、
    鍵生成装置。
  5. 鍵長を計算するステップと、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定するステップと、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成するステップと、を含み、
    前記決定するステップは、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定するステップは、前記鍵長が計算される度に、前記鍵長のフィードバックを受け付け、フィードバックされた鍵長と、前記出力可能サイズとを比較して、前記出力可能サイズが前記鍵長と等しくなるように、前記ブロックサイズを動的に決定する、
    鍵生成方法。
  6. 鍵長を計算するステップと、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定するステップと、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成するステップと、を含み、
    前記決定するステップは、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定するステップは、所定の時間間隔で、前記鍵長のフィードバックを受け付け、フィードバックされた鍵長と、前記出力可能サイズとを比較して、前記出力可能サイズが前記鍵長と等しくなるように、前記ブロックサイズを決定する、
    鍵生成方法。
  7. 鍵長を計算するステップと、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定するステップと、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成するステップと、を含み、
    前記決定するステップは、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定するステップは、前記鍵長の履歴を収集し、前記鍵長の平均又は最大値よりも、前記出力可能サイズが大きくなるように、前記ブロックサイズを決定する、
    鍵生成方法。
  8. 鍵長を計算するステップと、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定するステップと、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成するステップと、を含み、
    前記決定するステップは、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定するステップは、所定の時間間隔で、前記鍵長と、前記鍵長が算出されたときの出力可能サイズとを監視し、前記鍵長と前記出力可能サイズとが近づくように、前記ブロックサイズを決定する、
    鍵生成方法。
  9. コンピュータを、
    鍵長を計算する計算部と、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する決定部と、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する生成部、として機能させ、
    前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定部は、前記鍵長が計算される度に、前記鍵長のフィードバックを受け付け、フィードバックされた鍵長と、前記出力可能サイズとを比較して、前記出力可能サイズが前記鍵長と等しくなるように、前記ブロックサイズを動的に決定する、
    プログラム。
  10. コンピュータを、
    鍵長を計算する計算部と、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する決定部と、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する生成部、として機能させ、
    前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定部は、所定の時間間隔で、前記鍵長のフィードバックを受け付け、フィードバックされた鍵長と、前記出力可能サイズとを比較して、前記出力可能サイズが前記鍵長と等しくなるように、前記ブロックサイズを決定する、
    プログラム。
  11. コンピュータを、
    鍵長を計算する計算部と、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する決定部と、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する生成部、として機能させ、
    前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定部は、前記鍵長の履歴を収集し、前記鍵長の平均又は最大値よりも、前記出力可能サイズが大きくなるように、前記ブロックサイズを決定する、
    プログラム。
  12. コンピュータを、
    鍵長を計算する計算部と、
    鍵生成処理の処理単位であるブロックサイズと、前記鍵生成処理によって出力可能な鍵のサイズを示す出力可能サイズとを決定する決定部と、
    前記ブロックサイズと、前記出力可能サイズとにより定まるサイズの行列を使用したハッシュ演算によって、前記鍵長の鍵を生成する生成部、として機能させ、
    前記決定部は、前記出力可能サイズを決定し、鍵生成装置のリソースと前記出力可能サイズとに基づいて前記ブロックサイズを決定し、
    前記決定部は、所定の時間間隔で、前記鍵長と、前記鍵長が算出されたときの出力可能サイズとを監視し、前記鍵長と前記出力可能サイズとが近づくように、前記ブロックサイズを決定する、
    プログラム。
JP2018174928A 2018-09-19 2018-09-19 鍵生成装置、鍵生成方法及びプログラム Active JP6926042B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018174928A JP6926042B2 (ja) 2018-09-19 2018-09-19 鍵生成装置、鍵生成方法及びプログラム
US16/289,066 US11115198B2 (en) 2018-09-19 2019-02-28 Key generation device, key generation method, and computer program product
EP19160022.0A EP3627757B1 (en) 2018-09-19 2019-02-28 Key generation device, key generation method, and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018174928A JP6926042B2 (ja) 2018-09-19 2018-09-19 鍵生成装置、鍵生成方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2020048069A JP2020048069A (ja) 2020-03-26
JP6926042B2 true JP6926042B2 (ja) 2021-08-25

Family

ID=65635576

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018174928A Active JP6926042B2 (ja) 2018-09-19 2018-09-19 鍵生成装置、鍵生成方法及びプログラム

Country Status (3)

Country Link
US (1) US11115198B2 (ja)
EP (1) EP3627757B1 (ja)
JP (1) JP6926042B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11750379B2 (en) * 2020-06-11 2023-09-05 Western Digital Technologies, Inc. Secure optical communication link

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1165439A (ja) * 1996-08-09 1999-03-05 Nippon Telegr & Teleph Corp <Ntt> N進表現暗号による通信および認証方法、ならびにそれらの装置、およびn進表現暗号による通信および認証プログラムを格納した記憶媒体
DE10345454A1 (de) * 2003-09-30 2005-04-28 Infineon Technologies Ag Wortindividuelle Schlüsselerzeugung
US7984018B2 (en) * 2005-04-18 2011-07-19 Microsoft Corporation Efficient point-to-multipoint data reconciliation
DE102006025569A1 (de) * 2005-10-28 2007-05-03 Infineon Technologies Ag Vorrichtung und Verfahren zum Berechnen einer Multiplikations-Additions-Operation und zum Berechnen eines Ergebnisses einer modularen Multiplikation
US7801204B2 (en) * 2006-05-26 2010-09-21 Texas Instruments Incorporated Estimation of BER performance
GB201210494D0 (en) 2012-06-13 2012-07-25 Toshiba Res Europ Ltd A quantum communication method and system
JP6165646B2 (ja) 2014-01-30 2017-07-19 株式会社東芝 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
JP6400441B2 (ja) 2014-11-19 2018-10-03 株式会社東芝 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
JP6490613B2 (ja) 2016-03-14 2019-03-27 株式会社東芝 通信装置、量子鍵配送システム、量子鍵配送方法およびプログラム

Also Published As

Publication number Publication date
EP3627757A1 (en) 2020-03-25
JP2020048069A (ja) 2020-03-26
US11115198B2 (en) 2021-09-07
EP3627757B1 (en) 2022-11-02
US20200092089A1 (en) 2020-03-19

Similar Documents

Publication Publication Date Title
JP6720424B1 (ja) 鍵共有デバイス及び方法
Adrian et al. Imperfect forward secrecy: How Diffie-Hellman fails in practice
US9503257B2 (en) Quantum key distribution device, quantum key distribution system, and quantum key distribution method
US11882218B2 (en) Matching system, method, apparatus, and program
US9973334B2 (en) Homomorphically-created symmetric key
US9608812B2 (en) Common secret key generation device, encryption device, decryption device, common secret key generation method, encryption method, decryption method, and program
US9294272B2 (en) System and method for quantum key distribution
KR20190005878A (ko) 보안 데이터 송신을 위한 방법 및 시스템
JP2020508021A (ja) キー交換デバイス及び方法
CN102904713A (zh) 用于密钥加密通信系统中的密钥交换方法
JP6770075B2 (ja) 暗号化メッセージ検索方法、メッセージ送受信システム、端末、プログラム
WO2013180413A1 (ko) 아이디 기반 암호 시스템을 위한 비밀키 생성 장치 및 그 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체
Zeydan et al. Recent advances in post-quantum cryptography for networks: A survey
Peng et al. Autorep: Automatic relu replacement for fast private network inference
JP6926042B2 (ja) 鍵生成装置、鍵生成方法及びプログラム
Fahrnberger Computing on encrypted character strings in clouds
KR101575681B1 (ko) 속성 기반 암호화 방법
Jain et al. Secure communication using RSA algorithm for network environment
CN114826728B (zh) 设备认证方法、物联网终端设备、电子设备以及存储介质
CN113328989B (zh) 端云协同的用户隐私保护车辆保险保费计算模型及方法
RU2697696C1 (ru) Способ передачи сообщения через вычислительную сеть с применением аппаратуры квантового распределения ключей
JP5388684B2 (ja) 分散情報生成装置、秘密情報復元装置、分散情報生成方法、秘密情報復元方法およびプログラム
JP5388716B2 (ja) 分散情報生成装置、秘密情報復元装置、分散情報生成方法、秘密情報復元方法およびプログラム
Sebastian et al. Advantage of using Elliptic curve cryptography in SSL/TLS
CN112995205B (zh) 基于区块链的查询方法、装置、设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200701

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210617

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210804

R151 Written notification of patent or utility model registration

Ref document number: 6926042

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151