(57)【要約】近接装置(102)は、第１の動的認証値を非接触で端末に送信する。第１の認証値はＩＳＯトラック１フォーマットおよび／またはＩＳＯトラック２フォーマットで構成されたメッセージデータの任意データフィールドに含まれている。メッセージデータは、端末から発行人に送信(110)される。発行人は別個に第２の認証値を導出しそれを第１の認証値と比べる。
2005521332.tif 000002
【特許請求の範囲】
【請求項１】
近接装置を使用してトランザクションを実行する方法であって、
動的に第１の認証値を生成するステップと、
前記第１の認証値を前記近接装置から端末に送信するステップと、
ＩＳＯフォーマットで構成されたメッセージデータの任意データフィールドに前記第１の認証値を含ませるステップと、
検証のため前記端末から前記メッセージデータを送信するステップと、
を含む方法。
【請求項２】
請求項１に記載の方法において、
乱数を生成するステップと、
前記乱数を含む認証コマンドを前記端末から前記近接装置に非接触で送信するステップとをも含み、
前記動的に第１の認証値を生成するステップは、
前記近接装置が第１の認証鍵を使用して、少なくとも前記乱数を含むデータから前記第１の認証値を導出するステップを含み、
さらに、前記方法は、
前記メッセージデータと第２の認証鍵とを使用して第２の認証値を計算するステップと、
前記第２の認証値と前記第１の認証値とを比べて前記トランザクションを認証するステップとを含む、
ことを特徴とする方法。
【請求項３】
請求項１に記載の方法において、
前記メッセージデータは、ＩＳＯトラック２フォーマットおよびＩＳＯトラック１フォーマットの少なくとも１つで構成されている、
ことを特徴とする方法。
【請求項４】
請求項２に記載の方法において、
ユーザがユーザデータを前記端末に入力するステップをも含み、
前記乱数を生成するステップが、前記ユーザデータに基づき前記端末によって実行される、
ことを特徴とする方法。
【請求項５】
請求項１に記載の方法において、
前記メッセージデータの任意データフィールドに前記第１の認証値を含ませるステップが、前記端末によって実行される、
ことを特徴とする方法。
【請求項６】
請求項１に記載の方法において、
前記メッセージデータの任意データフィールドに前記第１の認証値を含ませるステップが、前記近接装置によって実行される、
ことを特徴とする方法。
【請求項７】
請求項１に記載の方法において、
前記メッセージデータの任意データフィールドに前記第１の認証値を含ませるステップが、発行人のエージェントによって実行される、
ことを特徴とする方法。
【請求項８】
請求項１に記載の方法において、
前記近接装置はクレジットカードの形状である、
ことを特徴とする方法。
【請求項９】
請求項８に記載の方法において、
前記近接装置は磁気ストライプを含む、
ことを特徴とする方法。
【請求項１０】
請求項９に記載の方法において、
前記近接装置は印刷された認証値を含む、
ことを特徴とする方法。
【請求項１１】
請求項１に記載の方法において、
前記近接装置はキーフォブの形状である、
ことを特徴とする方法。
【請求項１２】
請求項１に記載の方法において、
前記近接装置は携帯電話に含まれている、
ことを特徴とする方法。
【請求項１３】
請求項１に記載の方法において、
前記近接装置は時計に含まれている、
ことを特徴とする方法。
【請求項１４】
請求項２に記載の方法において、
さらに、トランザクションを試みる前に、前記近接装置が前記端末の操作フィールド内にあるただ１つだけの近接装置であることを前記端末によって保証させるステップ、
を含むことを特徴とする方法。
【請求項１５】
請求項１に記載の方法において、
前記端末によって、前記端末の操作フィールドに複数の近接装置があるかを検出するステップと、
ユーザに、前記複数の近接装置の１つを選択するよう促すステップと、
を含むことを特徴とする方法。
【請求項１６】
請求項２に記載の方法において、
前記乱数を少なくとも含むデータは、
さらに、近接チップカウンタ、前記乱数の表現、および前記近接チップカウンタの表現のうちの少なくとも１つを含む、
ことを特徴とする方法。
【請求項１７】
請求項２に記載の方法において、
前記近接装置がカウンタを具え、
前記方法は、さらに、前記近接装置が前記端末に結合された後に、前記近接装置によって前記カウンタを増加させるステップをも含む、
ことを特徴とする方法。
【請求項１８】
請求項１に記載の方法において、
さらに、前記メッセージデータを前記端末から前記発行人に送信するステップの前に、前記端末によって前記メッセージデータを２進化１０進数フォーマットに変換するステップを含む、
ことを特徴とする方法。
【請求項１９】
請求項１に記載の方法において、
前記近接装置は近接チップを含む、
ことを特徴とする方法。
【請求項２０】
請求項２に記載の方法において、
前記第２の認証鍵は前記第１の認証鍵と同じである、
ことを特徴とする方法。
【請求項２１】
請求項２に記載の方法において、
前記第１の認証鍵は公開鍵基盤の私用鍵であり、前記第２の認証鍵は公開鍵基盤の公開鍵であり、前記公開鍵基盤の公開鍵は、前記公開鍵基盤の私用鍵に関連付けられている、
ことを特徴とする方法。
【請求項２２】
請求項２に記載の方法において、
前記メッセージデータは、さらに、前記近接チップカウンタの表現、前記乱数の表現、前記乱数、および前記近接チップカウンタのうちの少なくとも１つを含む、
ことを特徴とする方法。
【請求項２３】
請求項２２に記載の方法において、
さらに、前記端末によって、前記メッセージデータを、前記乱数、および前記乱数の表現のうちの少なくとも１つと比べるステップをも含む、
ことを特徴とする方法。
【請求項２４】
請求項２２に記載の方法において、
さらに、前記発行人によって、前記メッセージデータを、前記乱数、および前記乱数の表現のうちの少なくとも１つと比べるステップをも含む、
ことを特徴とする方法。
【請求項２５】
請求項２に記載の方法において、
前記乱数を生成するステップは前記端末によって実施される、
ことを特徴とする方法。
【請求項２６】
近接装置を使用してトランザクションを処理するシステムであって、
第１の認証値を動的に生成するステップと、
前記第１の認証値を前記近接装置から端末に送信するステップと、
ＩＳＯフォーマットで構成されているメッセージデータの任意データフィールドに、前記第１の認証値を含ませるステップと、
検証のため前記端末から前記メッセージデータを送信するステップと、
を実施するように構成された処理装置を具える、
ことを特徴とするシステム。
【請求項２７】
請求項２６に記載のシステムにおいて、
前記処理装置は、さらに、
乱数を生成するステップと、
非接触で、前記乱数を含む認証コマンドを前記端末から前記近接装置へ送信するステップとを実施するように構成され、
前記第１の認証値を動的に生成するステップは、第１の認証鍵を使用して、前記近接装置によって、少なくとも前記乱数を含むようなデータから前記第１の認証値を導出するステップを含み、
前記処理装置は、さらに、
第２の認証鍵と前記メッセージデータとを使用して発行人によって第２の認証値を計算するステップと、
前記発行人によって、前記第２の認証値を前記第１の認証値と比べて前記トランザクションを検証するステップとを実施するように構成される、
ことを特徴とするシステム。
【請求項２８】
請求項２６に記載のシステムにおいて、
前記メッセージデータは、ＩＳＯトラック１フォーマットおよびＩＳＯトラック２フォーマットのうちの少なくとも１つで構成されている、
ことを特徴とするシステム。
【請求項２９】
請求項２７に記載のシステムにおいて、
前記端末はユーザからユーザデータを受信するよう構成され、
さらに前記端末は、前記ユーザデータに基づき前記乱数を生成するステップを実施するように構成されている、
ことを特徴とするシステム。
【請求項３０】
請求項２６に記載のシステムにおいて、
前記端末は、
前記メッセージデータの前記任意データフィールドに前記第１の認証値を含ませるステップを実施するように構成されている、
ことを特徴とするシステム。
【請求項３１】
請求項２６に記載のシステムにおいて、
前記近接装置は、
前記メッセージデータの前記任意データフィールドに前記第１の認証値を含ませるステップを実施するように構成されている、
ことを特徴とするシステム。
【請求項３２】
請求項２６に記載のシステムにおいて、
さらに、発行人のエージェントを具え、
前記エージェントは、
前記メッセージデータの前記任意データフィールドに前記第１の認証値を含ませるステップを実施するよう構成されている、
ことを特徴とするシステム。
【請求項３３】
請求項２６に記載のシステムにおいて、
前記近接装置はクレジットカードの形状である、
ことを特徴とするシステム。
【請求項３４】
請求項３３に記載のシステムにおいて、
前記近接装置は磁気ストライプを含む、
ことを特徴とするシステム。
【請求項３５】
請求項３４に記載のシステムにおいて、
前記近接装置は印刷された認証値を含む、
ことを特徴とするシステム。
【請求項３６】
請求項２６に記載のシステムにおいて、
前記近接装置はキーフォブの形状である、
ことを特徴とするシステム。
【請求項３７】
請求項２６に記載のシステムにおいて、
前記近接装置は携帯電話に含まれている、
ことを特徴とするシステム。
【請求項３８】
請求項２６に記載のシステムにおいて、
前記近接装置は時計に含まれている、
ことを特徴とするシステム。
【請求項３９】
請求項２７に記載のシステムにおいて、
前記近接装置は、
トランザクションを試みる前に、前記端末の操作フィールド内にあるただ１つだけの近接装置であることを前記端末によって保証させるステップを実施するよう構成されている、
ことを特徴とするシステム。
【請求項４０】
請求項２６に記載のシステムにおいて、
前記端末は、
前記端末の操作フィールドに複数の近接装置があるかを検出するステップと、
ユーザに、前記複数の近接装置の１つを選択するよう促すステップと、を実施するよう構成されている、
ことを特徴とするシステム。
【請求項４１】
請求項２７に記載のシステムにおいて、
前記乱数を少なくとも含むデータは、
さらに、近接チップカウンタ、前記乱数の表現、および前記近接チップカウンタの表現のうちの少なくとも１つを含む、
ことを特徴とするシステム。
【請求項４２】
請求項２７に記載のシステムにおいて、
前記近接装置がカウンタを具え、
前記近接装置は、
前記近接装置が前記端末に結合された後に、前記カウンタを増加させるステップを実行するように構成されている、
ことを特徴とするシステム。
【請求項４３】
請求項２６に記載のシステムにおいて、
前記端末は、
前記メッセージデータを前記端末から前記発行人に送信するステップの前に、前記メッセージデータを２進化１０進数フォーマットに変換するステップを実施するように構成されている、
ことを特徴とするシステム。
【請求項４４】
請求項２６に記載のシステムにおいて、
前記近接装置は近接チップを含む、
ことを特徴とするシステム。
【請求項４５】
請求項２７に記載のシステムにおいて、
前記第２の認証鍵は前記第１の認証鍵と同じである、
ことを特徴とするシステム。
【請求項４６】
請求項２７に記載のシステムにおいて、
前記第１の認証鍵は公開鍵基盤の私用鍵であり、前記第２の認証鍵は公開鍵基盤の公開鍵であり、前記公開鍵基盤の公開鍵は、前記公開鍵基盤の私用鍵に関連付けられている、
ことを特徴とするシステム。
【請求項４７】
請求項２７に記載のシステムにおいて、
前記メッセージデータは、さらに、前記近接チップカウンタの表現、前記乱数の表現、前記乱数、および前記近接チップカウンタのうちの少なくとも１つを含む、
ことを特徴とするシステム。
【請求項４８】
請求項４７に記載のシステムにおいて、
前記端末は、
前記メッセージデータを、前記乱数、および前記乱数の表現のうちの少なくとも１つと比べるステップを実施するように構成されている、
ことを特徴とするシステム。
【請求項４９】
請求項４７に記載のシステムにおいて、
前記発行人は、
前記メッセージデータを、前記乱数、および前記乱数の表現のうちの少なくとも１つと比べるステップを実施するように構成されている、
ことを特徴とするシステム。
【請求項５０】
請求項２７に記載のシステムにおいて、
前記端末は、
前記乱数を生成するステップを実施するように構成されている、
ことを特徴とするシステム。
【請求項５１】
近接装置を使用してトランザクションを実行するためのコンピュータ可読な媒体であって、
動的に第１の認証値を生成するステップと、
前記第１の認証値を前記近接装置から端末に送信するステップと、
ＩＳＯフォーマットで構成されたメッセージデータの任意データフィールドに前記第１の認証値を含ませるステップと、
検証のため前記端末から前記メッセージデータを送信するステップと、
をプロセッサに実施させることを指示することが実施可能な命令のセットを持つ媒体。
【請求項５２】
請求項５１に記載のコンピュータ可読な媒体において、
前記命令のセットは、さらに、
乱数を生成するステップと、
前記乱数を含む認証コマンドを前記端末から前記近接装置に非接触で送信するステップとを前記プロセッサに実施させることを指示することが実施可能であり、
前記動的に第１の認証値を生成するステップは、前記近接装置によって第１の認証鍵を使用して、少なくとも前記乱数を含むデータから前記第１の認証値を導出するステップを含み、
前記命令のセットは、さらに、
前記メッセージデータと第２の認証鍵とを使用して第２の認証値を計算するステップと、
前記第２の認証値と前記第１の認証値とを比べて前記トランザクションを認証するステップとを、前記プロセッサに実施させることを指示することが実施可能である、
ことを特徴とする媒体。
【請求項５３】
請求項５１に記載のコンピュータ可読な媒体において、
前記メッセージデータは、ＩＳＯトラック１フォーマットおよびＩＳＯトラック２フォーマットの少なくとも１つで構成されている、
ことを特徴とする媒体。
【請求項５４】
請求項５２に記載のコンピュータ可読な媒体において、
コンピュータ可読な媒体は、
ユーザにユーザデータを前記端末に入力することを指示することが実施可能であり、
前記乱数を生成するステップが、前記ユーザデータに基づき前記端末によって実行される、
ことを特徴とする媒体。
【請求項５５】
請求項５１に記載のコンピュータ可読な媒体において、
前記メッセージデータの任意データフィールドに前記第１の認証値を含ませるステップが、前記端末によって実行される、
ことを特徴とする媒体。
【請求項５６】
請求項５１に記載のコンピュータ可読な媒体において、
前記メッセージデータの任意データフィールドに前記第１の認証値を含ませるステップが、前記近接装置によって実行される、
ことを特徴とする媒体。
【請求項５７】
請求項５１に記載のコンピュータ可読な媒体において、
前記メッセージデータの任意データフィールドに前記第１の認証値を含ませるステップが、発行人のエージェントによって実行される、
ことを特徴とする媒体。
【請求項５８】
請求項５１に記載のコンピュータ可読な媒体において、
前記近接装置はクレジットカードの形状である、
ことを特徴とする媒体。
【請求項５９】
請求項５８に記載のコンピュータ可読な媒体において、
前記近接装置は磁気ストライプを含む、
ことを特徴とする媒体。
【請求項６０】
請求項５９に記載のコンピュータ可読な媒体において、
前記近接装置は印刷された認証値を含む、
ことを特徴とする媒体。
【請求項６１】
請求項５１に記載のコンピュータ可読な媒体において、
前記近接装置はキーフォブの形状である、
ことを特徴とする媒体。
【請求項６２】
請求項５１に記載のコンピュータ可読な媒体において、
前記近接装置は携帯電話に含まれている、
ことを特徴とする媒体。
【請求項６３】
請求項５１に記載のコンピュータ可読な媒体において、
前記近接装置は時計に含まれている、
ことを特徴とする媒体。
【請求項６４】
請求項５１に記載のコンピュータ可読な媒体において、
前記命令のセットは、
トランザクションを試みる前に、前記近接装置が前記端末の操作フィールド内にあるただ１つだけの近接装置であることを前記端末によって保証させるステップを前記プロセッサに実施させることを指示することが実施可能である、
ことを特徴とする媒体。
【請求項６５】
請求項５２に記載のコンピュータ可読な媒体において、
前記命令のセットは、
前記端末によって、前記端末の操作フィールドに複数の近接装置があるかを検出するステップと、
ユーザに、前記複数の近接装置の１つを選択するよう促すステップとを前記プロセッサに実施させることを指示することが実施可能である、
ことを特徴とする媒体。
【請求項６６】
請求項５２に記載のコンピュータ可読な媒体において、
前記乱数を少なくとも含むデータは、
さらに、近接チップカウンタ、前記乱数の表現、および前記近接チップカウンタの表現のうちの少なくとも１つを含む、
ことを特徴とする媒体。
【請求項６７】
請求項５２に記載のコンピュータ可読な媒体において、
前記近接装置がカウンタを具え、
前記命令のセットは、
前記近接装置が前記端末に結合された後に、前記近接装置によって前記カウンタを増加させるステップを前記プロセッサに実施させることを指示することが実施可能である、
ことを特徴とする媒体。
【請求項６８】
請求項５１に記載のコンピュータ可読な媒体において、
前記命令のセットは、
前記メッセージデータを前記端末から前記発行人に送信するステップの前に、前記端末によって前記メッセージデータを２進化１０進数フォーマットに変換するステップを前記プロセッサに実施させることを指示することが実施可能である、
ことを特徴とする媒体。
【請求項６９】
請求項５１に記載のコンピュータ可読な媒体において、
前記近接装置は近接チップを含む、
ことを特徴とする媒体。
【請求項７０】
請求項５２に記載のコンピュータ可読な媒体において、
前記第２の認証鍵は、前記第１の認証鍵と同じである、
ことを特徴とする媒体。
【請求項７１】
請求項５２に記載のコンピュータ可読な媒体において、
前記第１の認証鍵は公開鍵基盤の私用鍵であり、前記第２の認証鍵は公開鍵基盤の公開鍵であり、前記公開鍵基盤の公開鍵は、前記公開鍵基盤の私用鍵に関連付けられている、
ことを特徴とする媒体。
【請求項７２】
請求項５２に記載のコンピュータ可読な媒体において、
前記メッセージデータは、さらに、前記近接チップカウンタの表現、前記乱数の表現、前記乱数、および前記近接チップカウンタのうちの少なくとも１つを含む、
ことを特徴とする媒体。
【請求項７３】
請求項７２に記載のコンピュータ可読な媒体において、
前記命令のセットは、
前記端末によって、前記メッセージデータを、前記乱数、および前記乱数の表現のうちの少なくとも１つと比べるステップを前記プロセッサに実施させることを指示することが実施可能である、
ことを特徴とする媒体。
【請求項７４】
請求項７２に記載のコンピュータ可読な媒体において、
前記命令のセットは、
前記発行人によって、前記メッセージデータを、前記乱数、および前記乱数の表現のうちの少なくとも１つと比べるステップを前記プロセッサに実施させることを指示することが実施可能である、
ことを特徴とする媒体。
【請求項７５】
請求項５２に記載のコンピュータ可読な媒体において、
前記乱数を生成するステップは前記端末によって実施される、
ことを特徴とする媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
近接装置を使用してトランザクションを実行する方法およびシステムに関する。
【背景技術】
【０００２】
優先権および関連出願
本願は、米国仮出願第６０／３６５７３７号（２００２年３月１９日出願）、名称「近接チップ決済仕様」の優先権の利益を要求し、これを参照によって本願に合体させるものとする。
発明の背景
磁気ストライプカードは、デビットやクレジットの決済などの取引即ちトランザクションを実行するために今日よく使用されている。このような決済（支払い）カードは、一般にトラック１、トラック２、トラック３と呼ばれる、磁気ストライプ上のトラックに情報を格納する。このような決済カードをカードリーダーに通すと、トラックのデータがネットワークを越えて送信され、トランザクションを遂行させる。また、このようなカードは、典型的にはカードに印刷された認証値と、磁気ストライプに格納されている認証値（通常は印刷された値とは異なる。）とを含み、双方とも不正から防御するのに役立つ。典型的なマスターカード（ＴＭ）のカードでは、磁気ストライプに格納されている認証値はＣＶＣ１と称するものであり、印刷された認証値はＣＶＣ２と称する。磁気ストライプカードをインプリンター(imprinter)に通してカードの機械的なコピーを作る場合、印刷された認証値はカーボンコピー紙には転写されない。このため、カードの複製は、売り上げ伝票（即ち、会員（口座）番号、カード所有者名、満了日）に転写された会員情報から容易に作製することはできない。購入者が商人の面前にいない場合などのような、電話、或いはインターネットの買い物の場合、印刷された値は不正から防御するのに特に有用である。その理由は、カードを所持している者だけが、商人に対して印刷された値を検証することができるからである。
【０００３】
磁気ストライプを伴うトランザクションが端末を使用して実行されるとき、端末はクレジットカードのトラックに少なくとも１つに格納されている情報を読み取る。今日では、ほとんどの端末は磁気ストライプのトラック１および／またはトラック２を読み取る。これらのトラックは、国際標準化機構（ＩＳＯ）によって公布された標準に基づきフォーマットされている。関連するＩＳＯ標準は、トラックに含まれるべき必要なデータ要素を指定しており、例えば、クレジットカード所有者の一次会員番号（primary account number）、サービスまたは国のコード、カード所有者名、水平冗長検査値である。前述したデータ要素に加えて、関連のＩＳＯ標準は、カード発行人の任意の用途のためのデータフィールドを予約している。このフィールドは「任意データフィールド」と称する。カード発行人は、典型的には認証値を任意データフィールドに格納する。マスターカードの場合には、ＣＶＣ１の値はこの任意データフィールドに格納されている。
【０００４】
あいにく、従来の認証値（磁気ストライプに印刷されているか、格納されているかにかかわらず）の静的な性質は不正のリスクを増大させるものである。その理由は、権限のないものが会員番号と印刷された認証値とを入手した場合にその者はカードの複製を作製するのに必要な全ての情報を持つからである。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
不正のリスクを減らす１つのアプローチは、スマートカード、即ち、内部演算処理機能を持つ集積回路（ＩＣ）カードを使用して動的に認証値を生成することである。しかしながら、今日まで、スマートカード技術は、公開鍵暗号技術に基づくデジタル署名スキームに使用されてきた。このようなアプローチは、暗号機能を実行しなければならない端末およびカードが必要であり、公開鍵の管理も必要であるため、コストがかかり不便である。さらに、現存の決済ネットワーク基盤は磁気ストライプカードの処理をするように設計されているため、このアプローチは、現存する決済ネットワーク基盤に修正を加えたり、或いは追加したり、さらには修正と追加の双方を必要とするコストがかかるものである。
従って、決済カードのトランザクションのための、より良い、かつより費用効果の高いセキュリティのニーズがある。
【課題を解決するための手段】
【０００６】
発明の目的および概要
本発明は動的認証値（好ましくは暗号化で生成されたもの）を使用して上述した従来技術の欠点を解決することを目的とし、この動的認証値は近接（プロキシミティ;proximity）装置或いは端末によってＩＳＯ標準トラック（好適にはトラック１および／またはトラック２）データフィールドの任意データフィールドに置かれ、この端末からカードの発行人即ちトランザクションを実行するのに使用される他の近接装置に送信される。動的認証値とともに、任意データフィールドは、トランザクションを検証すなわち承認するために発行人によって使用されるべきその他のデータも含んでいる。動的認証値は、磁気ストライプカードに印刷された静的認証値とは異なるものとし、それに加えて、この値をトランザクション毎に変化させることが好適である。その結果、許可されていない者が特定のトランザクションのために使用された認証値を入手した場合でさえ、この許可されていない人物は他のトランザクション用としてこの認証値を使用することができない。さらに、この認証データは指定された２進化１０進数（ＢＣＤ）フォーマットでトラック１および／またはトラック２の予め規定されたフィールドに格納されるものであるため、既存の決済（支払い）カードネットワーク基盤に僅かな、或いは何ら修正をせずにこの基盤を使用することができる。
【０００７】
本発明のある実施態様では、
第１の認証値を動的に生成する、
第１の認証値を近接装置から端末に送信する、
第１の認証値をメッセージデータの任意データフィールド内に含ませる（但し、このメッセージデータはＩＳＯフォーマットで構成、即ち編成されている）、
検証、即ち承認のために端末からメッセージデータを送信する、
というステップによって近接装置を使用することによってトランザクションが処理される。メッセージはＩＳＯトラック１或いはＩＳＯトラック２フォーマットで構成することが好適である。
【０００８】
本発明のさらなる実施態様では、
乱数を生成する、
この乱数を含む認証コマンドを非接触で端末から近接装置に送信する、
少なくともこの乱数を含むデータから第１の認証値を導出するための近接装置によって第１の認証鍵を使用して第１の認証値を動的に生成する、
第１の認証値を近接装置から端末に送信する、
第１の認証値をメッセージデータの任意データフィールド内に含ませる（但し、このメッセージデータはＩＳＯトラック１フォーマットおよびＩＳＯトラック２フォーマットの少なくとも１つを含むフォーマットで構成、即ち編成されている）、
検証、即ち承認のために端末から発行人にメッセージデータを送信する、
メッセージデータと第２の認証鍵とを使用して発行人によって第２の認証値を計算する、
発行人によって第２の認証値を第１の認証値と比較する、
というステップによって近接装置を使用することによってトランザクションが処理される。
【発明を実施するための最良の形態】
【０００９】
本発明のさらなる目的、特徴、利点は、本発明の説明のための実施態様を示す添付の諸図面を参照する以下の詳細な説明によって明らかになるであろう。
本発明の主題を諸図面を参照しながら説明していくが、これは例示の実施態様を参照しつつ行われる。付属の請求の範囲で規定された本発明の主題の範囲および本質から逸脱することなく説明する実施態様に修正や変更を加えることができることを意図するものである。
【００１０】
図１は、本発明によるトランザクション即ち取引を処理するための例示のシステムを示す。図示されるシステムは、近接チップ（素子）１０３と非接触通信インターフェイス回路１０５とを含む近接（プロキシミティ）装置１０２を具える。近接装置１０２はクレジットカードの形状にすることができ、磁気ストライプを含むこともできる。近接装置１０２は、キーフォブ(key fob)、即ちキーホルダーなどの他の形状を取ることもでき、及び／または、携帯電話、腕時計または懐中時計などの時計に組み込むこともできる。近接装置１０２は、動的に生成された認証値１０４を端末１０６に送信する。認証値は典型的にはＲＦ（無線周波数）信号を介して送信される。認証値は、トラック１および／またはトラック２の任意データフィールド１０８でフォーマットされ、典型的にはコンピュータネットワーク１０９を通じて発行人（issuer）１１０に送信される。このフォーマットは近接装置１０２か端末１０６かのどちらかで行うことができる。
【００１１】
ＩＳＯトラック１フォーマットで構成された例示のデータのレイアウトを図２に示す。トラック１のレイアウトは、開始監視符号(start sentinel)２０２、続いてフォーマットコード２０４、続いて一次会員番号２０６、続いてフィールドセパレイター２０８、続いてサービスコード２１０、続いて会員・所有者の名前２１２、続いてフィールドセパレイター２１４、続いて満了日２１６、続いて任意データ２１８、続いて終了監視符号２２０、最後に水平冗長検査２２２を含む。任意データ２１８は、図４に示すように乱数４０２、カウンタ値４０４、および動的認証値４０６を含むことができる。
【００１２】
ＩＳＯトラック２フォーマットで構成される例示のデータのレイアウトを図３に示す。トラック２レイアウトは、開始監視符号３０２、続いて一次会員番号３０４、続いてフィールドセパレイター３０６、続いてサービスコード３０８、続いて満了日（有効期限日）３１０、続いて任意データ３１２、続いて終了監視符号３１４、最後には水平冗長検査３１６を含む。任意データ３１２は、図５に示すように乱数５０２、カウンタ５０４、および動的認証値５０６を含むことができる。
【００１３】
図６は、図１に示したシステムを使用してトランザクションを処理する例示の手順を示す。オプション、即ち任意選択であるが、端末１０６は、ただ１つだけの近接装置１０２が操作フィールドの範囲内に存在することを検査して保証することができる（ステップ６０２）。１つを超える、即ち複数の近接装置１０２が操作フィールドのなかにある場合は、端末はユーザにどの近接装置を使用するのかを選択させることができる（ステップ６０３）。いかなる場合でも、端末１０６、発行人１１０、或いは近接装置１０２が乱数を生成する（ステップ６０４）。乱数は、例えば、従来の乱数生成アルゴリズム、或いは、ハードワイヤード、即ち配線による乱数生成器によって生成することができ、ＢＣＤ或いは１６進数（ＨＥＸ）フォーマットにすることができる。このような従来の乱数生成アルゴリズム、或いは、ハードワイヤード、即ち配線による乱数生成器は当該分野では周知のものである。端末１０６は、この乱数を含む認証コマンドを近接装置１０２に送信する（ステップ６０６）。近接装置１０２は、近接チップ１０３を収容し、このチップは２進カウンタを維持管理し、認証コマンドを受信するたびにカウンタを増加させる（ステップ６０８）。このカウンタはＢＣＤ、ＨＥＸ、或いは２進数のフォーマットにすることもできる。近接装置１０２のなかにある近接チップ１０３は、受信した乱数から第１の認証鍵を使用して第１の認証値を導出する（ステップ６１０）。ＤＥＳ（データ暗号化標準）セキュリティ基盤を使用する場合、第１の認証鍵は発行人によって共有される秘密鍵(secret key)とすることが好適である。公開鍵基盤（ＰＫＩ）を使用する場合は、第１の認証鍵は特定の近接装置に関連付けられている私用鍵（private key）とすることが好適である。いかなる場合でも、第１の認証鍵は、例えば、近接チップ１０３のメモリなどに格納することができる。非接触、即ちコンタクトレスの通信インターフェイス回路１０５は、近接チップ１０３の一部として含ませることができ、或いはチップとは別個のものとすることもできる。近接装置１０２は、メッセージデータのセット内に第１の認証値を含み、任意選択として、これはトラック１および／またはトラック２メッセージデータの任意データ内のものとし（ステップ６１４）、非接触インターフェイス１０５を介して非接触でメッセージデータを端末１０６に送信する（ステップ６１６）。また、メッセージデータは、近接チップ１０３によって維持管理されているカウンタ値および乱数、或いはこれらの表現(representation)とを含む。乱数或いはメッセージデータ内のこれの表現は、それと、装置１０２に以前に送信された乱数とを比較することによって端末１０６で検証することが好適である（ステップ６１７）。乱数の表現は、例えば、装置から以前に送信した長い数の最後の３つの数字（桁）にすることができる。第１の認証値が、トラック１および／またはトラック２のメッセージデータの任意データフィールドの一部として近接装置１０２によってフォーマット（ステップ６１４）されている場合、このフォーマットは端末１０６、或いは発行人１１０のエージェント（代理人）によって実行させることができる。このエージェントは、ユーザのコンピュータ（例えば、近接装置リーダー付きのＰＣ）上で稼動する発行人アプリケーションとすることができる。いずれの場合でも、端末１０６、或いは近接装置１０２は、１６進（ＨＥＸ）或いは２進のフォーマットの残りのデータをＢＣＤに変換する（ステップ６１７）。端末１０６は、検証即ち承認のためにトラック２フォーマット１０４で構成されているデータを送信する（ステップ６１８）。検証は典型的には発行人１１０によって実施される。第２の認証鍵を使用して（ＤＥＳセキュリティを使用する場合は、これは、近接装置１０２に格納される第１の認証鍵と恐らく同じ鍵である。）、発行人１１０は、端末を介して近接装置から受け取ったメッセージデータを使用して第２の認証値を計算する。ＰＫＩを使用する場合は、第２の認証鍵は、恐らく近接装置の私用鍵に関連付けられている公開鍵である。トランザクションを検証即ち承認するために、発行人１１０は、第１の認証値と第２の認証値とを比較し（ステップ６２４）、これらの値が合致するか否かに依存してトランザクションを受け入れる（承認する）か（ステップ６２６）、拒絶するか（ステップ６２８）を行う。
【００１４】
近接装置１２は、製造者暗号鍵(manufacturer cryptographic key)、保護されている記憶領域に書き込むためのセキュアー（安全）メッセージング鍵、認証鍵などのような様々な機能をサポートすることが好適である。製造者暗号鍵は、発行人が認証鍵、セキュアーメッセージング鍵、及び決済関連データを安全にロードすることを可能にする。単一長及び倍長の暗号鍵をサポートすべきである。近接装置１０２は、削除や修正に対処するように装置メモリに書き込まれたデータを保護し、暗号鍵を含むメモリの場所が外部から読み取られることを禁止することが好適である。また、近接装置１０２は、望ましくは少なくとも１５ビットを持つ２進カウンターを維持管理すべきであり、近接装置１０２に認証コマンドが提示される（ステップ６０６）毎に、カウンタを増分する（ステップ６０８）。近接装置１０２は、ＩＳＯ通信インターフェイスタイプＡ、タイプＢ或いはその両者を実装することができる。これらのよく知られているインターフェイスタイプは、ＩＳＯ／ＩＥＣ１４４４３パート１−４に記述されており、参照によって本明細書に合体させるものとする。
【００１５】
端末１０６は、近接装置１０２と同様に磁気ストライプカードを読み取る機能を持つように構成させることが好適である。装置が磁気ストライプカードと近接チップ１０３とを含む場合には、端末１０６は、最初に近接チップリーダーを使ってトランザクションを実施するようにすべきであり、チップとの通信に失敗した場合に磁気ストライプを使用すべきである。
【００１６】
典型的には少なくとも２つのコマンドを使用して端末１０６から近接装置１０２にデータを送信するが、これが選択コマンドと認証コマンドである。その他のコマンドを使用することもでき、例えば、ユーロペイマスターカードビザ（ＥＭＶ）「処理オプション獲得(get processing options)」コマンドである。選択コマンドは近接チップの決済アプリケーションを選択するために使用する。認証コマンドは近接装置内の動的認証コードの計算を始動させる。装置１０２からの認証コマンドへの応答は、トラック２でフォーマットされたデータ、装置シリアル番号、トランザクションフラグを含むことができる。
【００１７】
動的認証値を計算する好適な方法は、ＤＥＳ技法としてよく知られるものである。図７に示すように、近接装置１０２は、以下のステップによって動的認証を計算することが好適である。はじめに、一次会員番号の各文字（１６×４＝６４ビットまで）、満了日即ち有効期限日（４×４＝１６ビット）、サービスコード（３×４＝１２ビット）の左から右に４つの最も右側のビットを連結することによってビットストリングを構築する（ステップ７０２）。このビットストリングには装置近接チップカウンタ（１５ビット）と端末１０６で生成された５桁の乱数（５×４＝２０ビット）とを連結する（ステップ７０４）。ビットストリングは６４ビットの複数（典型的には合計１２８ビットになる）になるように２進数のゼロで埋められる（ステップ７０６）。例えば、トラック２「任意データ」フィールド３１２は、一次会員番号が１６のＢＣＤであるときには１３のＢＣＤであり、任意データフィールド３１２のＤＥＳ計算は１３のＢＣＤを全て使う。一次会員番号が１６ＢＣＤ未満である場合には、発行人は、３つのＢＣＤを超えて任意データフィールド３１２の動的認証値フィールド５０６のサイズを増加させることができる。次に、近接チップ秘密認証鍵（単一または倍長）を使用して８バイトのＭＡＣ（メッセージ認証コード）を計算する（ステップ７０８）。上述した第２のステップのＨＥＸ（１６進数）表示の結果から最初の３つの数字（０−９）を左から右に抽出する（ステップ７１０）。数字が３桁見つからなかった場合（ステップ７１２）、３桁の数字が見つかるまで、ステップ７０８の結果から文字Ａ−Ｆを左から右に抽出して１０進に補正するため１０を引く（ステップ７１６）。見つかった最初の３つの数字は動的認証値として使用する（ステップ７１４）。
【００１８】
好適には、近接チップ１０３は、以下のステップを使って近接チップカウンタ（１５ビット）をＢＣＤに変換する。はじめに、チップはカウンタの最も左のビットを３つ選択して左にゼロのビットを加え、その結果をＢＣＤに変換する。次に、チップは、カウンタの次の３ビットを選択し、ゼロのビットを左に加えて、その結果生じたものをＢＣＤに変換する。チップは第２のステップをもう３回実行して、１５ビットのカウンタを５つのＢＣＤに変換する。上述した手順を使ってカウンタの値をＢＣＤに変換した場合は、各ＢＣＤの数字は０〜７の範囲になる。この手順は、機能を減らした近接装置でＢＣＤを変換するのに必要なハードウェア、および／または、ソフトウェアの実装を簡素化するのに有益である。同じフォーマットを発行人のホストシステムで使用するこが好適である場合などには、交互に、近接チップ１０３のカウンタはそれ自体でＢＣＤフォーマットにすることができる。ＢＣＤで符号化されたカウンタは、１０進の計数（５のＢＣＤキャラクター、ＢＣＤの０−９のキャラクターのみを使用するキャラクターあたりで４ビット）を使用して、チップに９９９９９まで最大カウンタ値のサイズを増大させることが可能であるが、これは典型的にはチップ内でより多くの処理ロジックを必要とする。
【００１９】
近接チップ１０２は、トラック２の任意データフィールド３１２を、乱数（５つのＢＣＤ）フィールド５０２、近接チップカウンタ（５つのＢＣＤ）フィールド５０４、および動的認証値（３以上のＢＣＤ）フィールド５０６で置換する。近接装置１０２は、認証コマンドに応答してトラック２のデータを端末１０６に返す（ステップ６１６）。トラック２データ（最大１９（８ビット）のバイナリバイト）は、ＴＬＶ（タグ長値）符号（タグ＝５７）とすることができる。トラック２データは、４ビットのＢＣＤ値を使用して下記のように組み立てられる。開始監視符号に一次会員番号が続く（１６個のＢＣＤまで）。これにフィールドセパレイターが続き、これは１６進の「Ｄ」とすることができる。これに満了日が続き、これはＹＹＭＭのフォーマットの４つのＢＣＤにすることができる。これにはサービスコード（３つのＢＣＤ）を続けることもできる。これには動的任意データ（１３以上のＢＣＤ）を続けることもできる。この動的任意データは、乱数（５つのＢＣＤ）、それに続く近接チップカウンタ（５つのＢＣＤ）、それに続く動的認証値を含むことができる。会員番号が１６桁の場合はこの動的認証値を３つのＢＣＤにすることができ、会員番号が１６桁未満の場合はＢＣＤを３を超えるものにすることもできる。この任意データの後には、終了監視符号と水平冗長性検査を続けさせることができる。従って、従来の磁気ストライプカードで使用される任意データフィールドは、トラック２の最大記録長を埋めるのに十分な文字を単に含むが（全部で４０個の文字、即ちキャラクター）、一般にはトランザクション中にこれは検証されず、説明した例で近接装置とともに使用される任意データフィールドは、この装置の認証のために使用されるトラック２の任意データの動的認証値を含むものである。
【００２０】
一部の近接チップ製造業者は、ＤＥＳアルゴリズムをサポートする機能を減らした装置を製造することができないかもしれない。そのような場合には、独自仕様の方法を使用して装置の動的認証値を計算することもできる。好適にはこのような独自方法は、以下のような特徴を持つべきである。実績のある独自仕様の暗号化アルゴリズムを使用すべきである。近接チップカウンタは最低限でも１５ビット長を持つべきである。乱数は５桁（５つのＢＣＤ）にすべきである。一次的な口座番号、満了日、サービスコード、近接チップカウンタ、および乱数を動的認証値の計算に含めるべきである。動的認証値は最低限でも３つのＢＣＤのキャラクターを持つようにするべきである。近接装置１０２は、トラック２任意データフィールド３０６を乱数、近接チップカウンタ、および動的認証値（最低は３つのＢＣＤ）で置換することができるようにすべきである。近接装置１０２は、トラック２データの全体、近接装置シリアル番号、および近接装置トランザクションフラグ、その他の装置データを返すべきである。乱数、近接装置近接チップカウンタ、および近接装置が生成した動的認証値は、端末１０６に送信されたトラック２データの任意データフィールド３１２に適合させるべきである。
【００２１】
動的認証値を計算する好適な方法はＤＥＳ技法であり、ＰＫＩを使用することもできる。
【００２２】
各近接チップ認証鍵は固有のものとすることが好適であり、発行人によって保護されているマスター派生鍵（Master derivation key）から派生させることが好適である。近接チップ鍵の派生、即ち導出は、安全な暗号化装置内で行われるようにすることが好適である。暗号機能即ち暗号関数は、一次会員番号とマスター派生鍵とを使用して近接チップ認証鍵を派生即ち導出することが好適である。倍長近接チップ認証鍵を使用する場合は、この鍵の第２の部分は、暗号化プロセス前の一次会員番号の各ビットを補数にする（１ビットは０に変化する、０ビットは１に変わる）ことによって派生させるべきである。
【００２３】
発行人が独自仕様の認証方法を使う場合であっても、鍵の導出プロセスは、上述した穂方と同様のものとすべきである。装置認証鍵は最低でも４８ビット（ＤＥＳ用は６４）とすべきである。ビットサイズは倍長装置鍵用には倍にする。
【００２４】
認証鍵を受け取った後、発行人は、以下のステップを実施する。発行人は、特定の近接装置を処理するために、近接装置から要求が出ているかを判定する（ステップ８０２）。発行人は、端末が読み取った近接装置から出された要求を指し示すために端末が「７」をセットするようなデータ要素（６１、位置１０）をデコードすることによってこれを実施することができる。或いは、またこれに加えて発行人は、カード所有者データベースに近接装置１０２に割り振られた一次会員番号を記入することもできる。発行人ホストシステムは、各近接装置１０２のために、近接チップカウンタを追跡、即ち、監視すべきであり、受け取った近接チップカウンタの値が次の連番であるかを検証する（ステップ８０４）。近接チップカウンタの検証を使用してトランザクションの再実行を防止することができる。繰り返されたカウンタ値は、以前に使用された近接チップトラック２データは不正に入手されたものであり、権限のない者によって使用されようとしていることを示すことができる。近接チップ認証鍵を用いて、発行人は、上述したように一次会員番号、満了日、受信したトラック２からのサービスコード、トラック２任意フィールドの認証データ（近接チップカウンタ、乱数）を使用して近接装置動的認証値を計算する（ステップ８０８）。発行人は、算出された動的認証値と、近接装置トラック２任意データフィールド内にあるものとを比較し（ステップ８１０）、トランザクションを受け入れる即ち承認するか（ステップ８１２）、拒絶するか（ステップ８１４）のどちらかを行う。発行人は、動的認証値が成功裏に検証されたときは、磁気ストライプ許可として許可を処理することができる。
【００２５】
近接チップ鍵の派生即ち導出と、動的認証値の検証とは、ホストのセキュリティモジュールなどの安全な暗号化装置内で実施することが好適である。
【００２６】
当業者は、図１−８の方法は図１−８で規定される適切なソフトウェアの制御のもとで操作されている様々な標準的なコンピュータプラットフォームに実装することができることを理解するであろう。ある場合には、従来のパーソナルコンピュータの周辺カードなどの専用コンピュータハードウェアが上述した方法の効率的な操作を拡張させることができる。
【００２７】
図９と図１０は、本発明の方法を実施するのに適した典型的なコンピュータハードウェアを示す。図９を参照されたいが、コンピュータシステムは演算処理部９１０、ディスプレイ９２０、キーボード９３０、モデムなどの通信周辺装置９４０を含む。本システムは、典型的には、「マウス」などのデジタルポインター９９０を含み、会員カード９００を読み取るためのカードリーダー９５０などのその他の入力装置を具えることもできる。さらに、本システムはプリンター９６０を具えることもできる。コンピュータシステムは、典型的には、ハードディスク駆動装置９８０と、磁気媒体（フレキシブルディスク、取り外し可能なハードディスクなど）或いは光学媒体（ＣＤ−ＲＯＭやＤＶＤ）などの記憶媒体を読み書き可能な１つまたは複数の追加のディスク駆動装置９７０を具える。ディスク駆動装置９７０と９８０は、データおよびアプリケーションソフトウェアを格納するために使用する。
【００２８】
図１０は、処理部９１０をさらに説明する機能ブロック図である。処理部９１０は、演算処理ユニット(processing unit)１０１０、制御ロジック１０２０およびメモリユニット１０５０を一般に含む。好適には、処理部９１０は、タイマー１０３０と入出力ポート１０４０とを含む。また、処理部９１０は、処理ユニットで使用されるマイクロプロセッサに依存してコプロセッサ１０６０を具えることもできる。制御ロジック１０２０は、処理ユニット１０２０と協働して、メモリユニット１０５０と入出力ポート１０４０との間の通信を操作するために必要な制御を与える。タイマー１０３０は、処理ユニット１０１０と制御ロジック１０２０とのためのタイミング基準信号を提供する。コプロセッサ１０６０は、暗号化アルゴリズムで必要とされる計算などのような複雑な計算をリアルタイムで実施する能力を拡張、即ち機能を向上させる。
【００２９】
メモリユニット１０５０は、揮発性、および不揮発性メモリ、読み取り専用、プログラマブルメモリなどの種々のタイプのメモリを具えることができる。例えば、図１０に示すように、メモリユニット１０５０は、読み取り専用メモリ（ＲＯＭ）１０５２と電気的消去可能プログラム可能読み取り専用メモリ（ＥＥＰＲＯＭ）１０５４と、ランダムアクセスメモリ（ＲＡＭ）１０５６とを具えることができる。様々なコンピュータプロセッサ、メモリ構成、データ構造およびこれに類するものを使用して本発明を実現することができるが、本発明は特定のプラットフォームに限定されるものではない。処理装置で実施されるステップは、請求の範囲で規定されない限り特定のハードウェアに限定されるものではない。
【００３０】
図１−８で規定されるソフトウェアは、様々なプログラミング言語で記述することができ、このようなソフトウェアは当業者によって理解されるであろう。
【００３１】
処理部９１０の構成要素を近接装置１０３に搭載させることもできる。コプロセッサ１０６０を使用してＤＥＳおよびＰＫＩ暗号化で必要とされるような複雑な計算をリアルタイムで実施するための機能を改善即ち強化することができる。ＲＯＭ１０５２は、第１の認証鍵を格納する安全、即ちセキュアーなＲＯＭを含むことが好適である。
【００３２】
本発明の好適な実施態様と考えるべきもの説明してきたが、当業者は、本発明の本質から逸脱することなくその他のおよびさらなる変更や修正を加えることができ、本発明の真の範囲内に入るような全てのこのような修正や変更が請求の範囲に入ることを意図するものである。例えば、動的認証値の特定の計算はトラック２レイアウトの態様で説明したが、本発明はトラック１レイアウトに適用可能である。
【図面の簡単な説明】
【００３３】
【図１】本発明の例示の実施態様による、任意データフィールドの動的認証値を使用してトランザクションを処理するシステムの相互作用を及ぼすコンポーネントの図である。
【図２】トラック１フォーマットで構成されたデータの例示のレイアウトを示す図である。
【図３】トラック２フォーマットで構成されたデータの例示のレイアウトを示す図である。
【図４】本発明の例示の実施態様を図２の任意データフィールドのレイアウトで示す図である。
【図５】本発明の例示の実施態様を図３の任意データフィールドのレイアウトで示す図である。
【図６】トランザクションが近接装置と発行人との間で処理されることによる例示のプロセスを説明するフローチャートである。
【図７】認証値が近接チップ（素子）によって計算されることによる例示のプロセスを説明するフローチャートである。
【図８】近接装置が発行人によって承認されることによる例示のプロセスを説明するフローチャートである。
【図９】図１−８に示した手順を実施するための例示のコンピュータシステムを示す図である。
【図１０】図９に示したコンピュータシステムでの使用のための例示の処理部を示すロック図である。
【図１】
2005521332.tif 000003
【図２】
2005521332.tif 000004
【図３】
2005521332.tif 000005
【図４】
2005521332.tif 000006
【図５】
2005521332.tif 000007
【図６】
2005521332.tif 000008
【図７】
2005521332.tif 000009
【図８】
2005521332.tif 000010
【図９】
2005521332.tif 000011
【図１０】
2005521332.tif 000012
【国際調査報告】
2005521332.tif 000013
2005521332.tif 000014