(57)【要約】  情報処理方法は、楕円曲線上の座標を示すマスター公開鍵の設定工程、非公開情報である受信者秘密鍵とマスター公開鍵との積を示す受信者公開鍵を生成する工程、非公開情報である暗号化対象情報とマスター公開鍵との積を示す中間鍵を生成する工程、非公開情報である乱数とマスター公開鍵との積を示す第１送信情報を生成する工程、乱数と受信者公開鍵との積と、中間鍵との加算を示す第２送信情報を生成する工程、少なくとも暗号化対象情報及び中間鍵が示す情報を用いた演算によって導出される第３送信情報を生成する工程、受信者秘密鍵と第１送信情報との積である第１復号用情報を生成する工程、第２送信情報から第１復号用情報を減じて中間鍵を得る工程、及び、中間鍵と第３送信情報に基づいて暗号化対象情報を得る工程を有する。
2017163434.tif 000002
【特許請求の範囲】
【請求項１】
非公開情報である暗号化対象情報を取り扱う情報処理装置による情報処理方法であって、
楕円曲線上の座標を示す公開情報であるマスター公開鍵の設定工程と、
非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を生成する工程と、
非公開情報である暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する工程と、
非公開情報である乱数と前記マスター公開鍵との積を示す第１送信情報を生成する工程と、
前記乱数と前記受信者公開鍵との積と、前記中間鍵との加算を示す第２送信情報を生成する工程と、
少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第３送信情報を生成する工程と、
前記受信者秘密鍵と前記第１送信情報との積である第１復号用情報を生成する工程と、
前記第２送信情報から前記第１復号用情報を減じて前記中間鍵を得る工程と、
前記中間鍵と前記第３送信情報に基づいて前記暗号化対象情報を得る工程と
を有する情報処理方法。
【請求項２】
前記第３送信情報は、前記中間鍵が示すｘ座標と前記暗号化対象情報との加算である
請求項１に記載の情報処理方法。
【請求項３】
前記第３送信情報は、前記第１送信情報が示すｘ座標と前記中間鍵が示すｘ座標との積と、前記第１送信情報が示すｙ座標と前記中間鍵が示すｙ座標との積とが前記暗号化対象情報に付加された情報である
請求項１に記載の情報処理方法。
【請求項４】
前記中間鍵が示すｘ座標をＰｘとし、前記中間鍵が示すｙ座標をＰｙとし、前記第１送信情報が示すｘ座標をＣ１ｘとし、前記第１送信情報が示すｙ座標をＣ１ｙとし、前記第２送信情報が示すｘ座標をＣ２ｘとし、前記第２送信情報が示すｙ座標をＣ２ｙとし、前記第３送信情報をｃ３とし、前記暗号化対象情報をｐとすると、式（１）が成立する
請求項１に記載の情報処理方法。
ｃ３＝（Ｃ１ｘＰｘ  ｍｏｄ  Ｃ２ｘ）＋（Ｃ１ｙＰｙ  ｍｏｄ  Ｃ２ｙ）＋ｐ…（１）
【請求項５】
情報の送信者及び情報の受信者が操作する１つ以上の端末と、前記端末と通信可能に接続されたサーバとを有し、前記送信者から前記受信者宛てに送信される非公開情報である暗号化対象情報を暗号化する情報処理システムであって、
前記サーバは、
楕円曲線上の座標を示す公開情報であるマスター公開鍵及び非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を記憶する第１記憶部を備え、
前記端末又は前記サーバは、
前記暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する中間鍵生成部と、
非公開情報である乱数と前記マスター公開鍵との積を示す第１送信情報、前記乱数と前記受信者公開鍵との積と前記中間鍵との加算を示す第２送信情報、少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第３送信情報を生成する暗号化部と、
前記受信者秘密鍵と前記第１送信情報との積である第１復号用情報を算出し、前記第２送信情報から前記第１復号用情報を減じて前記中間鍵を導出し、導出された前記中間鍵と前記第３送信情報に基づいて前記暗号化対象情報を得る復号化部と
を備える情報処理システム。
【請求項６】
前記送信者の端末は、前記中間鍵生成部及び前記暗号化部を備え、
前記受信者の端末は、
前記復号化部と、
前記受信者秘密鍵を記憶する第２記憶部とを備え、
前記送信者の端末は、前記第１送信情報、前記第２送信情報及び前記第３送信情報を前記サーバに送信し、
前記サーバは、前記第１送信情報、前記第２送信情報及び前記第３送信情報を前記受信者の端末に送信する
請求項５に記載の情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理方法及び情報処理システムに関する。
【背景技術】
【０００２】
コンピュータの利用者間で伝送されるデータの機密性を高める目的で、データを暗号化して送信し、受信者が復号化する方法が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２４２９９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
暗号化されたデータの復号化には、暗号化に用いられたパスワード等、鍵として機能するデータが必要になる。パスワードを用いる方法は簡便であるが、パスワードを受信者に知らせる必要があり、パスワードの漏えいが問題になることがある。【０００５】
本発明では、より高い機密性を確保することができる情報処理方法及び情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、非公開情報である暗号化対象情報を取り扱う情報処理装置による情報処理方法であって、楕円曲線上の座標を示す公開情報であるマスター公開鍵の設定工程と、非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を生成する工程と、非公開情報である暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する工程と、非公開情報である乱数と前記マスター公開鍵との積を示す第１送信情報を生成する工程と、前記乱数と前記受信者公開鍵との積と、前記中間鍵との加算を示す第２送信情報を生成する工程と、少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第３送信情報を生成する工程と、前記受信者秘密鍵と前記第１送信情報との積である第１復号用情報を生成する工程と、前記第２送信情報から前記第１復号用情報を減じて前記中間鍵を得る工程と、前記中間鍵と前記第３送信情報に基づいて前記暗号化対象情報を得る工程とを有する。【０００７】
本発明の望ましい態様として、前記第３送信情報は、前記中間鍵が示すｘ座標と前記暗号化対象情報との加算である。【０００８】
本発明の望ましい態様として、前記第３送信情報は、前記第１送信情報が示すｘ座標と前記中間鍵が示すｘ座標との積と、前記第１送信情報が示すｙ座標と前記中間鍵が示すｙ座標との積とが前記暗号化対象情報に付加された情報である。【０００９】
本発明の望ましい態様として、前記中間鍵が示すｘ座標をＰｘとし、前記中間鍵が示すｙ座標をＰｙとし、前記第１送信情報が示すｘ座標をＣ１ｘとし、前記第１送信情報が示すｙ座標をＣ１ｙとし、前記第２送信情報が示すｘ座標をＣ２ｘとし、前記第２送信情報が示すｙ座標をＣ２ｙとし、前記第３送信情報をｃ３とし、前記暗号化対象情報をｐとすると、式（１）が成立する。
ｃ３＝（Ｃ１ｘＰｘ  ｍｏｄ  Ｃ２ｘ）＋（Ｃ１ｙＰｙ  ｍｏｄ  Ｃ２ｙ）＋ｐ…（１）【００１０】
また、上述した課題を解決し、目的を達成するために、本発明は、情報の送信者及び情報の受信者が操作する１つ以上の端末と、前記端末と通信可能に接続されたサーバとを有し、前記送信者から前記受信者宛てに送信される非公開情報である暗号化対象情報を暗号化する情報処理システムであって、前記サーバは、楕円曲線上の座標を示す公開情報であるマスター公開鍵及び非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を記憶する第１記憶部を備え、前記端末又は前記サーバは、前記暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する中間鍵生成部と、非公開情報である乱数と前記マスター公開鍵との積を示す第１送信情報、前記乱数と前記受信者公開鍵との積と前記中間鍵との加算を示す第２送信情報、少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第３送信情報を生成する暗号化部と、前記受信者秘密鍵と前記第１送信情報との積である第１復号用情報を算出し、前記第２送信情報から前記第１復号用情報を減じて前記中間鍵を導出し、導出された前記中間鍵と前記第３送信情報に基づいて前記暗号化対象情報を得る復号化部とを備える。【００１１】
本発明の望ましい態様として、前記送信者の端末は、前記中間鍵生成部及び前記暗号化部を備え、前記受信者の端末は、前記復号化部と、前記受信者秘密鍵を記憶する第２記憶部とを備え、前記送信者の端末は、前記第１送信情報、前記第２送信情報及び前記第３送信情報を前記サーバに送信し、前記サーバは、前記第１送信情報、前記第２送信情報及び前記第３送信情報を前記受信者の端末に送信する。
【発明の効果】
【００１２】
本発明によれば、より高い機密性を確保することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の一実施形態に係る情報処理システムの主要構成を示すブロック図である。
【図２】図２は、暗号化及び復号化に係る各種のデータの関係を模式的に示す図である。
【図３】図３は、暗号化対象情報を暗号化して電子メールで送信する場合の例を模式的に示す図である。
【図４】図４は、図２に示す各種のデータが取り得る具体的な形式の一例及び楕円曲線の方程式の一例を示す図である。
【図５】図５は、楕円曲線の一例を示す図である。
【図６】図６は、受信者による準備処理の流れの一例を示すフローチャートである。
【図７】図７は、送信者による暗号化処理及びデータの送信に係る処理の流れの一例を示すフローチャートである。
【図８】図８は、受信者による復号化処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
次に、本発明の実施形態を、図面を参照して詳細に説明する。図１は、本発明の一実施形態に係る情報処理システムの主要構成を示すブロック図である。図２は、暗号化及び復号化に係る各種のデータの関係を模式的に示す図である。図３は、暗号化対象情報を暗号化して電子メールで送信する場合の例を模式的に示す図である。図４は、図２に示す各種のデータが取り得る具体的な形式の一例及び楕円曲線の方程式の一例を示す図である。情報処理システムは、情報の送信者（以下、単に送信者）及び情報の受信者（以下、単に受信者）が操作する１つ以上の端末２０と、端末２０と通信可能に接続されたサーバ１０とを有し、送信者から受信者宛てに送信される非公開情報である暗号化対象情報５４（ｐ）を暗号化する情報処理システムである。なお、公開情報とは、送信者及び受信者以外の第三者が取得することができ、その情報の内容を把握可能な情報をさす。非公開情報とは、送信者及び受信者以外の第三者による情報の取得及び情報の内容の把握がなされるべきでない情報をさす。
【００１５】
サーバ１０は、演算部１１、記憶部１２、通信部１３等を備える。演算部１１は、ＣＰＵ（Central  Processing  Unit）等の演算装置を有し、記憶部１２に記憶されているソフトウェア・プログラム及び係るソフトウェア・プログラムが参照するデータ（以下、プログラム等）を読み出して実行処理し、情報処理システムの動作に係る各種の処理を行う。記憶部１２は、例えば半導体メモリ、ハードディスクドライブ等、各種の記憶装置を有し、図示しないプログラム等を記憶する。通信部１３は、ネットワークインタフェースコントローラ（ＮＩＣ：Network  Interface  Controller)、通信回線Ｎに接続するためのインタフェース等を有し、通信回線Ｎを介して接続された端末２０との間で行われる通信に係る各種の処理を行う。
【００１６】
端末２０は、演算部２１、記憶部２２、通信部２３、入力部２４、表示部２５等を備える。端末２０の演算部２１、記憶部２２及び通信部２３の機能的な特徴は、サーバ１０の演算部１１、記憶部１２及び通信部１３と同様である。入力部２４は、例えばキーボード、マウス等を有し、端末２０を操作する利用者からの入力操作を受け付ける。表示部２５は、例えば液晶ディスプレイ等の表示装置、ビデオカード等を有し、端末２０の演算部２１による処理に応じた表示出力を行う。
【００１７】
本実施形態の情報処理システムは、送信者に用いられる端末２０である端末２０ａと受信者に用いられる端末２０である端末２０ｂとが別個の端末である。演算部２１、記憶部２２、通信部２３、入力部２４、表示部２５の符号は、送信者の端末２０ａの演算部２１ａ、記憶部２２ａ、通信部２３ａ、入力部２４ａ、表示部２５ａと、受信者の端末２０ｂの演算部２１ｂ、記憶部２２ｂ、通信部２３ｂ、入力部２４ｂ、表示部２５ｂとを区別しない場合の符号である。情報処理システムは、暗号化対象情報５４（ｐ）の暗号化（以下、単に暗号化）又は暗号化後に送信される情報の復号化（以下、単に復号化）に係るデータを保持している。具体的には、例えば、サーバ１０の記憶部１２は、暗号化に用いられるマスター公開鍵５１（Ｇ）及び受信者公開鍵５３（ｓ・Ｇ）を記憶している。送信者の端末２０ａは、暗号化対象情報５４（ｐ）の取り扱いに際して暗号化対象情報５４（ｐ）の暗号化に係る各種の処理を演算部２１ａに実行させるためのプログラム等である暗号化プログラム３１を記憶している。受信者の端末２０ｂは、暗号化対象情報５４（ｐ）の取り扱いに際して、暗号化プログラム３１を用いて暗号化された暗号化対象情報５４（ｐ）の復号化に係る各種の処理を演算部２１ｂに実行させるためのプログラム等である復号化プログラム３２と、受信者公開鍵５３（ｓ・Ｇ）の作成及び復号化に用いられる受信者秘密鍵５２（ｓ）を記憶している。
【００１８】
なお、端末２０は、１台であってもよい。その場合、情報処理システムは、例えば利用者毎の認証処理等、端末２０を操作する者が送信者であるか受信者を識別する仕組みを有している。この他、図示しないが、サーバ１０は、送信者と受信者との間での情報の送受信を仲介するサービス（例えば、電子メールの送受信サービス）を実行している。
【００１９】
次に、暗号化及び復号化について説明する。マスター公開鍵５１（Ｇ）は、楕円曲線上の座標（Ｇｘ，Ｇｙ）を示すデータである。楕円曲線を示す方程式は、例えば図４に示すものと同様、以下の式（２）のように表すことができる。式（２）におけるａ、ｂ、ｍは、それぞれ、ｘの係数、定数項、法である。
ｙ２＝ｘ３＋ａ・ｘ＋ｂ  ｍｏｄ  ｍ…（２）
【００２０】
図５は、楕円曲線Ｌ１の一例を示す図である。楕円曲線Ｌ１上の特定の座標（例えば、座標Ｐ１）を基準とすると、当該座標を通る楕円曲線Ｌ１の接線と楕円曲線Ｌ１との交点の座標（例えば、座標Ｐｔ１）をｙ軸方向について反転した座標（例えば、座標Ｐ２）は、基準となる座標の２倍算を示す。すなわち、図５における座標Ｐ２は、座標Ｐ１の２倍算を示す。なお、２倍算は、同一座標同士の加算を示す。例えば、座標Ｐ２は、座標Ｐ１と座標Ｐ１との加算である。また、楕円曲線Ｌ１上の特定の２つの座標（例えば、座標Ｐ１，Ｐ２）を加算した座標は、当該２つの座標を結ぶ直線と楕円曲線Ｌ１との交点の座標（例えば、座標Ｐｔ２）をｙ軸方向について反転した座標（例えば、座標Ｐ３）である。すなわち、図５における座標Ｐ３は、座標Ｐ１と座標Ｐ２との加算を示す。ここで、座標Ｐ２は、座標Ｐ１の２倍算であるので、座標Ｐ１と座標Ｐ２との加算である座標Ｐ３は、座標Ｐ１の３倍算を示す。このように、楕円曲線Ｌ１上の座標における加算は、単に座標の数値を加算するものとは異なり、楕円曲線Ｌ１上の座標における乗算は、単に座標の数値を乗算するものとは異なることから、複雑になる。ただし、楕円曲線暗号を採用した場合の暗号化及び復号化に伴う係る複雑な演算は、コンピュータ上でバイナリ法等を用いることで効率的に行うことができる。
【００２１】
座標Ｐ１，Ｐ２，Ｐ３を用いて座標Ｐ１の４倍算を求める方法は２つある。１つは、座標Ｐ１の２倍算である座標Ｐ２の２倍算を求める方法である。もう１つは、座標Ｐ１と、座標Ｐ１の３倍算である座標Ｐ３との加算を求める方法である。ここで、座標Ｐ２を通る楕円曲線Ｌ１の接線と楕円曲線Ｌ１との交点の座標（座標Ｐｔ３）をｙ軸方向について反転した座標（座標Ｐ４）と、座標Ｐ１と座標Ｐ３とを結ぶ直線と楕円曲線Ｌ１との交点の座標（座標Ｐｔ３）をｙ軸方向について反転した座標（例えば、座標Ｐ４）とは一致する。これは、座標Ｐ４のようなＮ倍算を効率的に求める方法が複数あり、より効率的な方法でＮ倍算を行うことができることを示唆する。
【００２２】
図５を参照して説明した楕円曲線Ｌ１の性質は、楕円曲線Ｌ１上の座標Ｐ１のスカラー（例えば、スカラーＤ）倍算であるＤ×Ｐ１（例えば、Ｄ＝４である場合、Ｄ×Ｐ１＝Ｐ４）を求めることが容易であることを示す。一方、座標Ｐ１と、座標Ｐ１のスカラー倍算である座標（例えば、座標Ｐ４）からスカラー（Ｄ）を求めることは、楕円曲線Ｌ１上の離散対数問題の観点から困難である。この容易さと困難さの非対称性は、楕円曲線暗号の安全性、すなわち暗号化された情報の秘匿性（暗号強度）の高さを示している。
【００２３】
また、楕円曲線暗号は、ＲＳＡ暗号と比較した場合、同レベルの安全性をより短い鍵で実現できる。例えば、ＲＳＡ暗号において１０２４ビットの暗号鍵を用いた場合と、楕円曲線暗号で１６０ビットの暗号鍵を用いた場合の暗号強度はほぼ等しいとされている。これは、楕円曲線暗号は、ＲＳＡ暗号に比して処理負荷がより小さく、同レベルの安全性を確保する目的であれば処理速度がより早くなることを示している。
【００２４】
上記で説明した理由により、本発明は、楕円曲線暗号を採用しており、マスター公開鍵５１（Ｇ）として、楕円曲線Ｌ１上の座標（Ｇｘ，Ｇｙ）を示すデータを用いている。係る座標（Ｇｘ，Ｇｙ）は、二次元の情報を示すデータであると捉えることができる。マスター公開鍵５１（Ｇ）は、サーバ１０によって公開状態で保持されており、マスター公開鍵５１（Ｇ）が示す座標を端末２０から把握可能になっている。
【００２５】
受信者秘密鍵５２（ｓ）は、スカラー形式のデータである。スカラー形式のデータは、一次元の情報を示すデータであると捉えることができ、数値に置換可能である。受信者公開鍵５３（ｓ・Ｇ）は、マスター公開鍵５１（Ｇ）が示す座標（Ｇｘ，Ｇｙ）に受信者秘密鍵５２（ｓ）を乗じたスカラー倍算である。受信者秘密鍵５２（ｓ）は、例えば受信者の端末２０ｂに非公開状態で設定、保持されている。すなわち、受信者秘密鍵５２（ｓ）は、受信者のみが知りうるデータである。受信者は、予め任意の受信者秘密鍵５２（ｓ）を設定することができる。受信者公開鍵５３（ｓ・Ｇ）は、設定された受信者秘密鍵５２（ｓ）とサーバ１０で公開されているマスター公開鍵５１（Ｇ）とを用いて演算により生成され、サーバ１０に公開状態で保持される。受信者は、手動で受信者公開鍵５３（ｓ・Ｇ）を生成してサーバ１０に公開することができる。上記で説明した楕円曲線暗号の安全性に基づき、マスター公開鍵５１（Ｇ）が示す座標（Ｇｘ，Ｇｙ）に受信者秘密鍵５２（ｓ）を乗じたスカラー倍算の算出は容易である一方、マスター公開鍵５１（Ｇ）と受信者公開鍵５３（ｓ・Ｇ）から受信者秘密鍵５２（ｓ）を特定することは困難である。
【００２６】
受信者秘密鍵５２（ｓ）は、情報処理システムによって自動的に設定されてもよい。具体的には、例えば、受信者の端末２０ｂの記憶部２２ｂに記憶されている復号化プログラム３２を実行処理した演算部２１ｂによる機能の１つとして、受信者秘密鍵５２（ｓ）を自動的に設定する機能を設けてもよい。同様に、受信者公開鍵５３（ｓ・Ｇ）は、情報処理システムによって自動的に設定されてもよい。
【００２７】
暗号化対象情報５４（ｐ）は、送信者から受信者宛てに送信される非公開情報である。暗号化対象情報５４（ｐ）とするデータは任意であるが、例えば送信者から受信者に伝達したいパスワード等の文字列である。暗号化対象情報５４（ｐ）は、暗号化して送信したいドキュメントデータ、画像データ、音声データ等であってもよいし、これらのデータのいずれか又は複数を圧縮した圧縮データであってもよい。どのようなデータであっても、デジタルデータは所定のルールに基づいてスカラーに置換可能であるので、暗号化対象情報５４（ｐ）とすることができる。図４では、送信者の端末２０ａで暗号化される前の暗号化対象情報５４（ｐ）に符号５４ａを付し、受信者の端末２０ｂで復号化された第３復号化情報である暗号化対象情報５４（ｐ）に符号５４ｂを付している。暗号化対象情報５４ａ，５４ｂは同一のデータである。以下、符号５４ａ，５４ｂを用いて暗号化前の暗号化対象情報（ｐ）と復号化後の暗号化対象情報（ｐ）とを区別することがある。
【００２８】
乱数５６（ｒ）は、予め設定される所定のスカラー（例えば、数値）である。乱数５６（ｒ）は、例えば送信者の端末２０ａで演算部２１ａが暗号化プログラム３１を実行処理することで自動的に設定される値であるが、これは乱数５６（ｒ）の設定方法の一例であって適宜変更可能である。例えば、送信者が任意の乱数５６（ｒ）を手動で設定してもよい。
【００２９】
中間鍵５５（Ｐ）は、マスター公開鍵５１（Ｇ）が示す座標（Ｇｘ，Ｇｙ）に暗号化対象情報５４ａ（ｐ）を乗じたスカラー倍算（ｐ・Ｇ）である。中間鍵５５（Ｐ）が示す座標（Ｐｘ，Ｐｙ）は、座標（（ｐ・Ｇ）ｘ，（ｐ・Ｇ）ｙ）である。暗号化対象情報５４ａ（ｐ）、乱数５６（ｒ）及び中間鍵５５（Ｐ）は、送信者の端末２０ａに非公開状態で取り扱われる。すなわち、送信者の端末２０ａで取り扱われている暗号化対象情報５４ａ（ｐ）、乱数５６（ｒ）及び中間鍵５５（Ｐ）は、送信者のみが知りうるデータである。ただし、中間鍵５５（Ｐ）は、暗号化対象情報５４（ｐ）の復号化に係る処理において受信者の端末２０ｂで復号化される。図４では、送信者の端末２０ａで取り扱われる中間鍵５５（Ｐ）に符号５５ａを付し、受信者の端末２０ｂで復号化された第２復号化情報である中間鍵５５（Ｐ）に符号５５ｂを付している。以下、符号５５ａ，５５ｂを用いて中間鍵５５（Ｐ）を区別することがある。中間鍵５５ａ，５５ｂは同一のデータである。
【００３０】
第１送信情報５７（Ｃ１）は、マスター公開鍵５１（Ｇ）が示す座標（Ｇｘ，Ｇｙ）に乱数５６（ｒ）を乗じたスカラー倍算（ｒ・Ｇ）である。第１送信情報５７（Ｃ１）が示す座標（Ｃ１ｘ，Ｃ１ｙ）は、座標（（ｒ・Ｇ）ｘ，（ｒ・Ｇ）ｙ）である。第２送信情報５８（Ｃ２）は、中間鍵５５ａ（Ｐ）と、受信者公開鍵５３（ｓ・Ｇ）に乱数５６（ｒ）を乗じたスカラー倍算（ｒ・（ｓ・Ｇ））とを加算したデータ（Ｐ＋ｒ・（ｓ・Ｇ））である。第２送信情報５８（Ｃ２）が示す座標（Ｃ２ｘ，Ｃ２ｙ）は、座標（（Ｐ＋ｒ・（ｓ・Ｇ））ｘ，（Ｐ＋ｒ・（ｓ・Ｇ））ｙ）である。第３送信情報５９（ｃ３）は、暗号化対象情報５４ａ（ｐ）と、中間鍵５５ａ（Ｐ）のｘ座標（Ｐｘ）とを加算したデータ（ｐ＋Ｐｘ）である。ここで、中間鍵５５ａ（Ｐ）の座標（Ｐｘ，Ｐｙ）は二次元の座標を示すが、ｘ座標（Ｐｘ）は一次元の情報であるので、第３送信情報５９（ｃ３）は、一次元のデータである。
【００３１】
第３送信情報５９（ｃ３）は、暗号化対象情報５４ａ（ｐ）を暗号化した情報として機能する。第１送信情報５７（Ｃ１）及び第２送信情報５８（Ｃ２）は、第３送信情報５９（ｃ３）から暗号化対象情報５４（ｐ）を復号化するための情報として機能する。第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）は、送信者から受信者に送信される。すなわち、第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）は、通信回線Ｎを経由して送信者の端末２０ａの外部に伝送（公開）される。このため、通信回線Ｎ等に対して第三者が介入することで第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）が第三者に取得される可能性はゼロでない。しかしながら、暗号化対象情報５４（ｐ）が第３送信情報５９（ｃ３）として暗号化されているため、第三者は、暗号化対象情報５４（ｐ）の内容を把握することができない。
【００３２】
第１復号用情報６０（ｓ・Ｃ１）は、第１送信情報５７（Ｃ１）が示す座標（Ｃ１ｘ，Ｃ１ｙ）に受信者秘密鍵５２（ｓ）を乗じたスカラー倍算（ｓ・（ｒ・Ｇ））である。第１送信情報５７（Ｃ１）が示す座標（ｓ・Ｃ１ｘ，ｓ・Ｃ１ｙ）は、座標（（ｓ・（ｒ・Ｇ））ｘ，（ｓ・（ｒ・Ｇ））ｙ）である。ここで、ｓ・（ｒ・Ｇ）とｒ・（ｓ・Ｇ）は、双方ともマスター公開鍵５１（Ｇ）にスカラー（ｒ）及びスカラー（ｓ）を乗じたスカラー倍算であり、同値である。第１復号用情報６０（ｓ・Ｃ１）と第２送信情報５８（Ｃ２）とに基づいて、中間鍵５５ｂ（Ｐ）を得ることができる。具体的には、以下の式（３）によって中間鍵５５ｂ（Ｐ）を導出することができる。すなわち、第２送信情報５８（Ｃ２）で中間鍵５５ａ（Ｐ）に加算されているスカラー倍算（乱数５６（ｒ）と受信者公開鍵５３（ｓ・Ｇ）との乗算であるｒ・（ｓ・Ｇ））と、第１復号用情報６０（ｓ・Ｃ１）であるスカラー倍算（ｓ・（ｒ・Ｇ））とは同値であることから、第２送信情報５８（Ｃ２）から第１復号用情報６０（ｓ・Ｃ１）を差し引くことで、中間鍵５５ｂ（Ｐ）を復号することができることになる。復号された中間鍵５５ｂ（Ｐ）から、座標（Ｐｘ，Ｐｙ）を特定することができる。
Ｐ＝Ｃ２−ｓ・Ｃ１
＝（Ｐ＋ｒ・（ｓ・Ｇ））−ｓ・（ｒ・Ｇ）
＝Ｐ＋ｒ・（ｓ・Ｇ）−ｒ・（ｓ・Ｇ）…（３）
【００３３】
中間鍵５５ｂ（Ｐ）の座標（Ｐｘ）と第３送信情報５９（ｃ３）とに基づいて、暗号化対象情報５４ｂ（ｐ）を得ることができる。具体的には、以下の式（４）によって暗号化対象情報５４ｂ（ｐ）を導出することができる。すなわち、第１復号用情報６０（ｓ・Ｃ１）と第２送信情報５８（Ｃ２）とに基づいて復号化された中間鍵５５ｂ（Ｐ）と第３送信情報５９（ｃ３）から暗号化対象情報５４ｂ（ｐ）を復号することができることになる。第１復号用情報６０（ｓ・Ｃ１）は第１送信情報５７（Ｃ１）と受信者秘密鍵５２（ｓ）から得られているので、第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）並びに受信者秘密鍵５２（ｓ）から暗号化対象情報５４ｂ（ｐ）を復号することができる。第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）は、送信者から受信者に送信されている。受信者秘密鍵５２（ｓ）は、受信者側で保持されている情報である。従って、受信者は、送信者から送信された第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）と、既知の受信者秘密鍵５２（ｓ）とに基づいて、暗号化対象情報５４ｂ（ｐ）を復号することができる。
ｐ＝ｃ３−Ｐｘ
＝（ｐ＋Ｐｘ）−Ｐｘ…（４）
【００３４】
図６〜図８のフローチャートを参照して、情報処理システムによる暗号化及び復号化に係る処理の流れの一例を説明する。図６は、受信者による準備処理の流れの一例を示すフローチャートである。受信者の端末２０ｂの演算部２１ｂは、記憶部２２ｂから復号化プログラム３２を読み出して実行処理し、受信者公開鍵５３（ｓ・Ｇ）の公開に係る各種の処理を行う。具体的には、演算部２１ｂは、通信部２３ｂを介して、サーバ１０からマスター公開鍵５１（Ｇ）を取得する（ステップＳ１）。また、演算部２１ｂは、受信者秘密鍵５２（ｓ）を設定する（ステップＳ２）。ステップＳ１の処理とステップＳ２の処理は、順不同である。演算部２１ｂは、受信者秘密鍵５２（ｓ）とマスター公開鍵５１（Ｇ）から受信者公開鍵５３（ｓ・Ｇ）を生成する（ステップＳ３）。演算部２１ｂは、通信部２３ｂを介して、受信者公開鍵５３（ｓ・Ｇ）をサーバ１０に送信して公開する（ステップＳ４）。これらの処理に係る機能は、例えば、復号化プログラム３２の一機能として実装されていてもよいし、専用のプログラムとして設けられていてもよい。また、これらの処理は、受信者による手動の入力操作に応じて行われてもよい。
【００３５】
図７は、送信者による暗号化処理及びデータの送信に係る処理の流れの一例を示すフローチャートである。送信者の端末２０ａの演算部２１ａは、記憶部２２ａから暗号化プログラム３１を読み出して実行処理し、暗号化対象情報５４ａ（ｐ）の暗号化及び暗号化後のデータの送信に係る各種の処理を行う。具体的には、演算部２１ａは、例えば、サーバ１０からマスター公開鍵５１（Ｇ）及び受信者公開鍵５３（ｓ・Ｇ）を取得する（ステップＳ１１）。演算部２１ａは、暗号化対象情報５４ａ（ｐ）を設定する（ステップＳ１２）。演算部２１ａは、暗号化対象情報５４ａ（ｐ）とマスター公開鍵５１（Ｇ）から中間鍵５５ａ（Ｐ）を生成する（ステップＳ１３）。演算部２１ａは、乱数５６（ｒ）を設定する（ステップＳ１４）。演算部２１ａは、乱数５６（ｒ）とマスター公開鍵５１（Ｇ）から第１送信情報５７（Ｃ１）を生成する（ステップＳ１５）。演算部２１ａは、中間鍵５５ａ（Ｐ）と乱数５６（ｒ）と受信者公開鍵５３（ｓ・Ｇ）から第２送信情報５８（Ｃ２）を生成する（ステップＳ１６）。演算部２１ａは、暗号化対象情報５４ａ（ｐ）と中間鍵５５ａ（Ｐ）から第３送信情報５９（ｃ３）を生成する（ステップＳ１７）。演算部２１ａは、なお、ステップＳ１２の処理は、例えば、受信者の端末２０ｂにおいて受信者が手動で暗号化対象情報５４ａ（ｐ）とするデータを選択決定又は生成することで行われる。ステップＳ１１の処理、ステップＳ１２の処理、ステップＳ１４の処理は、順不同である。ステップＳ１３の処理、ステップＳ１４の処理は、順不同である。ステップＳ１５の処理、ステップＳ１６の処理、ステップＳ１７の処理は、順不同である。
【００３６】
送信者の端末２０ａの演算部２１ａは、通信部２３ａを介して、第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）を受信者に送信するためのデータの送信を行う（ステップＳ１８）。本実施形態では、演算部２１ａは、例えば電子メールの添付ファイルとして第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）をサーバ１０に送信する。係る電子メールの宛先となるメールアドレスは、受信者のメールアドレスである。サーバ１０は、送信者の端末２０ａから送信された第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）を受信者の端末２０ｂに送信する。
【００３７】
図８は、受信者による復号化処理の流れの一例を示すフローチャートである。受信者の端末２０ｂの演算部２１ｂは、記憶部２２ｂから復号化プログラム３２及び受信者秘密鍵５２（ｓ）を読み出して実行処理し、第３送信情報５９（ｃ３）からの暗号化対象情報５４ｂ（ｐ）の復号化に係る各種の処理を行う。具体的には、演算部２１ｂは、通信部２３ｂを介して、第１送信情報５７（Ｃ１）、第２送信情報５８（Ｃ２）及び第３送信情報５９（ｃ３）を受信する（ステップＳ２１）。演算部２１ｂは、第１送信情報５７（Ｃ１）と受信者秘密鍵５２（ｓ）から第１復号用情報６０（ｓ・Ｃ１）を生成する（ステップＳ２２）。演算部２１ｂは、第２送信情報５８（Ｃ２）と第１復号用情報６０（ｓ・Ｃ１）から中間鍵５５ｂ（Ｐ）を復号する（ステップＳ２３）。演算部２１ｂは、復号された中間鍵５５ｂ（Ｐ）と第３送信情報５９（ｃ３）から暗号化対象情報５４ｂ（ｐ）を復号する（ステップＳ２４）。
【００３８】
このように、本実施形態では、非公開情報である暗号化対象情報５４（ｐ）の取り扱いに際して、楕円曲線上の座標を示す公開情報であるマスター公開鍵５１（Ｇ）の設定工程と、非公開情報である受信者秘密鍵５２（ｓ）とマスター公開鍵５１（Ｇ）との積を示す公開情報である受信者公開鍵５３（ｓ・Ｇ）を生成する工程と、非公開情報である暗号化対象情報５４ａ（ｐ）とマスター公開鍵５１（Ｇ）との積を示す非公開情報である中間鍵５５ａ（Ｐ＝ｐ・Ｇ）を生成する工程と、非公開情報である乱数５６（ｒ）とマスター公開鍵５１（Ｇ）との積を示す第１送信情報５７（Ｃ１＝ｒ・Ｇ）を生成する工程と、乱数５６（ｒ）と受信者公開鍵５３（ｓ・Ｇ）との積と、中間鍵５５ａ（Ｐ）との加算を示す第２送信情報５８（Ｃ２＝Ｐ＋ｒ・（ｓ・Ｇ））を生成する工程と、少なくとも暗号化対象情報５４ａ（ｐ）及び中間鍵５５ａ（Ｐ）が示す情報を用いた演算によって導出される第３送信情報５９（ｃ３＝ｐ＋Ｐｘ）を生成する工程と、受信者秘密鍵５２（ｓ）と第１送信情報５７（Ｃ１）との積である第１復号用情報６０（ｓ・Ｃ１＝ｓ・（ｒ・Ｇ）＝ｒ（ｓ・Ｇ））を生成する工程と、第２送信情報５８（Ｃ２）から第１復号用情報６０（ｓ・Ｃ１）を減じて中間鍵５５ｂ（Ｐ）を得る工程（Ｐ＝Ｃ２−ｓ・Ｃ１＝Ｐ＋ｒ・（ｓ・Ｇ）−ｒ・（ｓ・Ｇ））と、中間鍵５５ｂ（Ｐ）と第３送信情報５９（ｃ３）に基づいて暗号化対象情報５４ｂ（ｐ）を得る工程（ｐ＝ｃ３−Ｐｘ＝ｐ＋Ｐｘ−Ｐｘ）と、を有する情報処理方法が実施されている。
【００３９】
また、本実施形態の情報処理システムは、情報の送信者及び情報の受信者が操作する１つ以上の端末２０と、端末２０と通信可能に接続されたサーバ１０とを有し、送信者から受信者宛てに送信される非公開情報である暗号化対象情報５４を暗号化する情報処理システムであって、サーバ１０は、楕円曲線上の座標を示す公開情報であるマスター公開鍵５１及び非公開情報である受信者秘密鍵５２とマスター公開鍵５１との積を示す公開情報である受信者公開鍵５３を記憶する第１記憶部（記憶部１２）を備え、端末２０又はサーバ１０は、暗号化対象情報５４ａとマスター公開鍵５１との積を示す非公開情報である中間鍵５５ａを生成する中間鍵生成部と、非公開情報である乱数５６とマスター公開鍵５１との積を示す第１送信情報５７、乱数５６と受信者公開鍵５３との積と中間鍵５５ａとの加算を示す第２送信情報５８、少なくとも暗号化対象情報５４ａ及び中間鍵５５ａが示す情報を用いた演算によって導出される第３送信情報５９を生成する暗号化部と、受信者秘密鍵５２と第１送信情報５７との積である第１復号用情報６０を算出し、第２送信情報５８から第１復号用情報を減じて中間鍵５５ｂを導出し、導出された中間鍵５５ｂと第３送信情報５９に基づいて暗号化対象情報５４ｂを得る復号化部と、を備える情報処理システムである。
【００４０】
具体的には、送信者の端末２０ａの演算部２１ａは、暗号化プログラム３１を実行することで、暗号化対象情報５４ａとマスター公開鍵５１との積を示す非公開情報である中間鍵５５ａを生成する中間鍵生成部として機能する。また、送信者の端末２０ａの演算部２１ａは、暗号化プログラム３１を実行することで、非公開情報である乱数５６とマスター公開鍵５１との積を示す第１送信情報５７、乱数５６と受信者公開鍵５３との積と中間鍵５５ａとの加算を示す第２送信情報５８、少なくとも暗号化対象情報５４ａ及び中間鍵５５ａが示す情報を用いた演算によって導出される第３送信情報５９を生成する暗号化部として機能する。また、受信者の端末２０ｂの演算部２１ｂは、復号化プログラム３２を実行することで、受信者秘密鍵５２と第１送信情報５７との積である第１復号用情報６０を算出し、第２送信情報５８から第１復号用情報６０を減じて中間鍵５５ｂを導出し、導出された中間鍵５５ｂと第３送信情報５９に基づいて暗号化対象情報５４ｂを得る復号化部として機能する。
【００４１】
また、本実施形態の情報処理システムにおいて、送信者の端末２０ａは、中間鍵生成部及び暗号化部を備え、受信者の端末２０ｂは、復号化部と、受信者秘密鍵５２を記憶する第２記憶部（記憶部２２）とを備え、送信者の端末２０ａは、第１送信情報５７、第２送信情報５８及び第３送信情報５９をサーバ１０に送信し、サーバ１０は、第１送信情報５７、第２送信情報５８及び第３送信情報５９を受信者の端末２０ｂに送信する。
【００４２】
以上、本実施形態によれば、中間鍵５５ａ（Ｐ：ｐ・Ｇ）を生成し、中間鍵５５ａ（Ｐ）が示す情報を用いた演算によって導出される第２送信情報５８（Ｃ２：Ｐ＋ｒ・（ｓ・Ｇ））及び第３送信情報５９（ｃ３：ｐ＋Ｐｘ）を生成するので、暗号化対象情報５４（ｐ）を得るための具体的な処理内容の特定をより困難にすることができる。よって、より高い機密性を確保することができる。
【００４３】
また、第３送信情報５９は、中間鍵５５ａ（Ｐ）が示すｘ座標と暗号化対象情報５４ａ（ｐ）との加算（ｃ３：ｐ＋Ｐｘ）であるので、簡単な演算で暗号化対象情報５４ａ（ｐ）を暗号化することができ、より低い処理負荷でより高い機密性を確保することができる。
【００４４】
また、端末２０が暗号化及び復号化に係る処理を行うので、暗号化対象情報５４（ｐ）の取り扱いにおけるサーバ１０の負荷を最小限にすることができる。
【００４５】
特に、暗号化対象情報を共通鍵方式で用いられるパスワードにすることで、共通鍵方式を利用した暗号化を伴うデータの伝送に際して受信者に伝えられるパスワードの機密性を確保することができる。このように、送信者が任意に設定するパスワード等の伝達に係る第三者の介入の可能性を効果的に抑制する仕組みを高い利便性で提供することができる。また、パーソナルコンピュータ（ＰＣ）等の情報処理装置に搭載されているＴＰＭ（Trusted  Platform  Module）等のセキュリティチップで取り扱われる公開鍵を本発明の公開鍵とすることで、公開鍵を自動的に生成及び公開することができるようになる。よって、受信者の立場になりうるユーザは、受信者秘密鍵５２（ｓ）を設定するだけで受信者公開鍵５３（ｓ・Ｇ）を公開することができるようになる。よって、より簡便に、送信者から暗号化対象情報５４（ｐ）として送られる１次元の情報（例えば、パスワード等）を暗号化された状態で受信し、受信者のみが復号することができるようになり、利便性が飛躍的に向上する。
【００４６】
（変形例）
なお、第３送信情報５９（ｃ３）は上記の実施形態で例示した情報（ｐ＋Ｐｘ）に限られず、適宜変更可能である。例えば、中間鍵５５ａ（Ｐ）が示すｘ座標（Ｐｘ）に代えて、中間鍵５５ａ（Ｐ）が示すｙ座標（Ｐｙ）を暗号化対象情報５４ａ（ｐ）に加算した情報を第３送信情報（ｃ３）としてもよい。
【００４７】
また、第３送信情報（ｃ３）は、第１送信情報５７（Ｃ１）が示すｘ座標（Ｃ１ｘ）と中間鍵５５ａ（Ｐ）が示すｘ座標（Ｐｘ）との積と、第１送信情報５７（Ｃ１）が示すｙ座標（Ｃ１ｙ）と中間鍵５５ａ（Ｐ）が示すｙ座標（Ｐｙ）との積とが暗号化対象情報５４（ｐ）に付加された情報であってもよい。すなわち、以下の式（５）が成立するようにしてもよい。この場合、第１送信情報５７（Ｃ１）から、第１送信情報５７（Ｃ１）が示すｘ座標（Ｃ１ｘ）及びｙ座標（Ｃ１ｙ）が得られる。また、第２送信情報５８（Ｃ２）から第１復号用情報６０（ｓ・Ｃ１）を減じて得た中間鍵５５ｂ（Ｐ）から、中間鍵５５ｂ（Ｐ）が示すｘ座標（Ｐｘ）及びｙ座標（Ｐｙ）が得られる。よって、このようにして得られた第１送信情報５７（Ｃ１）が示すｘ座標（Ｃ１ｘ）と中間鍵５５ｂ（Ｐ）が示すｘ座標（Ｐｘ）の乗算（Ｃ１ｘ×Ｐｘ）と、第１送信情報５７（Ｃ１）が示すｙ座標（Ｃ１ｙ）と中間鍵５５ｂ（Ｐ）が示すｙ座標（Ｐｙ）の乗算（Ｃ１ｙ×Ｐｙ）とを第３送信情報（ｃ３）から減ずることで、暗号化対象情報５４ｂ（ｐ）を復号することができる。
ｃ３＝ｐ＋（Ｃ１ｘ×Ｐｘ）＋（Ｃ１ｙ×Ｐｙ）…（５）
【００４８】
また、中間鍵５５ａ（Ｐ）が示すｘ座標（Ｐｘ）、中間鍵５５ａ（Ｐ）が示すｙ座標（Ｐｙ）、第１送信情報５７（Ｃ１）が示すｘ座標（Ｃ１ｘ）、第１送信情報５７（Ｃ１）が示すｙ座標（Ｃ１ｙ）、第２送信情報５８（Ｃ２）が示すｘ座標（Ｃ２ｘ）、第２送信情報５８（Ｃ２）が示すｙ座標（Ｃ２ｙ）、第３送信情報（ｃ３）に基づいて、式（１）が成立するようにしてもよい。この場合、第１送信情報５７（Ｃ１）から、第１送信情報５７（Ｃ１）が示すｘ座標（Ｃ１ｘ）及びｙ座標（Ｃ１ｙ）が得られる。また、第２送信情報５８（Ｃ２）から第１復号用情報６０（ｓ・Ｃ１）を減じて得た中間鍵５５ｂ（Ｐ）から、中間鍵５５ｂ（Ｐ）が示すｘ座標（Ｐｘ）及びｙ座標（Ｐｙ）が得られる。よって、これらを用いて、第１送信情報５７（Ｃ１）が示すｘ座標（Ｃ１ｘ）を底として中間鍵５５ｂ（Ｐ）が示すｘ座標（Ｐｘ）を冪指数とする第１冪演算値（Ｃ１ｘＰｘ）及び第１送信情報５７（Ｃ１）が示すｙ座標（Ｃ１ｙ）を底として中間鍵５５ｂ（Ｐ）が示すｙ座標（Ｐｙ）を冪指数とする第２冪演算値（Ｃ１ｙＰｙ）が得られる。また、第２送信情報５８（Ｃ２）から、第２送信情報５８（Ｃ２）が示すｘ座標（Ｃ２ｘ）及びｙ座標（Ｃ２ｙ）が得られる。よって、これらを用いて、第１冪演算値（Ｃ１ｘＰｘ）を第２送信情報５８（Ｃ２）が示すｘ座標（Ｃ２ｘ）で割った剰余（Ｃ１ｘＰｘ  ｍｏｄ  Ｃ２ｘ）と第２冪演算値（Ｃ１ｙＰｙ）を第２送信情報５８（Ｃ２）が示すｙ座標（Ｃ２ｙ）で割った剰余（Ｃ１ｙＰｙ  ｍｏｄ  Ｃ２ｙ）を求め、第３送信情報（ｃ３）から減ずることで、暗号化対象情報５４ｂ（ｐ）を復号することができる。
ｃ３＝（Ｃ１ｘＰｘ  ｍｏｄ  Ｃ２ｘ）＋（Ｃ１ｙＰｙ  ｍｏｄ  Ｃ２ｙ）＋ｐ…（１）
【００４９】
このように第３送信情報（ｃ３）を適宜変更することで、第３送信情報（ｃ３）から暗号化対象情報５４を得るための具体的な処理内容の特定をより困難にすることができる。よって、より高い機密性を確保することができる。
【００５０】
上記の実施形態及び変形例はあくまで一例であり、本発明の技術的特徴を逸脱しない範囲内において適宜変更可能である。例えば、暗号化プログラム３１及び復号化プログラム３２が提供している機能の一部又は全部をサーバ１０で実行処理する所謂サーバクライアントモデルで暗号化及び復号化を行うようにしてもよい。
【符号の説明】
【００５１】
１０    サーバ
１１    演算部
１２    記憶部
１３    通信部
２０，２０ａ，２０ｂ  端末
２１，２１ａ，２１ｂ  演算部
２２，２２ａ，２２ｂ  記憶部
２３，２３ａ，２３ｂ  通信部
２４，２４ａ，２４ｂ  入力部
２５，２５ａ，２５ｂ  表示部
３１    暗号化プログラム
３２    復号化プログラム
５１    マスター公開鍵
５２    受信者秘密鍵
５３    受信者公開鍵
５４，５４ａ，５４ｂ  暗号化対象情報
５５，５５ａ，５５ｂ  中間鍵
５６    乱数
５７    第１送信情報
５８    第２送信情報
５９    第３送信情報
６０    第１復号用情報
Ｎ      通信回線
【図１】
2017163434.tif 000003
【図２】
2017163434.tif 000004
【図３】
2017163434.tif 000005
【図４】
2017163434.tif 000006
【図５】
2017163434.tif 000007
【図６】
2017163434.tif 000008
【図７】
2017163434.tif 000009
【図８】
2017163434.tif 000010
【手続補正書】
【提出日】平成29年5月29日(2017.5.29)
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報の送信者及び情報の受信者が操作する１つ以上の端末と、前記端末と通信可能に接続されたサーバとを有し、前記送信者から前記受信者宛てに送信される非公開情報である暗号化対象情報を暗号化する情報処理システムであって、
前記サーバは、     
楕円曲線上の座標を示す公開情報であるマスター公開鍵及び非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を記憶する第１記憶部を備え、
前記端末又は前記サーバは、
前記暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する中間鍵生成部と、
非公開情報である乱数と前記マスター公開鍵との積を示す第１送信情報、前記乱数と前記受信者公開鍵との積と前記中間鍵との加算を示す第２送信情報、少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第３送信情報を生成する暗号化部と、
前記受信者秘密鍵と前記第１送信情報との積である第１復号用情報を算出し、前記第２送信情報から前記第１復号用情報を減じて前記中間鍵を導出し、導出された前記中間鍵と前記第３送信情報に基づいて前記暗号化対象情報を得る復号化部と
を備える情報処理システム。 
【請求項２】
前記送信者の端末は、前記中間鍵生成部及び前記暗号化部を備え、
前記受信者の端末は、
前記復号化部と、
前記受信者秘密鍵を記憶する第２記憶部とを備え、
前記送信者の端末は、前記第１送信情報、前記第２送信情報及び前記第３送信情報を前記サーバに送信し、
前記サーバは、前記第１送信情報、前記第２送信情報及び前記第３送信情報を前記受信者の端末に送信する
請求項１に記載の情報処理システム。
【請求項３】
前記第３送信情報は、前記中間鍵が示すｘ座標と前記暗号化対象情報との加算である
請求項１又は２に記載の情報処理システム。 
【請求項４】
前記第３送信情報は、前記第１送信情報が示すｘ座標と前記中間鍵が示すｘ座標との積と、前記第１送信情報が示すｙ座標と前記中間鍵が示すｙ座標との積とが前記暗号化対象情報に付加された情報である
請求項１又は２に記載の情報処理システム。 
【請求項５】
前記中間鍵が示すｘ座標をＰｘとし、前記中間鍵が示すｙ座標をＰｙとし、前記第１送信情報が示すｘ座標をＣ１ｘとし、前記第１送信情報が示すｙ座標をＣ１ｙとし、前記第２送信情報が示すｘ座標をＣ２ｘとし、前記第２送信情報が示すｙ座標をＣ２ｙとし、前記第３送信情報をｃ３とし、前記暗号化対象情報をｐとすると、式（１）が成立する
請求項１又は２に記載の情報処理システム。
ｃ３＝（Ｃ１ｘＰｘ  ｍｏｄ  Ｃ２ｘ）＋（Ｃ１ｙＰｙ  ｍｏｄ  Ｃ２ｙ）＋ｐ…（１）
【手続補正書】
【提出日】平成29年9月11日(2017.9.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報の送信者及び情報の受信者が操作する１つ以上の端末と、前記端末と通信可能に接続されたサーバとを有し、前記送信者から前記受信者宛てに送信される非公開情報である暗号化対象情報を暗号化する情報処理システムであって、
前記サーバは、    
楕円曲線上の座標を示す公開情報であるマスター公開鍵及び非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を記憶する第１記憶部を備え、
前記端末は、
前記暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する中間鍵生成部と、
非公開情報である乱数と前記マスター公開鍵との積を示す第１送信情報、前記乱数と前記受信者公開鍵との積と前記中間鍵との加算を示す第２送信情報、少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第３送信情報を生成する暗号化部と、
前記受信者秘密鍵と前記第１送信情報との積である第１復号用情報を算出し、前記第２送信情報から前記第１復号用情報を減じて前記中間鍵を導出し、導出された前記中間鍵と前記第３送信情報に基づいて前記暗号化対象情報を得る復号化部と
を備え、
前記中間鍵が示すｘ座標をＰｘとし、前記中間鍵が示すｙ座標をＰｙとし、前記第１送信情報が示すｘ座標をＣ１ｘとし、前記第１送信情報が示すｙ座標をＣ１ｙとし、前記第２送信情報が示すｘ座標をＣ２ｘとし、前記第２送信情報が示すｙ座標をＣ２ｙとし、前記第３送信情報をｃ３とし、前記暗号化対象情報をｐとすると、式（１）が成立する情報処理システム。  
ｃ３＝（Ｃ１ｘＰｘ  ｍｏｄ  Ｃ２ｘ）＋（Ｃ１ｙＰｙ  ｍｏｄ  Ｃ２ｙ）＋ｐ…（１）
【請求項２】
前記送信者の端末は、前記中間鍵生成部及び前記暗号化部を備え、
前記受信者の端末は、
前記復号化部と、
前記受信者秘密鍵を記憶する第２記憶部とを備え、
前記送信者の端末は、前記第１送信情報、前記第２送信情報及び前記第３送信情報を前記サーバに送信し、
前記サーバは、前記第１送信情報、前記第２送信情報及び前記第３送信情報を前記受信者の端末に送信する
請求項１に記載の情報処理システム。
【国際調査報告】
2017163434.tif 000011
2017163434.tif 000012
2017163434.tif 000013
2017163434.tif 000014