JPH10240128A

Ciphering device, cryptographic key generation method and method of managing cryptographic key, and prime number generation device and method therefor

Abstract

[Task] To provide a cryptographic device that can generate a sufficiently large prime number that is the basis for cryptographic key generation by using less computer resources in the own device.

Solution.A cryptographic device that generates an encryption key based on a prime number in its own device, and is a first that generates a first prime number of 2 n bits or less based on all prime numbers of a predetermined value of n bits or less. And the second prime number generating means for generating a second prime number having a predetermined bit length larger than 2 n bits based on all the prime numbers of n bits or less and the first prime number, and the predetermined prime number generating means. It is characterized by having an encryption key generation means for generating an encryption key using a second prime number of the bit length of.

Term

Term ended

Projected expiry passed 15 December 2017, 8.8 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

21 claims: 21 independent, 0 dependent

  1. 1
    【特許請求の範囲】 【請求項1】自装置内で素数をもとに暗号鍵を生成する暗号装置であって、 予め定められたnビット以下の値のすべての素数をもとに2nビット以下の第1の素数を生成する第1の素数生成手段と、 前記nビット以下のすべての素数および前記第1の素数をもとに2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成手段と、 前記所定のビット長の第2の素数を用いて暗号鍵を生成する暗号鍵生成手段とを備えたことを特徴とする暗号装置。
  2. 2
    【請求項2】自装置内で暗号鍵を生成する暗号装置であって、 予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成手段と、 前記第1の素数をもとに該第1の素数より大きい素数候補を生成し、前記nビット以下のすべての素数を少なくとも用いた素数判定により該素数候補が合成数でないと判定された場合には該素数候補を新たな第1の素数とし該新たな第1の素数をもとに該素数候補より大きい新たな素数候補を生成する処理を再帰的に繰り返すとともに、素数候補が合成数であると判定された場合には前記合成数と判定された時点での第1の素数をもとに素数候補を生成し直しあらためて該処理を再帰的に繰り返すことにより、2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成手段と、 前記所定のビット長の素数を用いて暗号鍵を生成する暗号鍵生成手段とを備えたことを特徴とする暗号装置。
  3. 3
    【請求項3】自装置内で暗号鍵を生成する暗号装置であって、 予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成手段と、 前記第1の素数生成手段により生成された2nビット以下の第1の素数および前記nビット以下のすべての素数をもとに2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成手段と、 前記第1および第2の素数生成手段を用いて生成された0.4mビットの第2の素数および前記第2の素数をもとに0.5mビットの第3の素数を生成する第3の素数生成手段と、 前記第1および第2の素数生成手段を用いて生成された他の0.4mビットの第2の素数、前記第3の素数生成手段により生成された0.5mビットの第3の素数および前記nビット以下のすべての素数をもとにmビットの第4の素数を生成する第4の素数生成手段と、 前記第4の素数生成手段により生成された前記mビットの第4の素数を用いて暗号鍵を生成する暗号鍵生成手段とを備えたことを特徴とする暗号装置。
  4. 4
    【請求項4】自装置内で暗号鍵を生成する暗号装置であって、 前記暗号鍵を生成する暗号鍵生成手段と、 前記暗号鍵生成手段により前記暗号鍵が生成されたか否かを示す制御情報を格納する手段と、 前記制御情報により前記暗号鍵が生成されたことが示されている間は、前記暗号鍵生成手段による前記暗号鍵の生成を不可にする手段とを備えたことを特徴とする暗号装置。
  5. 5
    【請求項5】自装置内で暗号鍵を生成する暗号装置であって、 前記暗号鍵を生成する暗号鍵生成手段と、 前記暗号鍵生成手段により前記暗号鍵が生成された場合、直ちに、生成された前記暗号鍵のチェックサムを生成するチェックサム生成手段と、 前記暗号鍵とそのチェックサムを対応付けて格納する格納手段とを備えたことを特徴とする暗号装置。
  6. 6
    【請求項6】暗号装置内で素数をもとに暗号鍵を生成する暗号鍵生成方法であって、 予め定められたnビット以下の値のすべての素数をもとに2nビット以下の第1の素数を生成し、 前記nビット以下のすべての素数および前記第1の素数をもとに2nビットより大きい所定のビット長の第2の素数を生成し、 前記所定のビット長の第2の素数を用いて暗号鍵を生成することを特徴とする暗号鍵生成方法。
  7. 7
    【請求項7】暗号装置内で素数をもとに暗号鍵を生成する暗号鍵生成方法であって、 予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成ステップと、 前記第1の素数をもとに該第1の素数より大きい素数候補を生成し、前記nビット以下のすべての素数を少なくとも用いた素数判定により該素数候補が合成数でないと判定された場合には該素数候補を新たな第1の素数とし該新たな第1の素数をもとに該素数候補より大きい新たな素数候補を生成する処理を再帰的に繰り返すとともに、素数候補が合成数であると判定された場合には前記第1の素数生成ステップにて合成数と判定された時点での第1の素数をもとに素数候補を生成し直しあらためて該処理を再帰的に繰り返すことにより、2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成ステップと、 前記所定のビット長の素数を用いて暗号鍵を生成する暗号鍵生成ステップとを有することを特徴とする暗号鍵生成方法。
  8. 8
    【請求項8】暗号装置内で素数をもとに暗号鍵を生成する暗号鍵生成方法であって、 予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成ステップと、 前記第1の素数生成ステップにて生成された2nビット以下の第1の素数および前記nビット以下のすべての素数をもとに2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成ステップと、 前記第1および第2の素数生成ステップにより生成された0.4mビットの第2の素数および前記第2の素数をもとに0.5mビットの第3の素数を生成する第3の素数生成ステップと、 前記第1および第2の素数生成ステップにより生成された他の0.4mビットの第2の素数、前記第3の素数生成ステップにより生成された0.5mビットの第3の素数および前記nビット以下のすべての素数をもとにmビットの第4の素数を生成する第4の素数生成ステップと、 前記第4の素数生成ステップにて生成された前記mビットの第4の素数を用いて暗号鍵を生成する暗号鍵生成ステップとを有することを特徴とする暗号鍵生成方法。
  9. 9
    【請求項9】暗号鍵を生成する暗号鍵生成手段を備えた暗号装置における暗号鍵生成方法であって、 前記暗号鍵生成手段により前記暗号鍵を生成するのに先だって、前記暗号鍵生成手段により前記暗号鍵が生成された否かを示す制御情報を参照し、該制御情報により前記暗号鍵が生成されていないことが示されている場合にのみ、前記暗号鍵生成手段により前記暗号鍵を生成し、 前記暗号鍵生成手段により前記暗号鍵を生成した場合、前記制御情報を前記暗号鍵が生成されたことを示す状態にすることを特徴とする暗号鍵生成方法。
  10. 10
    【請求項10】自装置内で暗号鍵を生成する暗号装置における暗号鍵管理方法であって、 前記暗号鍵を生成し、直ちに該暗号鍵のチェックサムを生成し、 生成された前記暗号鍵と前記チェックサムとを対応付けて格納することを特徴とする暗号鍵管理方法。
  11. 11
    【請求項11】予め定められたnビット以下の値のすべての素数をもとに2nビット以下の素数を生成する第1の素数生成手段と、 前記nビット以下のすべての素数および前記2nビット以下の素数をもとに2nビットより大きい前記所定のビット長の素数を生成する第2の素数生成手段とを備えたことを特徴とする素数生成装置。
  12. 12
    【請求項12】予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成手段と、 前記第1の素数をもとに該第1の素数より大きい素数候補を生成し、前記nビット以下のすべての素数を少なくとも用いた素数判定により該素数候補が合成数でないと判定された場合には該素数候補を新たな第1の素数とし該新たな第1の素数をもとに該素数候補より大きい新たな素数候補を生成する処理を再帰的に繰り返すとともに、素数候補が合成数であると判定された場合には前記合成数と判定された時点での第1の素数をもとに素数候補を生成し直しあらためて該処理を再帰的に繰り返すことにより、2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成手段とを備えたことを特徴とする素数生成装置。
  13. 13
    【請求項13】予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成手段と、 前記第1の素数生成手段により生成された2nビット以下の第1の素数および前記nビット以下のすべての素数をもとに2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成手段と、 前記第1および第2の素数生成手段を用いて生成された0.4mビットの第2の素数および前記第2の素数をもとに0.5mビットの第3の素数を生成する第3の素数生成手段と、 前記第1および第2の素数生成手段を用いて生成された他の0.4mビットの第2の素数、前記第3の素数生成手段により生成された0.5mビットの第3の素数および前記nビット以下のすべての素数をもとにmビットの第4の素数を生成する第4の素数生成手段とを備えたことを特徴とする素数生成装置。
  14. 14
    【請求項14】予め定められたnビット以下の値のすべての素数をもとに2nビット以下の第1の素数を生成し、 前記nビット以下のすべての素数および前記2nビット以下の素数をもとに2nビットより大きい前記所定のビット長の素数を生成することを特徴とする素数生成方法。
  15. 15
    【請求項15】予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成ステップと、 前記第1の素数をもとに該第1の素数より大きい素数候補を生成し、前記nビット以下のすべての素数を少なくとも用いた素数判定により該素数候補が合成数でないと判定された場合には該素数候補を新たな第1の素数とし該新たな第1の素数をもとに該素数候補より大きい新たな素数候補を生成する処理を再帰的に繰り返すとともに、素数候補が合成数であると判定された場合には前記第1の素数生成ステップにて合成数と判定された時点での第1の素数をもとに素数候補を生成し直しあらためて該処理を再帰的に繰り返すことにより、2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成ステップとを有することを特徴とする素数生成方法。
  16. 16
    【請求項16】予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成ステップと、 前記第1の素数生成ステップにて生成された2nビット以下の第1の素数および前記nビット以下のすべての素数をもとに2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成ステップと、 前記第1および第2の素数生成ステップにより生成された0.4mビットの第2の素数および前記第2の素数をもとに0.5mビットの第3の素数を生成する第3の素数生成ステップと、 前記第1および第2の素数生成ステップにより生成された他の0.4mビットの第2の素数、前記第3の素数生成ステップにより生成された0.5mビットの第3の素数および前記nビット以下のすべての素数をもとにmビットの第4の素数を生成する第4の素数生成ステップとを有することを特徴とする素数生成方法。
  17. 17
    【請求項17】コンピュータに、予め定められたnビット以下の値のすべての素数をもとに2nビット以下の第1の素数を生成する手順と、前記nビット以下のすべての素数および前記第1の素数をもとに2nビットより大きい所定のビット長の第2の素数を生成する手順とを実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。
  18. 18
    【請求項18】コンピュータに、予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成ステップと、前記第1の素数をもとに該第1の素数より大きい素数候補を生成し、前記nビット以下のすべての素数を少なくとも用いた素数判定により該素数候補が合成数でないと判定された場合には該素数候補を新たな第1の素数とし該新たな第1の素数をもとに該素数候補より大きい新たな素数候補を生成する処理を再帰的に繰り返すとともに、素数候補が合成数であると判定された場合には前記第1の素数生成ステップにて合成数と判定された時点での第1の素数をもとに素数候補を生成し直しあらためて該処理を再帰的に繰り返すことにより、2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成ステップとを実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。
  19. 19
    【請求項19】コンピュータに、予め定められたnビット以下のすべての素数を用いて所定の2nビット以下の乱数を素数判定することにより2nビット以下の第1の素数を生成する第1の素数生成ステップと、前記第1の素数生成ステップにて生成された2nビット以下の第1の素数および前記nビット以下のすべての素数をもとに2nビットより大きい所定のビット長の第2の素数を生成する第2の素数生成ステップと、前記第1および第2の素数生成ステップにより生成された0.4mビットの第2の素数および前記第2の素数をもとに0.5mビットの第3の素数を生成する第3の素数生成ステップと、前記第1および第2の素数生成ステップにより生成された他の0.4mビットの第2の素数、前記第3の素数生成ステップにより生成された0.5mビットの第3の素数および前記nビット以下のすべての素数をもとにmビットの第4の素数を生成する第4の素数生成ステップとを実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。
  20. 20
    【請求項20】コンピュータに、暗号鍵を生成する前に暗号鍵が生成された否かを示す制御情報を参照する手順と、該制御情報により前記暗号鍵が生成されていないことが示されている場合にのみ暗号鍵を生成する手順と、暗号鍵を生成した場合に前記制御情報を暗号鍵が生成されたことを示す状態にする手順とを実行させるためのプログラム記録したコンピュータ読取り可能な記録媒体。
  21. 21
    【請求項21】コンピュータに、暗号鍵を生成する手順と、暗号鍵を生成したら直ちに該暗号鍵のチェックサムを生成する手順と、生成された暗号鍵とチェックサムとを対応付けて所定の記憶領域に格納する手順とを実行させるためのプログラム記録したコンピュータ読取り可能な記録媒体。
Independent claims21