【手続補正書】
【提出日】平成29年8月7日(2017.8.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
生成される乱数Rが素数であると決定されるまで、
kビットを有する乱数シードSを生成することと、
前記シードSを入力として受信するとともに前記乱数Rを出力として生成する一方向関数fを適用することによって、nビットを有する前記乱数Rを前記シードSに基づいて生成することであって、kがnよりも小さい、生成することと、
前記乱数Rが素数であるかどうかを決定することとを、
繰り返し行うことによって、処理回路において素数を生成するステップと、
素数であると決定された前記乱数Rを生成するために使用された前記乱数シードSをメモリ回路に記憶するステップと
を備える方法。
【請求項２】
前記乱数Rを生成することは、前記秘密鍵kSにさらに基づく、請求項1に記載の方法。
【請求項３】
素数であると決定された前記乱数Rを生成するために使用された前記秘密鍵kSをセキュアメモリ回路に記憶するステップをさらに備える、
請求項2に記載の方法。
【請求項４】
前記乱数シードSは、1つまたは複数の素数を得るための要求を暗号鍵生成プロセスから受信する前に記憶され、
前記方法は、
前記記憶された乱数シードSを前記メモリ回路から取り出すステップと、
前記記憶された乱数シードSを前記メモリ回路から取り出すステップと、
前記乱数シードSに基づいて前記素数を再生成するステップと
前記素数に基づいて暗号鍵を生成するステップと
をさらに備える、請求項1に記載の方法。
【請求項５】
前記シードSに基づいて前記乱数Rを生成するステップは、
前記シードSを入力として受信するとともに前記乱数Rを出力として生成する一方向関数fを実行することを含み、前記一方向関数fは、セキュアハッシュ関数および/またはブロック暗号のうちの少なくとも1つである、
請求項1に記載の方法。
【請求項６】
メモリ回路と、
前記メモリ回路に通信可能に結合された処理回路とを備える装置であって、前記処理回路は、
生成される乱数Rが素数であると決定されるまで、
kビットを有する乱数シードSを生成することと、
前記シードSを入力として受信するとともに前記乱数Rを出力として生成する一方向関数fを適用することによって、nビットを有する前記乱数Rを前記シードSに基づいて生成することであって、kがnよりも小さい、生成することと、
前記乱数Rが素数であるかどうかを決定することとを、
繰り返し行うことによって素数を生成し、
素数であると決定された前記乱数Rを生成するために使用された前記乱数シードSを前記メモリ回路に記憶するように構成される、装置。
【請求項７】
前記乱数シードSは、1つまたは複数の素数を得るための要求を暗号鍵生成プロセスから受信する前に記憶され、
前記処理回路は、
前記記憶された乱数シードSを前記メモリ回路から取り出し、
前記乱数シードSに基づいて前記素数を再生成し、
前記素数に基づいて暗号鍵を生成するようにさらに構成される、請求項6に記載の装置。
【請求項８】
そこに記憶された1つまたは複数の命令を有するコンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのプロセッサによって実行されると、前記プロセッサに請求項1から5のいずれか一項に記載の方法を実行させる、コンピュータ可読記憶媒体。
【請求項９】
kビットを有する乱数シードSおよびgビットをそれぞれ有する複数の追加シードTiを生成するステップと、
前記複数の追加シードTiのうちの相異なる追加シードおよび前記乱数シードSにそれぞれ基づく複数の第2シードSiを生成するステップと、
nがk+gよりも小さい場合にnビットをそれぞれ有する複数の乱数Riを生成するステップであって、前記複数の乱数Riの各々は、前記複数の第2シードSiのうちの相異なる第2シードに基づくステップと、
前記複数の乱数Riのうちの少なくとも1つの乱数RPが素数であることを決定するステップであって、前記乱数RPは、前記複数の第2シードSiのうちの第2シードSPに基づき、前記第2シードSPは、前記複数の追加シードTiのうちの追加シードTPおよび前記乱数シードSに基づくステップと、
前記乱数シードSおよび前記追加シードTPをメモリ回路に記憶するステップと
を備える方法。
【請求項１０】
前記記憶された乱数シードSおよび前記追加シードTPを前記メモリ回路から取り出すステップと、
前記乱数シードSおよび前記追加シードTPに基づいて、前記素数性乱数RPを再生成するステップと
をさらに備える請求項9に記載の方法。
【請求項１１】
前記乱数シードSおよび前記追加シードTPは、1つまたは複数の素数を得るための要求を暗号鍵生成プロセスから受信する前に記憶され、前記方法は、
1つまたは複数の素数を得るための前記要求を前記暗号鍵生成プロセスから受信するステップと、
前記素数性乱数RPに基づいて暗号鍵を生成するステップと、
前記暗号鍵を前記暗号鍵生成プロセスに供給するステップと
をさらに備える請求項10に記載の方法。
【請求項１２】
前記複数の第2シードSiのうちの前記相異なる第2シードに基づいて前記複数の乱数Riを生成するステップは、
前記複数の第2シードSiの各々を入力として受信するとともに前記複数の乱数Riを出力として生成する一方向関数fを実行することを含み、前記一方向関数fは、セキュアハッシュ関数および/またはブロック暗号のうちの少なくとも1つである、
請求項9に記載の方法。
【請求項１３】
前記複数の乱数Riのうちの少なくとも1つの乱数が素数でないことを決定するステップと、
gビットを有する別の追加シードT2を生成するステップと、
前記追加シードT2および前記乱数シードSに基づいて、別の第2シードS2を生成するステップと、
nビットを有する別の乱数R2を生成するステップであって、前記乱数R2は、前記第2シードS2に基づくステップと、
前記乱数R2が素数であることを決定するステップと、
前記追加シードT2を前記メモリ回路に記憶するステップと
をさらに備える請求項9に記載の方法。
【請求項１４】
メモリ回路と、
前記メモリ回路に通信可能に結合された処理回路とを備える装置であって、前記処理回路は、
kビットを有する乱数シードSおよびgビットをそれぞれ有する複数の追加シードTiを生成し、
前記複数の追加シードTiのうちの相異なる追加シードおよび前記乱数シードSにそれぞれ基づく複数の第2シードSiを生成し、
nがk+gよりも小さい場合にnビットをそれぞれ有する複数の乱数Riを生成することであって、前記複数の乱数Riの各々は、前記複数の第2シードSiのうちの相異なる第2シードに基づくことをし、
前記複数の乱数Riのうちの少なくとも1つの乱数RPが素数であることを決定することであって、前記乱数RPは、前記複数の第2シードSiのうちの第2シードSPに基づき、前記第2シードSPは、前記複数の追加シードTiのうちの追加シードTPおよび前記乱数シードSに基づくことをし、
前記乱数シードSおよび前記追加シードTPを前記メモリ回路に記憶するように構成される、装置。
【請求項１５】
そこに記憶された1つまたは複数の命令を有するコンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのプロセッサによって実行されると、前記プロセッサに請求項8から13のいずれか一項に記載の方法を実行させる、コンピュータ可読記憶媒体。