(57)【特許請求の範囲】
【請求項１】
商品購入に関する所定の条件を満たした消費者に特典データを提供する暗号化配布装置であって、
ｋ個の商品からなる商品グループに対応する販売店秘密鍵を格納した記憶手段と、
前記商品グループに対応する特典キーデータを格納した記憶手段と、
消費者公開鍵を格納した記憶手段と、
特典データを前記特典キーデータが無ければ復元が不可能な状態に変換して消費者のデータ受領装置に配布する手段と、
前記販売店秘密鍵を前記所定数ｋ個に分割して、前記ｋ個の商品に対応するｋ個の分割秘密鍵（ある元データに対して該ｋ個の分割秘密鍵をそれぞれ用いて暗号化したｋ個の部分暗号化データを、元の販売店秘密鍵に対応する販売店公開鍵で復号してｋ個の部分復号化データを生成し、それらｋ個の部分復号化データを合成すると元データが復元できるように、分割されたもの）を作成する手段と、
前記特典キーデータを前記消費者公開鍵で暗号化し、暗号化特典キーデータを作成する手段と、
消費者が前記商品グループに属する商品を購入したとき、作成した暗号化特典キーデータを前記ｋ個の分割秘密鍵の内の当該購入した商品に対応する１つで暗号化し、部分暗号化データを作成して消費者のデータ受領装置に送付する手段と
を備えたことを特徴とする特典データの暗号化配布装置。
【請求項２】
請求項１に記載の暗号化配布装置から提供される前記特典データを受領して利用可能にするデータ受領装置であって、
前記販売店秘密鍵に対応する販売店公開鍵を格納した記憶手段と、
前記消費者公開鍵に対応する消費者秘密鍵を格納した記憶手段と、
送付された部分暗号化データを受信する手段と、
受信した部分暗号化データを前記販売店公開鍵で復号化し、部分復号化データを取得する手段と、
前記部分暗号化データの受信と復号化を繰り返すことにより、前記ｋ個の分割秘密鍵のそれぞれに対応するｋ個の部分復号化データを取得したとき、該取得したｋ個の部分復号化データを合成して暗号化特典キーデータを生成する手段と、
生成した暗号化特典キーデータを前記消費者秘密鍵で復号化して、特典キーデータを復元する手段と、
求めた特典キーデータを使用して前記特典データを使用可能な状態に復元する手段と
を備えたことを特徴とする特典データのデータ受領装置。
【請求項３】
商品購入に関する所定の条件を満たした消費者に特典データを提供する暗号化配布システムであって、
暗号化配布装置とデータ受領装置とを備え、
前記暗号化配布装置は、
ｋ個の商品からなる商品グループに対応する販売店秘密鍵を格納した記憶手段と、
前記商品グループに対応する特典キーデータを格納した記憶手段と、
消費者公開鍵を格納した記憶手段と、
特典データを前記特典キーデータが無ければ復元が不可能な状態に変換して消費者のデータ受領装置に配布する手段と、
前記販売店秘密鍵を前記所定数ｋ個に分割して、前記ｋ個の商品に対応するｋ個の分割秘密鍵（ある元データに対して該ｋ個の分割秘密鍵をそれぞれ用いて暗号化したｋ個の部分暗号化データを、元の販売店秘密鍵に対応する販売店公開鍵で復号してｋ個の部分復号化データを生成し、それらｋ個の部分復号化データを合成すると元データが復元できるように、分割されたもの）を作成する手段と、
前記特典キーデータを前記消費者公開鍵で暗号化し、暗号化特典キーデータを作成する手段と、
消費者が前記商品グループに属する商品を購入したとき、作成した暗号化特典キーデータを前記ｋ個の分割秘密鍵の内の当該購入した商品に対応する１つで暗号化し、部分暗号化データを作成して消費者のデータ受領装置に送付する手段と
を備え、
前記データ受領装置は、
前記販売店秘密鍵に対応する販売店公開鍵を格納した記憶手段と、
前記消費者公開鍵に対応する消費者秘密鍵を格納した記憶手段と、
送付された部分暗号化データを受信する手段と、
受信した部分暗号化データを前記販売店公開鍵で復号化し、部分復号化データを取得する手段と、
前記部分暗号化データの受信と復号化を繰り返すことにより、前記ｋ個の分割秘密鍵のそれぞれに対応するｋ個の部分復号化データを取得したとき、該取得したｋ個の部分復号化データを合成して暗号化特典キーデータを生成する手段と、
生成した暗号化特典キーデータを前記消費者秘密鍵で復号化して、特典キーデータを復元する手段と、
求めた特典キーデータを使用して前記特典データを使用可能な状態に復元する手段と
を備えたことを特徴とする特典データの暗号化配布システム。
【請求項４】
サーバ装置から、商品購入に関する所定の条件を満たした消費者のクライアント装置に特典データを提供する暗号化配布方法であって、
サーバ装置は、ｋ個の商品からなる商品グループに対応する販売店秘密鍵を格納した記憶手段と、前記商品グループに対応する特典キーデータを格納した記憶手段と、消費者公開鍵を格納した記憶手段とを備え、クライアント装置は、前記販売店秘密鍵に対応する販売店公開鍵を格納した記憶手段と、前記消費者公開鍵に対応する消費者秘密鍵を格納した記憶手段とを備えたものとするとともに、
サーバ装置が、前記特典データを前記特典キーデータが無ければ復元が不可能な状態に変換して消費者クライアント装置に配布するステップと、
サーバ装置が、前記販売店秘密鍵を前記所定数ｋ個に分割して、前記ｋ個の商品に対応するｋ個の分割秘密鍵（ある元データに対して該ｋ個の分割秘密鍵をそれぞれ用いて暗号化したｋ個の部分暗号化データを、元の販売店秘密鍵に対応する販売店公開鍵で復号してｋ個の部分復号化データを生成し、それらｋ個の部分復号化データを合成すると元データが復元できるように、分割されたもの）を作成するステップと、
サーバ装置が、前記特典キーデータを前記消費者公開鍵で暗号化し、暗号化特典キーデータを作成するステップと、
消費者が前記商品グループに属する商品を購入したとき、サーバ装置が、作成した暗号化特典キーデータを前記ｋ個の分割秘密鍵の内の当該購入した商品に対応する１つで暗号化し、部分暗号化データを作成するステップと、
サーバ装置から消費者のクライアント装置に前記部分暗号化データを送付するステップと、
消費者のクライアント装置が、前記送付された部分暗号化データを受信するステップと、
クライアント装置が、受信した部分暗号化データを前記販売店公開鍵で復号化し、部分復号化データを取得するステップと、
クライアント装置が、前記部分暗号化データの受信と復号化を繰り返すことにより、前記ｋ個の分割秘密鍵のそれぞれに対応するｋ個の部分復号化データを取得したとき、該取得したｋ個の部分復号化データを合成して暗号化特典キーデータを生成するステップと、
クライアント装置が、生成した暗号化特典キーデータを前記消費者秘密鍵で復号化して、特典キーデータを復元するステップと、
クライアント装置が、求めた特典キーデータを使用して前記特典データを使用可能な状態に復元するステップと
を備えたことを特徴とする特典データの暗号化配布方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子商取引による商品売買において特定の条件を満たした顧客に提供する特典データ等の配布に適用する暗号化配布装置及び方法に関するものである。
【０００２】
【従来の技術】
従来、ある商品グループに属する商品を全て購入した消費者のみにサービスとして提供する特典データの配布に関する技術として、例えば、消費者の購入した商品の情報をデータベースで管理して特典データを供与する条件（所定の商品グループに属する商品を全て購入したか等の条件）を満たしているか判定する方法が知られている。消費者の購入情報を管理する商品情報データベースは、製造元が管理する方法と販売店が管理する方法が考えられる。特典データの供与の仕方は、例えば特典データを所定の特典キーデータが無ければ利用できない状態にして配布し、上記条件を満たした消費者のみに、特典データを利用可能にする特典キーデータを与えればよい。
【０００３】
また、消費者側に専用ソフトウェアを配布し、商品グループを構成する商品にIDを割り当てておき、商品購入時には当該専用ソフトウェアにCookie等を利用して指示を与えることにより購入状況を消費者側で管理させ、商品グループの商品全てを購入したと判定した場合のみ特典データを利用可能な状態に設定する方法も知られている。
【０００４】
さらに、特典データを利用可能な状態にするための特典キーデータを分割して、所定の商品グループに属する商品を購入するごとに当該分割された各特典キーデータを１つづつ配布する方法がある。分割した各特典キーデータは暗号化して消費者に配布した方が良く、また各商品は別々の販売店（ホームページ等）で購入する場合もあるので、分割した各特典キーデータを、商品を購入した販売店の販売店秘密鍵で暗号化して消費者に配布することが考えられる。分割した各特典キーデータは複数の販売店秘密鍵でそれぞれ暗号化して消費者に配布され、消費者は分割された特典キーデータを全て入手した後に専用ソフトウェアで復元し、該特典キーデータで特典データを復号して利用可能な状態に設定する。
【０００５】
【発明が解決しようとする課題】
しかしながら、消費者の購入した商品情報（どの消費者がどの商品を購入したかの情報）を製造元が管理し、条件を満たした消費者に特典キーデータを提供する方法では、特典サービスを提供する販売店全てに製造元と情報を通信する機構が必要となり、さらに販売店が製造元に購入した顧客の情報を提供する必要があり、製造元では膨大なユーザ情報データベースを販売店が利用可能な状態に維持しなければならないという問題がある。
【０００６】
消費者の購入した商品情報を販売店が管理し、条件を満たした消費者に特典キーデータを提供する方法では、消費者が同一商品グループの一部の商品をそれぞれ別の販売店で購入した場合に、販売店同士で顧客の購入した商品情報を提供し合う必要があり、また販売店の顧客それぞれに対して販売店が扱う多種の商品グループの購入状況を全て記録しなければならないという問題がある。
【０００７】
また、商品グループを構成する商品にIDを割り当てて、商品を購入する毎にそのIDを配布し、消費者側の専用ソフトウェアで購入状況を判定し、商品グループの商品全てを購入したか判定する方法では、特典データを有効化する処理の判定がプログラムロジックに依存するため、偽造データやプログラム改変によって不正に特典キーデータを取得できる問題がある。
【０００８】
さらに、特典キーデータを分割して複数の販売店秘密鍵で暗号化する方法は、全ての分割特典キーデータを入手しない消費者は特典キーデータが復元できないことがプログラムロジックに依らず暗号技術で保証されているが、商品を購入した時点で分割キーデータが得られるため、複数の悪意を持つ消費者が結託して、互いに分割した特典キーデータを交換することで、不正に特典キーデータを取得することができる問題がある。
【０００９】
本発明の目的は、サービスとして提供する特典データを特典キーデータなしでは利用不可能な状態で不特定多数に配布して、製造元側および販売店側で商品購入情報の管理を不要として、商品購入時に消費者側に送付するデータの盗聴や不正開示による特典キーデータの不正取得を防ぎ、商品グループに属する商品全てを購入した消費者のみが特典データを利用可能とする特典キーデータを取得できることを暗号技術的に保証する装置及び方法を提供することにある。
【００１０】
【課題を解決するための手段】
上記目的を達成するため、請求項１に係る発明は、商品購入に関する所定の条件を満たした消費者に特典データを提供する暗号化配布装置であって、ｋ個の商品からなる商品グループに対応する販売店秘密鍵を格納した記憶手段と、前記商品グループに対応する特典キーデータを格納した記憶手段と、消費者公開鍵を格納した記憶手段と、特典データを前記特典キーデータが無ければ復元が不可能な状態に変換して消費者のデータ受領装置に配布する手段と、前記販売店秘密鍵を前記所定数ｋ個に分割して、前記ｋ個の商品に対応するｋ個の分割秘密鍵（ある元データに対して該ｋ個の分割秘密鍵をそれぞれ用いて暗号化したｋ個の部分暗号化データを、元の販売店秘密鍵に対応する販売店公開鍵で復号してｋ個の部分復号化データを生成し、それらｋ個の部分復号化データを合成すると元データが復元できるように、分割されたもの）を作成する手段と、前記特典キーデータを前記消費者公開鍵で暗号化し、暗号化特典キーデータを作成する手段と、消費者が前記商品グループに属する商品を購入したとき、作成した暗号化特典キーデータを前記ｋ個の分割秘密鍵の内の当該購入した商品に対応する１つで暗号化し、部分暗号化データを作成して消費者のデータ受領装置に送付する手段とを備えたことを特徴とする。
【００１１】
請求項２に係る発明は、請求項１に記載の暗号化配布装置から提供される前記特典データを受領して利用可能にするデータ受領装置であって、前記販売店秘密鍵に対応する販売店公開鍵を格納した記憶手段と、前記消費者公開鍵に対応する消費者秘密鍵を格納した記憶手段と、送付された部分暗号化データを受信する手段と、受信した部分暗号化データを前記販売店公開鍵で復号化し、部分復号化データを取得する手段と、前記部分暗号化データの受信と復号化を繰り返すことにより、前記ｋ個の分割秘密鍵のそれぞれに対応するｋ個の部分復号化データを取得したとき、該取得したｋ個の部分復号化データを合成して暗号化特典キーデータを生成する手段と、生成した暗号化特典キーデータを前記消費者秘密鍵で復号化して、特典キーデータを復元する手段と、求めた特典キーデータを使用して前記特典データを使用可能な状態に復元する手段とを備えたことを特徴とする。
【００１２】
請求項３に係る発明は、商品購入に関する所定の条件を満たした消費者に特典データを提供する暗号化配布システムであって、暗号化配布装置とデータ受領装置とを備え、前記暗号化配布装置は、ｋ個の商品からなる商品グループに対応する販売店秘密鍵を格納した記憶手段と、前記商品グループに対応する特典キーデータを格納した記憶手段と、消費者公開鍵を格納した記憶手段と、特典データを前記特典キーデータが無ければ復元が不可能な状態に変換して消費者のデータ受領装置に配布する手段と、前記販売店秘密鍵を前記所定数ｋ個に分割して、前記ｋ個の商品に対応するｋ個の分割秘密鍵（ある元データに対して該ｋ個の分割秘密鍵をそれぞれ用いて暗号化したｋ個の部分暗号化データを、元の販売店秘密鍵に対応する販売店公開鍵で復号してｋ個の部分復号化データを生成し、それらｋ個の部分復号化データを合成すると元データが復元できるように、分割されたもの）を作成する手段と、前記特典キーデータを前記消費者公開鍵で暗号化し、暗号化特典キーデータを作成する手段と、消費者が前記商品グループに属する商品を購入したとき、作成した暗号化特典キーデータを前記ｋ個の分割秘密鍵の内の当該購入した商品に対応する１つで暗号化し、部分暗号化データを作成して消費者のデータ受領装置に送付する手段とを備え、前記データ受領装置は、前記販売店秘密鍵に対応する販売店公開鍵を格納した記憶手段と、前記消費者公開鍵に対応する消費者秘密鍵を格納した記憶手段と、送付された部分暗号化データを受信する手段と、受信した部分暗号化データを前記販売店公開鍵で復号化し、部分復号化データを取得する手段と、前記部分暗号化データの受信と復号化を繰り返すことにより、前記ｋ個の分割秘密鍵のそれぞれに対応するｋ個の部分復号化データを取得したとき、該取得したｋ個の部分復号化データを合成して暗号化特典キーデータを生成する手段と、生成した暗号化特典キーデータを前記消費者秘密鍵で復号化して、特典キーデータを復元する手段と、求めた特典キーデータを使用して前記特典データを使用可能な状態に復元する手段とを備えたことを特徴とする。
【００１３】
請求項４に係る発明は、サーバ装置から、商品購入に関する所定の条件を満たした消費者のクライアント装置に特典データを提供する暗号化配布方法であって、サーバ装置は、ｋ個の商品からなる商品グループに対応する販売店秘密鍵を格納した記憶手段と、前記商品グループに対応する特典キーデータを格納した記憶手段と、消費者公開鍵を格納した記憶手段とを備え、クライアント装置は、前記販売店秘密鍵に対応する販売店公開鍵を格納した記憶手段と、前記消費者公開鍵に対応する消費者秘密鍵を格納した記憶手段とを備えたものとするとともに、サーバ装置が、前記特典データを前記特典キーデータが無ければ復元が不可能な状態に変換して消費者クライアント装置に配布するステップと、サーバ装置が、前記販売店秘密鍵を前記所定数ｋ個に分割して、前記ｋ個の商品に対応するｋ個の分割秘密鍵（ある元データに対して該ｋ個の分割秘密鍵をそれぞれ用いて暗号化したｋ個の部分暗号化データを、元の販売店秘密鍵に対応する販売店公開鍵で復号してｋ個の部分復号化データを生成し、それらｋ個の部分復号化データを合成すると元データが復元できるように、分割されたもの）を作成するステップと、サーバ装置が、前記特典キーデータを前記消費者公開鍵で暗号化し、暗号化特典キーデータを作成するステップと、消費者が前記商品グループに属する商品を購入したとき、サーバ装置が、作成した暗号化特典キーデータを前記ｋ個の分割秘密鍵の内の当該購入した商品に対応する１つで暗号化し、部分暗号化データを作成するステップと、サーバ装置から消費者のクライアント装置に前記部分暗号化データを送付するステップと、消費者のクライアント装置が、前記送付された部分暗号化データを受信するステップと、クライアント装置が、受信した部分暗号化データを前記販売店公開鍵で復号化し、部分復号化データを取得するステップと、クライアント装置が、前記部分暗号化データの受信と復号化を繰り返すことにより、前記ｋ個の分割秘密鍵のそれぞれに対応するｋ個の部分復号化データを取得したとき、該取得したｋ個の部分復号化データを合成して暗号化特典キーデータを生成するステップと、クライアント装置が、生成した暗号化特典キーデータを前記消費者秘密鍵で復号化して、特典キーデータを復元するステップと、クライアント装置が、求めた特典キーデータを使用して前記特典データを使用可能な状態に復元するステップとを備えたことを特徴とする。
【００１４】
【発明の実施の形態】
以下、本発明の実施の形態を、図面を参照して具体的に説明する。
【００１５】
図１は、本発明の実施の形態に係る電子商取引システムの構成を示すブロック図である。本電子商取引システムは、図１に示すように、サーバ装置１とクライアント装置２がネットワーク上に存在する形態となる。サーバ装置１は、購入受付装置３と、RSA暗号処理装置４と、RSA鍵分割装置５と、電子商取引のユーザに関するマスタファイルとして一般的に作成され消費者公開鍵を格納している顧客情報ファイル６と、商品グループに関する情報及び特典キーデータを格納している商品グループファイル７と、商品グループに対応する販売店秘密鍵を分割した分割秘密鍵を格納している分割秘密鍵ファイル８とを備える。
【００１６】
クライアント装置２は、購入要求装置９と、RSA暗号処理装置１０と、特典キーデータ復元装置１１と、消費者秘密鍵を格納している消費者秘密鍵ファイル１２と、販売店公開鍵を格納している販売店公開鍵ファイル１３と、商品購入時に入手した部分暗号化データ１６を格納している特典情報ファイル１４とを備える。
【００１７】
サーバ側の購入受付装置３は、HTTPサーバ装置３Ａと、販売処理装置３Ｂと、特典処理装置３Ｃと、商品データベース３Ｄと、販売データベース３Ｅとを有している。
【００１８】
HTTPサーバ装置３Ａ、販売処理装置３Ｂ、商品データベース３Ｄ、及び販売データベース３Ｅは、一般的な電子商取引を処理するものであり、消費者の操作するクライアント装置２からの購入要求の可否を判定して商品の販売及び課金、発送指示と記録などの処理を行うとともに、特典処理装置３Ｃの呼び出し元および特典処理装置３Ｃの出力する部分暗号化データ１６の送信装置として機能する。
【００１９】
RSA暗号処理装置４は、RSA暗号化処理と、RSA復号化処理と、RSA鍵生成処理を行う。
【００２０】
RSA鍵分割装置５は、RSA秘密鍵を複数の分割秘密鍵に分割する処理を行う。ここでは、RSA秘密鍵は(d,n)、それに対応するRSA公開鍵は(e,n)なる値から成り、nは十分大きな素数p,qの積であり、平文m,暗号文c に対して
c = memod n
m = cdmod n
の演算で暗号処理及び復号処理を行うものとする。このとき、RSA鍵分割装置５は、RSA秘密鍵を
d1+d2+…+dk= d
となるようにd1〜dkを定めて（d1,n）〜（dk,n）のk個の分割秘密鍵１５に分割する装置として機能する。RSA暗号処理装置４により、特典キーデータ１８を消費者公開鍵１Ｂで暗号化した暗号文を、分割秘密鍵１５を使用してさらにRSA暗号化することでk個の部分暗号化データ１６（G1〜Gk）を作成する。分割する個数であるkは商品グループの商品の数である。また、k個の商品とk個の分割秘密鍵１５はそれぞれ対応している。第１の商品に対応する分割秘密鍵が（d1,n）、第２の商品に対応する分割秘密鍵が（d2,n）、…、第kの商品に対応する分割秘密鍵が（dk,n）という具合である。
【００２１】
クライアント側の購入要求装置９は、HTTPブラウザ装置９Ａと、特典処理プラグイン装置９Ｂを有している。
【００２２】
HTTPブラウザ装置９Ａは、一般的な電子商取引を処理するものであり、サーバ装置１が公開する電子商取引サイトにおける商品情報表示と、商品選択と、購入処理の実行を行うと共に、特典処理プラグイン装置９Ｂを起動して特典処理装置３Ｃが送信した部分暗号化データ１６を渡す呼び出し元として機能する。
【００２３】
RSA暗号処理装置１０は、RSA暗号化処理と、RSA復号化処理と、RSA鍵生成処理を行う。
【００２４】
特典キーデータ復元装置１１は、RSA暗号処理装置１０によって部分暗号化データ１６を販売店公開鍵２Ａで復号化した部分復号化データ１７を作成し、全ての部分復号化データ１７を合成して暗号化特典キーデータ（後述する図２の２２）を作成し、その暗号化特典キーデータを消費者秘密鍵２Ｂで復号化して特典キーデータ１８を取得する処理を行う。具体的には、サーバ装置１から上述したk個の部分暗号化データ１６（G1〜Gk）を取得して、それぞれ販売店公開鍵２ＡでRSA復号化してk個の部分復号化データ１７（F1〜Fk）を取得し、販売店公開鍵(e,n)から取得したnを用いて
R = （F1×F2×…×Fk） mod n
の演算を行って暗号化特典キーデータR（後述する図２の２２）を作成し、作成したRを消費者秘密鍵２ＢでRSA復号化して特典キーデータ１８を復元する機能を有する。
【００２５】
上述したように分割秘密鍵を用いて特典キーデータを配布することにより、部分復号化データF1〜Fkが全て同じ暗号化特典キーデータRから作成されていなければ、復元処理で得られるデータは全く無意味な値となることが保証される。暗号化特典キーデータRは消費者毎に消費者公開鍵で暗号化されているため、消費者が未購入の商品に対する部分暗号化データを他者から取得して復元処理を試みた場合でも、特典キーデータが不正に取得されることを防げる。また、部分復号化データF1〜Fkを取得する順序に依存せずに復元できるため、商品グループの購入順序などに対する制限を設ける必要はない。
【００２６】
次に、各ファイルの機能について説明する。
【００２７】
顧客情報ファイル６は、顧客情報レコードと消費者公開鍵レコードを有し、消費者が電子商取引システムへ参加する時点で作成されるマスタファイルとなる。消費者公開鍵レコードは１つの消費者公開鍵証明書を格納する。顧客情報ファイル６から、各消費者の公開鍵１Ｂを読み出すことができる。
【００２８】
商品グループファイル７は、商品グループレコードと、商品レコードと、特典フラグレコードと、特典キーデータレコードとから構成され、商品グループに関する情報を管理する。このうち商品レコードは一般的に複数レコードからなる。商品グループファイル７により、商品グループがどの商品から構成されているかが分かる。また、商品グループに対応する特典キーデータ１８を読み出すことができる。商品グループに対応する特典キーデータとは、その商品グループの商品全てを購入した消費者に供与される特典データを利用するために必須となるキーデータである。
【００２９】
分割秘密鍵ファイル８は、秘密鍵情報レコードと、分割秘密鍵レコードから構成され、このうち分割秘密鍵レコードは一般的に複数レコードからなる。秘密鍵情報レコードは、分割前の販売店秘密鍵と販売店公開鍵証明書を各１個ずつ格納する。分割秘密鍵レコードとして格納される分割秘密鍵は、例えば上述の（d1,n）〜（dk,n）のk個の分割秘密鍵である。
【００３０】
消費者秘密鍵ファイル１２は、このクライアント装置２を使用する消費者の消費者鍵レコードからなる。その消費者鍵レコードには、RSA暗号処理装置１０によって生成された当該消費者の消費者秘密鍵と、それに対応する消費者公開鍵証明書を各１個ずつ格納する。
【００３１】
販売店公開鍵ファイル１３は、販売店情報レコードと販売店公開鍵レコードから構成される。このクライアント装置２を使用する消費者が電子商取引システムに参加する時点または販売店サイトにおける最初の処理において取得した販売店情報を管理する機能を有する。販売店公開鍵レコードは、１つの販売店公開鍵証明書を格納する。
【００３２】
特典情報ファイル１４は、商品グループ情報レコードと、部分暗号化データレコードからなり、電子商取引で販売される商品の中で特典データを有する商品グループに関する情報と取得済みの部分暗号化データ１６を管理する機能を有する。このうち部分暗号化データレコードは、一般的に複数レコードからなる。
【００３３】
図２は、特典データ２１を消費者が利用可能とするまでの、各種RSA鍵、部分暗号化データ１６、及び特典キーデータ１８とそれに関係するデータの流れを示す図である。
【００３４】
図２において、サーバ装置１は、特典データ２１を、特典キーデータ１８がなければ利用できない状態に変換して消費者に配布する。配布の方法は任意であるが、ここではネットワークまたは記録媒体による送付とする。消費者が商品グループに属する商品を購入したとき、その商品グループに対応する特典キーデータ１８を当該消費者の消費者公開鍵１Ｂで暗号化して暗号化特典キーデータ２２を作成し、購入した商品に対応する分割秘密鍵１５を分割秘密鍵ファイル８から読み出す。
【００３５】
図２の分割秘密鍵１、分割秘密鍵２、…、分割秘密鍵ｋは、それぞれ前述したk個の分割秘密鍵（d1,n）〜（dk,n）を表す。これらk個の分割秘密鍵は、各商品に対応している。消費者が商品グループに属する商品を購入したとき、分割秘密鍵ファイル８から読み出す分割秘密鍵１５は、購入した商品に対応する分割秘密鍵である。ここでは、第ｉ番目（ｉは１〜ｋの整数）の商品を購入し、それに対応する分割秘密鍵（di,n）を読み出したとする。
【００３６】
購入した商品に対応する分割秘密鍵（di,n）を読み出した後、その分割秘密鍵を利用して、RSA暗号処理装置４で暗号化特典キーデータ２２をさらにRSA暗号化する。これにより、対応する部分暗号化データGiが作成される。この部分暗号化データGiが、当該商品を購入した消費者に送られる。
【００３７】
消費者は商品グループの商品を購入するたびにその商品と対応する部分暗号化データ１６を得ることができる。したがって、消費者は、商品グループに属するｋ個の商品を全て購入することにより、ｋ個の部分暗号化データ１６（G1〜Gk）を全て取得できる。図２の部分暗号化データ１〜ｋは、ｋ個の部分暗号化データ１６（G1〜Gk）に対応している。
【００３８】
クライアント装置２では、RSA暗号処理装置１０によって、上述したようにサーバ装置１から送られた部分暗号化データ１６を販売店公開鍵２Ａ（上述した公開鍵(e,n)である）で復号化して部分復号化データ１７を作成する。取得したｋ個の部分暗号化データ（G1〜Gk）のそれぞれから部分復号化データ１７を作成することにより、ｋ個の部分復号化データ１７（F1〜Fk）が取得できる。図２の部分復号化データ１〜ｋは、ｋ個の部分復号化データ１７（F1〜Fk）に対応している。これらｋ個の部分復号化データ１７（F1〜Fk）を合成して、暗号化特典キーデータ２２を作成する。この合成は、上述したように、販売店公開鍵(e,n)から取得したnを用いて
R = （F1×F2×…×Fk） mod n
の演算を行って、暗号化特典キーデータＲを作成する処理である。求めた暗号化特典キーデータＲを消費者秘密鍵２Ｂで復号化することにより、特典キーデータ１８を取得する。この特典キーデータ１８を使用することによって、特典データ２１を利用可能な状態に設定することができる。
【００３９】
図３は、特典付きの商品グループに属する商品を販売する処理の流れを示すフローチャートである。
【００４０】
なお、図３の商品の販売処理の前に、以下の（１）〜（１０）の処理が実行済みである状態になっていることを前提とする。
【００４１】
（１）特典データ２１を、特典キーデータ１８がなければ利用不可能な状態とした上でネットワークあるいは記録媒体等によって消費者に配布し、特典を利用しようとする消費者が予め取得する。（２）販売店側のサーバ装置１で、販売店公開鍵と販売店秘密鍵をRSA暗号処理装置４によって予め作成する。（３）サーバ装置１からクライアント装置２の消費者に販売店公開鍵を配布し、クライアント装置２ではその販売店公開鍵を販売店公開鍵ファイル１３に格納する。（４）サーバ装置１で、販売店秘密鍵をRSA鍵分割装置５によって分割し、分割秘密鍵ファイル８に格納する。（５）電子商取引を行う消費者情報を顧客情報ファイル６に格納する。（６）商品グループに対応する特典キーデータを商品グループファイル７に格納する。（７）クライアント装置２で、消費者公開鍵と消費者秘密鍵をRSA暗号処理装置１０によって予め作成する。（８）消費者公開鍵を販売店に送付して顧客情報ファイル６に格納する。（９）販売店情報を取得して販売店公開鍵ファイル１３に新規レコードを作成する。（１０）消費者秘密鍵を消費者秘密鍵ファイル１２に格納する。
【００４２】
以上の操作が実行されている前提の元で消費者がクライアント装置２で商品の購入操作を行うと、HTTPブラウザ装置９Ａから購入受付装置３のHTTPサーバ装置３Ａに購入要求が送信される。ステップ３１で、購入受付装置３は、販売処理装置３Ｂによって購入要求に応じた商品の販売処理を実行し、結果を販売データベース３Ｅに記録する。ステップ３２で、特典処理装置３Ｃが商品グループ判定処理を実行して商品データベース３Ｄを検査し、販売した商品が特典データのある商品グループに属しているかどうかを判定する。
【００４３】
特典データなしの商品の場合は、HTTPサーバ装置３Ａから販売結果データ２３をHTTPブラウザ装置９Ａに送信する。HTTPブラウザ装置９Ａは、その販売結果データ２３を受けて、特典処理プラグイン装置９Ｂを呼び出さずに、消費者に結果を表示して処理を完了する。
【００４４】
ステップ３２の判定で特典データを持つ商品の場合は、ステップ３３で、特典処理装置３Ｃによる部分暗号化データ収集処理により、商品グループファイル７から特典キーデータ１８を取得し、分割秘密鍵ファイル８から当該商品に対応する分割秘密鍵１５を取得し、顧客情報ファイル６から当該消費者の消費者公開鍵１Ｂを取得する。ステップ３４で、RSA暗号処理装置１０による部分暗号化処理により、特典キーデータ１８を消費者公開鍵１ＢでRSA暗号化した暗号化特典データ２２を、分割秘密鍵１５でさらにRSA暗号化して部分暗号化データ１６を作成する。
【００４５】
HTTPサーバ装置３Ａは、販売結果データ２３と共に、商品グループ情報１Ｃ及び部分暗号化データ１６をHTTPブラウザ装置９Ａに送信する。HTTPブラウザ装置９Ａは、応答に含まれる部分暗号化データ１６を検出して、特典処理プラグイン装置９Ｂを起動し、商品グループ情報１Ｃ及び部分暗号化データ１６を渡した後に、消費者に結果を表示する。
【００４６】
特典処理プラグイン装置９Ｂは、商品グループ情報１Ｃと部分暗号化データ１６を特典情報ファイル１４に格納する。商品グループに属する全ての商品の部分暗号化データ１６が取得された場合は、図４の処理を実行し、未取得の部分暗号化データがある場合は、そのまま処理を完了する。
【００４７】
図４は、商品グループに属する全ての商品を購入した場合に特典キーデータ１８を復元する処理の流れを示すフロ−チャ−トである。
【００４８】
特典処理プラグイン装置９Ｂが、全ての部分暗号化データ１６を取得した後に、消費者に特典データ２１（特典キーデータがないと利用できないようになっているデータであり、予め取得されているもの）の指定を要求する。指定された場合は、ステップ４１で、全ての部分暗号化データ１６を販売店公開鍵２Ａで復号化する部分復号化処理を実行する。次にステップ４２で、部分復号化データを特典キーデータ復元装置１１に渡して復元処理を実行して暗号化特典キーデータ２２を復元し、さらにその暗号化特典キーデータ２２を消費者秘密鍵２Ｂで復号化して特典キーデータ１８を取得する。ステップ４３で、特典キーデータ１８を使用して特典データ２１を消費者が利用可能な状態に設定する特典データ２１の有効化処理を実行する。ステップ４４で、消費者への通知処理を実行して処理を完了する。
【００４９】
【発明の効果】
以上説明したように、本発明によれば、電子商取引において特定の商品グループを全て購入した消費者にのみ提供する特典データを、特典キーデータがなければ利用不可能な状態で不特定多数に配布した上で、消費者公開鍵によって暗号化された特典キーデータをさらに分割して暗号化して送付することで、商品グループを全て購入した消費者のみ特典キーデータを復元して特典データを利用可能とするようにできる。
【００５０】
また、部分復号化データは購入した消費者に固有となるため、商品グループの一部または全部を購入していない消費者が未購入の商品に対する部分復号化データを通信路上の盗聴や消費者同士の交換で入手しても、不正に特典キーデータを復元することはできない。
【００５１】
さらに、商品購入状況は部分復号化データの有無という形で消費者側に保管されるが、部分復号化データから特典キーデータを復元できるか否かはプログラムロジックに依らず暗号技術的に決定されるため、プログラムの改変による商品購入状況の判定ロジック変更や、特典キーデータの不正復元は原理的に困難となっており、安全に消費者側に商品購入状況を保管することができるため、販売店サーバに商品購入状況の記録を保持する必要がない。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る電子商取引システムの概略構成を示すブロック図
【図２】特典キーデータの流れを示すブロック図
【図３】特典付きの商品グループを販売する処理の流れを示すフローチャート
【図４】特典キーデータを復元する処理の流れを示すフロ−チャ−ト
【符号の説明】
１…サーバ装置、２…クライアント装置、３…購入受付装置、４…RSA暗号処理装置、５…RSA鍵分割装置、６…顧客情報ファイル、７…分割秘密鍵ファイル、８…商品グループファイル、９…購入要求装置、１０…RSA暗号処理装置、１１…特典キーデータ復元装置、１２…消費者秘密鍵ファイル、１３…販売店公開鍵ファイル、１４…特典情報ファイル、１５…分割秘密鍵、１６…部分暗号化データ、１７…部分復号化データ、１８…特典キーデータ。
【図１】
0003992491.tif 000002
【図２】
0003992491.tif 000003
【図３】
0003992491.tif 000004
【図４】
0003992491.tif 000005