(57)【要約】【課題】暗号鍵及び乱数の生成方法において、例えば、特許文献２のように文字列（パスワード等）を利用して乱数及び暗号鍵を生成している場合は、パスワードは通常単純な文字列であるため、第三者に推測されにくい文字列の設定が問題になる。【解決手段】利用者の筆記から筆跡データを取得する手段と、筆跡データから乱数を生成する手段と、乱数を利用して暗号鍵を生成する手段とを備える。利用者が何かしらの筆記行為をしたときに、筆跡データを取得する手段によりその筆跡データを取得し、筆跡データから乱数を生成する手段により乱数を発生し、乱数を利用して暗号鍵を生成する手段により暗号化又は復号等に使用可能な鍵を生成する。【選択図】図１
2005094173.tif 000002
【特許請求の範囲】
【請求項１】
暗号鍵を生成する装置であって、利用者の筆記から筆跡データを取得する手段と、筆跡データから乱数を生成する手段と、乱数を利用して暗号鍵を生成する手段を備えたことを特徴とする筆跡データから生成した乱数を用いた暗号鍵生成装置。
【請求項２】
請求項１に記載の暗号鍵生成装置において、筆跡データとして、位置情報、筆圧、筆記に係る相対時間のうち少なくとも２つを値とする関数により乱数を生成することを特徴とする筆跡データから生成した乱数を用いた暗号鍵生成装置。
【請求項３】
請求項１または２に記載の暗号鍵生成装置を利用して暗号鍵を複数のシステムで共有する方法において、同じ暗号鍵を複数のシステムで利用する場合に、上記筆跡データ又は筆跡データから生成した乱数を１つのシステムから他のシステムに送信して共有し、その筆跡データ又は筆跡データから生成した乱数を元にそれぞれのシステムで暗号鍵を生成することを特徴とする暗号鍵を複数のシステムで共有する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子的な署名、暗号化又は復号に使用可能な鍵を生成する方法において、特に利用者の筆記した筆跡データを用いて電子的な署名、暗号化又は復号に使用可能な鍵を生成する装置及びその暗号鍵を複数のシステムにおいて共有する方法に関する。
【背景技術】
【０００２】
近年、セキュリティのために暗号鍵を利用して電子データを暗号化する方法が広く用いられている。暗号鍵を使用した電子データの暗号化は、第三者による盗聴や改ざんに対して有効だが、暗号のシステムの要である暗号鍵（秘密鍵）の元となる予測できない数（乱数）の生成が完全であることが、暗号を容易に解読されないための条件となる。このように暗号鍵の生成には乱数が重要であるが、ＲＦＣ１７５０に示されているように乱数度の高い数を生成することは非常に難しいことが知られている。
【０００３】
秘密鍵及び乱数の生成方法についての従来の技術としては、特許文献１や特許文献２に示されるような文字列（ユーザパスワードなど）、ノイズ信号、時間情報、及び生態情報（指紋・声紋等）を利用した擬似乱数発生器を用いる方法が提案されている。
【０００４】
【特許文献１】特開２００１−１６８８５５号公報
【０００５】
【特許文献２】特開２００１−２６５７３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記従来の方法においては、次のような問題がある。
暗号鍵及び乱数の生成方法において、例えば、特許文献２のように文字列（パスワード等）を利用して乱数及び暗号鍵を生成している場合は、パスワードは通常単純な文字列であるため、第三者に推測されにくい文字列の設定が問題になる。また、このパスワードが漏洩すると暗号鍵の完全性を確保することが難しくなる。パスワード等の文字列に対して時間情報を不可させることでランダム性を高めている装置もあるが、システムにおける時間情報は、データの解像度が低く、システム時計の特性を知っている第三者による予測可能性が高いという問題がある。また、乱数発生のために、生態情報を利用する方法があるが、例えば、特許文献１のように、指紋及び声紋等は本人性を確認する認証には適しているが、乱数としてのランダム性を考慮した場合は完全性が低いという問題がある。
【０００７】
本発明の目的は、上記課題を解決し、第三者から予測されにくい情報によって乱数を生成し、安全性の高い暗号鍵を生成する装置を提供することである。そのとき、第三者の反復によるランダム性の低下を防ぐ手段を提供する。また、他の目的は暗号鍵を複数のシステムで安全に共有する方法を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の乱数を用いた暗号鍵生成装置は、利用者の筆記から筆跡データを取得する手段と、筆跡データから乱数を生成する手段と、乱数を利用して暗号鍵を生成する手段とを備える。
利用者が何かしらの筆記行為をしたときに、筆跡データを取得する手段によりその筆跡データを取得し、筆跡データから乱数を生成する手段により乱数を発生し、乱数を利用して暗号鍵を生成する手段により暗号化又は復号等に使用可能な鍵を生成する。例えば、筆記時に、筆跡データ取得装置を用いて、筆記用紙に対する位置情報、筆圧、及び筆記に係る時間を取得し、これらを筆跡データとして扱う。その筆跡データを規定の関数に代入して、ランダム性の高い乱数を生成する。前述の関数は、単純な加減乗除でも良く、もっと複雑な関数でも良い。そして前述の乱数を用いて、暗号鍵を生成する。乱数を利用して暗号鍵を生成する手段は、従来から用いられている方法によれば良い。このように人間の筆跡は、その人間固有の情報であり、第三者から推測及び真似ることが難しいため、乱数度の高い乱数を発生する事が可能であり、結果安全性の高い暗号鍵を生成することが可能となる。
【０００９】
また、本発明の暗号鍵生成装置の筆跡データから乱数を生成する手段として、筆跡データとして、位置情報、筆圧、筆記に係る相対時間のうち少なくとも２つを値とする関数を用いることにより、より推測しにくく乱数度の高い乱数を生成することができる。
このようにして生成した暗号鍵を複数のシステムで共通に利用する場合、例えばアプリケーションサーバとの間で共通の暗号鍵を用いる場合に、１つのシステムで生成した鍵を他のシステムに送信するのでは暗号鍵が漏洩するおそれがある。そこで本発明の暗号鍵生成装置の機能のうち、少なくとも乱数を利用して暗号鍵を生成する手段、望ましくは加えて筆跡データから乱数を生成する手段を他のシステムにも備え、前述の筆跡データ又は筆跡データから生成した乱数を１つのシステムから他のシステムに送信して、それぞれのシステムで暗号鍵を生成することで、安全に暗号鍵を共有する方法を提供できる。
【００１０】
本発明の実施例によれば、筆跡データ取得装置や電子ペンを利用して記述した内容をサーバへ送信するときなど、異なるシステム間でデータ交換を行うときに、筆跡データ取得装置を用いて取得した筆跡データ又は筆跡データから生成した乱数を異なるシステム間で共有することで、ネットワーク等で暗号鍵の交換をする必要なく、同一の暗号鍵を共有することを可能とした。これにより、安全性の高いデータ交換が可能となる。
また、筆跡データを用いることは、筆跡という視認可能な個人的情報による暗号鍵を生成することになり、より本人との関連の深い暗号鍵を生成する方法を提供することが可能となる。
【００１１】
また、鍵は電子署名においても使用される。電子署名は本人性等を保証する方法であるが、使用される鍵には電子署名を施す利用者の個人的な情報が入っていたほうが好ましいとの見解がある。本発明の筆跡データを利用した暗号鍵生成装置はこの要求に適合する装置である。
【発明の効果】
【００１２】
以上のように、本発明によれば、筆跡データ取得装置を用いて筆記時の位置データ（ｘ座標値及びｙ座標値）、筆圧値、及び記入に係る時間の値を取得し、その筆跡データから乱数性の高い乱数を生成し、その乱数を鍵生成の種とすることにより、第三者から推測されにくい鍵を生成することが可能となる。また、利用者が、意識せずに個人情報に関連付けた唯一性の高い乱数を元にした鍵を生成することが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態を図面を用いて詳細に説明する。
図１は、本発明の暗号鍵生成装置を公開鍵証明書の発行を申請する場合に用いる例の構成を示す図である。
この例で暗号鍵生成装置は筆跡データ取得装置１１、中継装置１２１、鍵生成装置１４１、データベース１５１で構成され、証明書発行装置１３１と情報を送受信して公開鍵証明書を取得する。
【００１４】
筆跡データ取得装置１１は、筆記内容、記入に係る時間、筆圧、位置情報等を取得できる装置である。筆跡データ取得装置１１としては一般的な電子ペンを用いた筆跡取得装置でもデジタイザ等の装置でも、位置データと筆記を対応つけて取得できる装置であれば良く、望ましくは筆圧値や筆記速度を計測できれば良く、特に限定されない。また、中継装置１２１と鍵生成装置１４１とは同じ装置の機能であっても良い。
【００１５】
利用者が筆跡データ取得装置１１を用いて、公開鍵証明書の取得申請に必要な事項を筆記で記入すると、筆跡データ取得装置１１は、中継装置１２１へ筆跡データ及び筆記内容を送信する。鍵生成装置１４１は、筆跡データである位置データ（ｘ座標値及びｙ座標値）、筆圧値、及び記入に係る時間の値を規定の関数に代入して鍵生成の種となる乱数を生成し、その乱数を用いて鍵ペア（秘密鍵及び公開鍵）を生成する。データベース１５１は、鍵生成装置１４１が過去に算出した乱数を記憶している。鍵生成装置１４１は、新たに算出した乱数とデータベース１５１に記憶されている過去に算出した乱数データとを比較することにより、鍵生成の種として同じ乱数を繰り返し用いることを避けることができる。証明書発行装置１３１は、中継装置１２１から送られてきた公開鍵に対して公開鍵証明書を発行する装置である。なお、中継装置１２１、鍵生成装置１４１、データベース１５１、及び証明書発行装置１３１は、一つのサーバでも良い。
【００１６】
図２は、本発明の実施例における筆跡データ取得装置において取得する筆跡のデータテーブルのデータ構成例である。
データ領域３１１は、筆跡データ取得装置１１が取得する位置情報の軌跡のｘ座標成分である。データ領域３１３は、筆跡データ取得装置１１が取得する位置情報の軌跡のｙ座標成分である。データ領域３１５は、筆跡データ取得装置１１が取得する記入に係る筆圧である。データ領域３１７は、筆跡データ取得装置１１が取得する記入に係る相対時間である。データテーブル３００はデータ領域３１１・３１３・３１５・３１７を包含し、筆跡データとして扱われる。
【００１７】
図３は、本発明の実施例における公開鍵証明書発行申請時の処理の流れ図である。
利用者１７１は、筆跡データ取得装置１１を用いて公開鍵証明書の取得申請に必要な項目を記入する（ステップ２０１）。筆跡データ取得装置１１は、記憶された筆跡データ及び筆記内容を中継装置１２１へ送信する（ステップ２０３）。中継装置１２１は、筆跡データ及び筆記内容を受信し、筆跡データを鍵生成装置１４１へ送信する（ステップ２０５）。鍵生成装置１４１は筆跡データである位置情報（ｘ座標値及びｙ座標値）、筆圧の値、記入に係る相対時間の値を規定の関数に代入して乱数を算出する（ステップ２０７）。鍵生成装置１４１は、データベース１５１を参照し、ステップ２０７で生成した乱数が過去に算出された乱数と一致しないかを確認する。もし、ステップ２０７で算出した乱数がデータベース１５１に記憶している乱数と一致した場合は、利用者１７１に対して、再度申請を求める（ステップ２２３）。
【００１８】
ステップ２０７で算出した乱数がデータベース１５１に記憶している乱数と一致しなかった場合は、鍵生成装置１４１は、ステップ２０７で算出した乱数から鍵ペア（秘密鍵及び公開鍵）を生成する（ステップ２１１）。鍵生成装置１４１は、生成した鍵を中継装置１２１を経由して証明書発行装置１３１へ送信する（ステップ２１３）。証明書発行装置１３１は、送られてきた公開鍵に対して公開鍵証明書の発行を行う（ステップ２１５）。証明書発行装置１３１は、中継装置１２１へ発行した公開鍵証明書を送信する（ステップ２１７）。中継装置は、ステップ２１１で生成された秘密鍵とステップ２１５で発行された公開鍵証明書を利用者１７１へ送信する（ステップ２１９）。利用者１７１は、中継装置１２１から利用者自身の秘密鍵及び公開鍵証明書を受信する（ステップ２２１）。
【００１９】
次に、前述の筆跡データ又は筆跡データから生成した乱数を複数のシステム間で共有することにより、筆跡データから生成される暗号鍵を複数のシステム間で共有する実施の形態を図面を用いて説明する。
【００２０】
図４は、本発明の実施例における電子ペンによる筆記情報を他のシステムに安全に送信する装置を示す図である。ここでは他のシステムとしてアプリケーションサーバの例を用いている。
筆跡データ取得装置１１は前述と同様である。鍵生成装置４１及び鍵生成装置４５は、入力された筆跡データをもとに乱数を発生し、鍵ペアを生成する装置である。アプリケーションサーバ３１は、筆跡データ取得装置１１を用いた筆記内容に対する何らかの処理機能を有したサーバである。本実施例では、中継装置２１とアプリケーションサーバ３１が、それぞれ筆跡データ取得装置１１が送信する筆跡データと同様の筆跡データを用いて生成した同じ鍵を利用して、中継装置２１とアプリケーションサーバ３１との間で第三者による盗聴や改ざん等の恐れのない通信状態で、筆跡データ取得装置１１が送信する筆記内容データを交換することを可能とする。なお、中継装置２１、鍵生成装置４１、アプリケーションサーバ３１、及び鍵生成装置４５は、一つのサーバでも良い。
【００２１】
図５は、本発明の実施例における電子ペンによる筆記情報をアプリケーションサーバに安全に送信するときの処理の流れ図である。利用者が筆跡データ取得装置１１を用いて筆記行為を行ったとき、筆跡データ取得装置は、筆跡データと筆記内容を中継装置１２１へ送信する（ステップ５１）。中継装置２１は、筆跡データ及び筆記内容を受信し（ステップ５３）、アプリケーションサーバ３１に対してアクセス要求を送信する（ステップ５５）。アプリケーションサーバ３１は、中継装置２１からアクセス要求を受信すると（ステップ５７）、中継装置２１へリプライを送信し（ステップ５９）、アプリケーションサーバ証明書（公開鍵証明書）を送信する（ステップ６３）。中継装置２１は、アプリケーションサーバ３１からリプライを受信し（ステップ６１）、アプリケーションサーバ証明書（公開鍵証明書）を受信する（ステップ６５）。
【００２２】
中継装置２１は、受信したアプリケーションサーバ証明書から公開鍵を抽出する（ステップ６７）。中継装置２１はステップ５３で受信した筆跡データをステップ６７で抽出した公開鍵を使用して暗号化し、暗号データをアプリケーションサーバ３１へ送信し（ステップ６９）、筆跡データを鍵生成装置４１へ送信する（ステップ７３）。
【００２３】
アプリケーションサーバ３１は、ステップ６９で送信された暗号データを受信し、アプリケーションサーバ証明書（公開鍵証明書）から抽出される公開鍵に対応する秘密鍵で暗号データを復号し、筆跡データを抽出し（ステップ７１）、その筆跡データを鍵生成装置４５へ送信する（ステップ８３）。鍵生成装置４１は、中継装置２１から送信された筆跡データを受信し（ステップ７５）、筆跡データである位置情報（ｘ座標値及びｙ座標値）、筆圧の値、記入に係る相対時間の値を規定の関数に代入して乱数を算出し、その乱数から鍵を生成し（ステップ７７）、生成された鍵を中継装置２１へ送信する（ステップ７９）。
【００２４】
鍵生成装置４５は、筆跡データを受信し（ステップ８５）、筆跡データである位置情報（ｘ座標値及びｙ座標値）、筆圧の値、記入に係る相対時間の値を規定の関数に代入して乱数を算出し、その乱数から鍵を生成し（ステップ８７）、生成された鍵をアプリケーションサーバ３１へ送信する（ステップ８９）。アプリケーションサーバ３１は、ステップ８９で送信された鍵を受信する（ステップ９０）。中継装置２１は、ステップ７９で送信された鍵を受信し（ステップ８１）、ステップ５３で受信した筆記内容をその鍵で暗号化し（ステップ９１）、暗号化した筆記内容をアプリケーションサーバ３１へ送信する（ステップ９３）。アプリケーションサーバ３１は、中継装置２１から暗号化された筆記内容を受信し、暗号化された筆記内容をステップ８７で生成された鍵で復号し（ステップ９５）、筆記内容をアプリケーションで処理する（ステップ９７）。
【００２５】
このようにして、電子ペンによる筆記情報をアプリケーションサーバに安全に送信し、鍵生成装置４１と鍵生成装置４５で同じ暗号鍵を生成し、異なるサーバ間で暗号鍵を安全に共有することが可能となる。
【図面の簡単な説明】
【００２６】
【図１】本発明の暗号鍵生成装置を公開鍵証明書の発行を申請する場合に用いる例の構成を示す図。
【図２】本発明の実施例における筆跡データ取得装置において取得する筆跡のデータテーブルのデータ構成例を示す図。
【図３】本発明の実施例における公開鍵証明書発行申請時の処理の流れ図。
【図４】本発明の実施例における電子ペンによる筆記情報を他のシステムに安全に送信する装置を示す図。
【図５】本発明の実施例における電子ペンによる筆記情報をアプリケーションサーバに安全に送信するときの処理の流れ図。
【符号の説明】
【００２７】
１１   筆跡データ取得装置
２１   中継装置
３１   アプリケーションサーバ
４１   鍵生成装置
４５   鍵生成装置
１２１ 中継装置
１３１ 証明書発行装置
１４１ 鍵生成装置
１５１ データベース
１７１ 利用者
【図１】
2005094173.tif 000003
【図２】
2005094173.tif 000004
【図３】
2005094173.tif 000005
【図４】
2005094173.tif 000006
【図５】
2005094173.tif 000007