(57)【要約】金融トランザクションカードデータに関する一方向性の転置は、商人からの品物を購入するために顧客によって使用される各金融トランザクションカード用に固有なカード識別子を商人に提供する。その後、カード識別子（実際の金融トランザクションカードデータでない）は、商人によって許容範囲内で格納され、顧客の金融トランザクションカードを一意的に識別するために使用することができ、顧客がそのカードを使用して購入をする頻度を決定するために使用することもできる。
2007520015.tif 000002
【特許請求の範囲】
【請求項１】
顧客の購入行動を追跡する方法であって、
前記顧客の金融トランザクションカードに格納された金融トランザクションカードデータを受信するステップと、
一方向性の転置関数を使用して、金融トランザクションカードデータを暗号化して、固有なカード識別子を導出するステップと、
前記固有なカード識別子を格納するステップと、
前記顧客の金融トランザクションカードを使用して行われた各購入を、前記固有なカード識別子に関連付けるステップと、
を含む方法。
【請求項２】
請求項１に記載の方法において、
前記金融トランザクションカードデータが、前記金融トランザクションカードの一次的な口座番号を含む、
ことを特徴とする方法。
【請求項３】
請求項２に記載の方法において、
前記金融トランザクションカードデータが、
さらに、クレジットカード所有者氏名および前記金融トランザクションカードの満了日を含む、
ことを特徴とする方法。
【請求項４】
請求項１に記載の方法において、
前記一方向性転置関数が、大きい整数の因数分解に基づくものである、
ことを特徴とする方法。
【請求項５】
請求項１に記載の方法において、
前記一方向性の転置関数が、整数群の離散対数に基づくものである、
ことを特徴とする方法。
【請求項６】
請求項１に記載の方法において、
前記一方向性の転置関数が、楕円曲線の群上の離散対数に基づくものである、
ことを特徴とする方法。
【請求項７】
請求項１に記載の方法において、
前記金融トランザクションカードが、前記顧客のために最初に個別化されるとき、前記固有なカード識別子が、前記金融トランザクションカードに格納される、
ことを特徴とする方法。
【請求項８】
請求項１に記載の方法において、
前記固有なカード識別子が、前記金融トランザクションカードリーダによって生成される、
ことを特徴とする方法。
【請求項９】
請求項８に記載の方法において、
前記金融トランザクションカードリーダが、スマートカードリーダである、
ことを特徴とする方法。
【請求項１０】
請求項１に記載の方法において、
前記固有なカード識別子が、商人バックオフィスシステムによって生成される、
ことを特徴とする方法。
【請求項１１】
請求項１に記載の方法において、
前記カード識別子に前記顧客の名前を関連付けるステップをさらに含む、
ことを特徴とする方法。
【請求項１２】
顧客の購入行動を追跡するシステムであって、
前記顧客の金融トランザクションカードに格納された金融トランザクションカードデータを受信する金融トランザクションカードリーダと、
一方向性の転置関数を使用して前記金融トランザクションカードデータを暗号化して、固有なカード識別子を導出するため暗号化モジュールと、
前記固有なカード識別子を格納し、前記顧客の金融トランザクションカードを使用して行われた各購入に、前記固有なカード識別子を関連付けたデータをさらに格納するデータ記憶装置モジュールと、
を具えるシステム。
【請求項１３】
請求項１２に記載のシステムにおいて、
前記金融トランザクションカードデータが、金融トランザクションカードの一次的な口座番号を含む、
ことを特徴とするシステム。
【請求項１４】
請求項１３に記載のシステムにおいて、
前記金融トランザクションカードデータが、前記金融トランザクションカードの満了日および前記カード所有者氏名を含む、
ことを特徴とするシステム。
【請求項１５】
請求項１２に記載のシステムにおいて、
前記一方向性の転置関数が、大きい整数の因数分解に基づくものである、
ことを特徴とするシステム。
【請求項１６】
請求項１２に記載のシステムにおいて、
前記一方向性の転置関数が、整数の群の離散対数に基づくものである、
ことを特徴とするシステム。
【請求項１７】
請求項１２に記載のシステムにおいて、
前記一方向性の転置関数が、楕円曲線の群上の離散対数に基づくものである、
ことを特徴とするシステム。
【請求項１８】
請求項１２に記載のシステムにおいて、
前記金融トランザクションカードが顧客のために最初に個別化されるとき、前記固有なカード識別子が金融トランザクションカードに格納される、
ことを特徴とするシステム。
【請求項１９】
請求項１２に記載のシステムにおいて、
前記固有なカード識別子が、前記金融トランザクションカードリーダによって生成される、
ことを特徴とするシステム。
【請求項２０】
請求項１２に記載のシステムにおいて、
前記金融トランザクションカードリーダが、スマートカードリーダである、
ことを特徴とするシステム。
【請求項２１】
請求項１２に記載のシステムにおいて、
前記固有なカード識別子が、商人バックオフィスシステムによって生成される、
ことを特徴とするシステム。
【請求項２２】
請求項１２に記載のシステムにおいて、
前記データ記憶装置モジュールが、前記カード識別子に前記顧客の名前を、さらに関連付ける、
ことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、商人が顧客の購入行動（振る舞い）を追跡することを可能にする方法およびシステムに関するものである。特に、本発明は、商人が金融トランザクションカードデータによって顧客を識別することを可能にするが、実際の金融トランザクションカードデータを格納することは商人に要求しないような、新規な方法およびシステムに関するものである。
【０００２】
＜優先権出願＞
本出願は、米国仮特許出願（「決済カードのため無衝突識別子生成するシステムおよび方法」、出願番号60/538769、2004年1月23日出願）の優先権の利益を要求し、参照によって本明細書に合体させるものとする。
【背景技術】
【０００３】
商人（小売店）は、顧客が誰であるのか、また、顧客がどれくらいの頻度で購入するかを追跡することが有用であることが分っている。商人は、この情報を、例えば、マーケティングの目的、かつ、顧客誘因プログラムを処理するため、また、広告戦略を構成することなどに定常的に使用する。
【０００４】
金融トランザクション（取引）カード（例えば、クレジットカード、デビットカード、スマートカードなど）を使用して、購入する顧客に対して、商人（マーチャント）は、識別すること、および、購入頻度情報を得る容易な方法を潜在的に持っている。すべての金融トランザクションカードは、そこに顧客の個人的な口座番号(PAN)、即ち、特定の顧客に固有（一意的なもの）となるデータを格納している。そのような金融トランザクションカードデータは、カードから抽出され、例示のカードベースのトランザクション（取引）をしている間に商人へ送信される。商人は、その固有な金融トランザクションカードデータを格納することができ、毎回、特定の金融トランザクションカードを使用して、購入が顧客によって行われたことを判定するためにそれを使用することができていた。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、商人は、顧客および購入頻度を追跡し続ける（経過を監視する）ために金融トランザクションカードデータを現在は利用することができない。セキュリティの理由で、金融トランザクションカードの通貨決済スキームは、顧客の口座に関する情報を含んでいる金融トランザクションカードデータを格納することを商人に禁止する規則を決定した。商人は、金融トランザクションカードデータを使用して、顧客を一意的に識別することを可能にするが、商人が、そのデータを格納することを必要としないような簡便な方法やシステムのための技術が必要とされている。
【課題を解決するための手段】
【０００６】
本発明の例示の実施態様によれば、金融トランザクションカードデータ上の一方向性の転置（置換:permutation）は、品物を商人から購入するために顧客によって使用される各金融トランザクションカード用に固有なカード識別子を商人に提供する。その後、このカード識別子(これは実際の金融トランザクションカードデータでない)は、商人によって、許容範囲内において格納され、顧客の金融トランザクションカードを一意的に識別するために使用することができ、その顧客がそのカードを使用して、購入をする頻度を決定するために使用することもできる。
【０００７】
本発明のさらなる目的、特徴および利点は、発明の例示の実施態様を示す諸図面を伴う詳細な説明から明白になるであろう。
【０００８】
全ての図を通じて、実施例における、同じ参照数字および参照文字は、特に断らない限り、同様の特徴、要素、構成、あるいは部分を意味する。さらに、例示の実施態様について諸図面を参照して詳細に本発明を説明する。付属の請求項で規定される本発明の主題の本質および範囲から逸脱することなく、記載した実施態様には変更や修正を施すことができることを意図するものである。
【発明を実施するための最良の形態】
【０００９】
＜発明の詳細な説明＞
本発明は、一方向性の転置を使用して、顧客の金融トランザクションカードに格納されたデータを暗号化し、従って、使用される各金融トランザクションに対して固有なカード識別子として機能し得る値を生成（導出）することを目的とする。
【００１０】
顧客の金融トランザクションカードデータに関する一方向性の転置の使用によって、本発明は、安全なだけでなく、商人が格納するのに許容可能なものであるカード識別子を提供するが、それは、固有のものであり、これは１つ、即ち、ただ１つの顧客金融トランザクションカードだけに関連付け／対応付けることができるものである。対照的に、一方向性のハッシュ関数は、カード識別子の独自性を保証するものではない。これは衝突（コリジョン）の発生によるものであり、それが発生する可能性は、代わりに使用される一方向性関数よりも、受け入れ難いほど高くなりえる。
【００１１】
一方向性関数の衝突の問題は、暗号の分野においてよく知られた問題である。一方向性関数は、xの各々がfの領域（領域：domain）にある関数fであり、f(x)を計算するのは簡単であるが、しかし、本質的に全てのyがfの範囲内にある場合は、このようなy=f(x)においてはいかなるxを探し出すことも計算上は実行不可能である。一方向性関数では、
(i)入力の領域は典型的には大きく、そして入力それ自体は、任意の有限の長さである。
(ii) 出力の範囲は典型的には小さく、出力それ自体は固定長である。
(iii)すべての出力は等しくなることがあり得るものであり、同じ出力値を生ずるであろう、2つの区別できる別個の入力値xとx'とが存在することが有り得る。
一方向性関数への同じ出力を生ずる、2つの別個、即ち区別できる入力値の発生は、衝突として知られている。
【００１２】
衝突に関する問題は、衝突が発生する可能性が高くなればなるほど、一方向性関数は、カード識別子がそれぞれ一意的になるであろうこと、および、暗号化された金融トランザクションカードデータが、セキュア、即ち、安全であることを保証することに効果的でなくなる。衝突の可能性を回避するために、本発明は、転置、即ち、一方向性転置である一方向性の関数を利用する。
【００１３】
一方向性の転置(one-way permutation)は、既知の解明困難な問題に基づき構築することができる。本発明の例示の実施態様によれば、適切な一方向性の転値は、既知の困難な問題（例えば、大きい整数の因数分解、整数の群における離散対数など）に基づき構築される何らかの転置とすることができ、その入力は、実際の入力データよりサイズが大きい。さらに、適切な一方向性の転置は、
(i)例えば、使用される解明困難な問題の状況において適切なセキュリティレベルを持ったものとすることができる。
(ii)容易に格納し得るような出力を生成する。
(iv)インプリメント、即ち、実装するのが簡単なものとすることができる。
【００１４】
一方向性の転置のセキュリティレベルは、使用されるモジュラス・レベル(modulus level)と、使用される既知の解明困難な問題との比較により決定することができる。例えば、一方向性の転置が、整数の因数分解の困難な問題に基づくものである場合、1024ビットのモジュラス（法）は適切なセキュリティレベルを提供するはずである。
【００１５】
別の要因は関数の出力サイズである。例えば、整数の因数分解関数で1024ビットのモジュラスを使用することは、1024ビットの出力サイズ、即ち、128バイトを生成するであろう。これは比較的大きなデータであり、従って、例えば、同様のセキュリティレベルを持っている楕円曲線暗号関数によって生成された20バイトの出力より格納したり、送信したりするのがより難しい。
【００１６】
しかしながら、インプリメンテーション、即ち、実装のし易さはさらなる要因となる。前述の例では、楕円曲線関数はより小さいものを生成し、したがって、より扱いやすい出力となるが、整数の因数分解関数より実装することが困難である。この理由は、ユーロペイ−マスターカード・ビザ(EMV)ターミナルのようなあるスマートカード端末によって整数の法指数( modular exponentiation)のような整数の因数分解関数(function)が既にサポートされているからである。
【００１７】
本発明の例示の実施態様によれば、一方向性の転置は、固有かつ安全なカード識別子を生成するのに適しており、大きい整数の因数分解および有限体の離散対数に基づくものを含んでいる。
【００１８】
図1は、本発明の例示の実施態様による、大きい整数の因数分解（factorization）に基づいた適切な一方向性の転置アルゴリズムを示すフローチャートである。最初にステップ110において、2つの大きいランダム（無作為）な別個の、即ち、異なる素数pとqが生成される。次に、ステップ120で、pとqの積nが計算される。次に、ステップ130では、eでp-lでもq-1のどちらを割っても、割り切ることができない（即ち余りが出る）ようなeが選ばれる。次に、ステップ135では、金融トランザクションカードデータxは、自明なルート抽出攻撃（trivial root extraction attacks）に耐性を持たせるために、適正にパッディングされて適切な長さにされる。最後に、ステップ140では、
2007520015.tif 000003
に対してf(x)=xe mod nを計算する。ここで、f(x)は、当該金融トランザクションカードデータの一方向性の転置（置換; permutation）である。
【００１９】
図2は、本発明の例示の実施態様による有限体の離散対数に基づいた適切な一方向性の転置アルゴリズムを描くフローチャートである。最初に、ステップ210で、大きい素数pは適切に選ばれる。次に、ステップ220で、法(modulo) pの下での整数の乗法群(multiplicative group)からaを選ぶ、即ち、
2007520015.tif 000004
であり、これが、
2007520015.tif 000005
の生成元(generator)となる。最後に、ステップ230で、
2007520015.tif 000006
に対してf(x)=ax mod pを計算する。ここで、xは、関数に対する入力となる金融トランザクションカードデータであり、f(x)は、当該金融トランザクションカードデータの一方向性の転置（置換; permutation）である。あるいは、
2007520015.tif 000007
の離散対数を使う代わりに、問題を解決するのが難しい他の群を使用してもよい。離散対数問題が、
2007520015.tif 000008
のときよりも困難であると分っている場合、これは有限体上の楕円曲線に、より明確に当てはまる。
【００２０】
上述した一方向性の転置アルゴリズムに入力される金融トランザクションカードデータは、金融トランザクションカード上の磁気ストライプ、あるいはスマートカード内のチップから生成することもできる。金融トランザクションカードデータは、PAN、有効期限、サービスコード、カード所有者名（名義人）、および、発行人任意データ(DD)を含んでいるようなフォーマットにすることができる。カード識別子が与えられたカードのためのトランザクション全てにわたって一定のままとするためには、一方向性関数への入力データを慎重に選ばなければならない。例えば、ペイパスM/ストライプカードに格納された金融トランザクションカードデータには、次の考慮事項が、当てはまるかもしれない。
(i) ペイパスM/ストライプカードは各トランザクションで発行人DDが変わる。したがって、発行人DDは一方向性の転置への入力から除外されるべきである。
(ii)サービスコードは、同じカードの磁気ストライプの変形版とペイパスM/ストライプとの間で異なる。
【００２１】
さらに、一方向性の転置への金融トランザクションカードデータ入力のエントロピーが、できるだけ大きいことは重要である。入力データのエントロピーを減少させることによって、効果的に一方向性の転置を逆にして、攻撃者があらゆる入力のための関数値を計算することをより簡単にするので、これは徹底的な攻撃を回避することになる。したがって、次の金融トランザクションカードデータが、一方向性の転置への入力データとして使用することができる。
カード所有者名  ||  PAN  || 満了日（有効期限）
（ここで”||”は連結を意味する。）
【００２２】
一方向性の転置への金融トランザクションカードデータ入力に対するこの例示の選択は、その金融トランザクションカード番号がISO番号割り振り規則によって番号が振られたあらゆる金融トランザクションカードで本発明を効果的に使用できるという長所を持つ。それらの規則は、金融トランザクションカードがそれぞれ固有（一意的）なカード番号によって識別されることを保証する。したがって、金融トランザクションカード番号の入力に衝突はないはずであり、かつ、一方向性転置の出力にも衝突はないはずであり、このことによって、本発明は、カード識別子が全てのトランザクションカード空間(space)にわたって固有、即ち、一意的なものとなることを保証する。
【００２３】
図3は、カード識別子を生成し格納するための例示のシステムを示すブロック図である。また、図4は、カード識別子を生成するおよび格納する例示の方法のステップを示すフローチャートである。ステップ410では、カード所有者は金融トランザクションカード310を使用して、商人から品物を購入する。金融トランザクションカード310は、デビットカード、クレジットカードあるいは他の金融トランザクションカード310とすることができ、或いは、従来の磁気ストライプカードとすることもでき、さらには、M/チップのようなスマートカード、あるいはペイパス(PayPass) M/チップか、M/ストライプカードとしてもよい。ステップ415で、金融トランザクションカードリーダ320（磁気ストライプリーダまたはスマートカードリーダとすることができる）は、金融トランザクションカード310に格納された金融トランザクションカードデータを読み取る。
【００２４】
ステップ420で、カードを個別化したときに（即ち、パーソナライズして個人用になるように情報を書き込んだとき）、カード識別子が、一方向性の転置アルゴリズムを使用して生成され、金融トランザクションカード310に格納されていたか否かが判定される。ステップ435で、それがそうだった場合（生成され格納された場合）、金融トランザクションカードリーダ320は、商人バックオフィスシステム330にカード識別子を送信する。カードを個別化したときに、カード識別子を生成することの利点は、それが一方向性の転置アルゴリズムを使用して生成されたという事実によってカード識別子の独自性が強化されるということである。したがって、従来のPAN割り振りの場合ば、管理やコントロールが必要でないように、カード識別子割り振りの管理やコントロールは、決済スキームレベルには必要ではないだろう。このシナリオでは、カード識別子を適正に生成する責任、即ち、カード識別子が決済スキーム仕様に準拠することを保証することは、発行人が持つことになるであろう。
【００２５】
カード識別子が個別化のときに生成されなかった場合、ステップ430で、カード識別子が金融トランザクションカードリーダ320によって生成されることになっているか否かが判定される。ステップ440において、そうならば（条件を満たす場合）、その後、金融トランザクションカードリーダ320は、一方向性の転置アルゴリズムを使用して、金融トランザクションカードデータに基づいたカード識別子を生成する。このシナリオでは、決済スキーム仕様に準拠して、カード識別子の適切な生成を保証することは、端末製造業者あるいはアクワイアラー（加盟店獲得業者）のいずれかの責任となり得る。金融トランザクションカード310が、例えば、EMVスマートカードのようなスマートカードであり、金融トランザクションカードリーダ（読み取り装置）320が、EMVスマートカードリーダである場合、金融トランザクションカードリーダ320を使用してカード識別子を生成することが有利となる。EMVスマートカードリーダは、オンボード（即ち、内蔵）のRSA暗号化機能を装備している。一方向性の転置アルゴリズムが、大きい整数（図１およびそれに関する説明を参照されたい。）の因数分解に基づく場合、EMVスマートカードリーダは、公開された指数および公開された法（モジュラス）としてそれぞれ使用される、パラメーターeおよびnと共にRSA暗号化金融トランザクションカードデータによって適切な識別子を容易に生成することができる。更に、EMVスマートカードリーダは、決済システムの公開鍵の法であるような、ｎへの適切な値を既に格納している。一方向性の転置のために、これら「複数の法」のうちの1つを「法」に選ぶことは、配備をさらに簡単にするかもしれない。
【００２６】
ステップ425において、カード識別子が、金融トランザクションカードリーダ320によって生成されないであろうと判定された場合には、ステップ430では、金融トランザクションカードリーダ320が、金融トランザクションカード310を臨時に機器に通すことによって金融トランザクションカードデータを送信するか、或いは、決済（支払い）トランザクションデータに埋め込まれていた金融トランザクションカードデータを、商人バックオフィスシステム330に送信する。その後、商人バックオフィスシステム330は、ステップ445で金融トランザクションカードデータに基づきカード識別子を生成する。このシナリオでは、決済スキーム仕様に準拠して、カード識別子の適切な生成を保証することは、商人の責任あるいは商人のバックオフィスシステム330を供給した者の責任となるであろう。
【００２７】
ステップ450で、商人バックオフィスシステム330は、カード識別子のためのレコード（記録）が既に存在するか否か判定するために商人データベース340を検索する。ステップ455で、そのようなレコードが既に存在するものと判定された場合、商人バックオフィスシステム330は、金融トランザクションカード310を使用した顧客による追加購入を反映するために商人データベース340内のカード識別子レコードを更新する。ステップ455で、カード識別子のためのレコードが商人データベース340に、まだ、或いは、もはや存在しないと判定された場合、商人バックオフィスシステム330は商人データベース340に新しいカード識別子レコードを作成し、購入が金融トランザクションカード310を使用して行われたことを反映するために商人データベース340を更新する。
【００２８】
本発明の代替の実施例では、カード所有者名も商人データベース340に記録される。このように、顧客がいくつかの異なる金融トランザクションカード310を所有し使用する場合には、商人は、どれだけの購入が特定の金融トランザクションカード310を使用して行われたかのみならず、どれだけの購入が1または複数の金融トランザクションカード310を使用して、ある特定の名前を持つ個人によって行われたのかを追跡することがきるようになる。
【００２９】
図5は、本発明の例示の実体態様による、顧客名に基づいたカード識別子を格納する方法のステップを示すフローチャートである。ステップ510〜545は、前述したステップ410〜445と同一である。
【００３０】
ステップ547で、商人バックオフィスシステム330は、金融トランザクションカード310を所有する顧客の名前を受信する。ステップ550で、商人バックオフィスシステム330は顧客の名前のレコードを探して商人データベース340を検索する。ステップ555において、顧客の名前のレコードが、商人データベース340に存在するものと判定された場合、ステップ557で、商人バックオフィスシステム330は、名前のレコードが、商人データベース340内でカード識別子とリンク（関連付け）されているか否かを判定する。そうである場合（リンクされている場合）は、ステップ560で、商人バックオフィスシステム330は、金融トランザクションカード310を使用して、顧客による追加購入を反映するために商人データベース340内のリンクされているレコードを更新する。
【００３１】
ステップ557において、クレジットカード所有者（名義人）氏名のレコードが、商人データベース340に存在するが、以前にカード識別子（それはステップ510〜545で商人バックオフィスシステム330によって受信され、および／または、生成されたもの）とリンク（関連付け）されていないものと判定された場合、ステップ559で、商人データベース340のクレジットカード名義人氏名の既存のインスタンスが、カード識別子を使用して、一意的（固有なものとして）に識別された金融トランザクションカード310の所有者に実際に対応するか否かを、商人バックオフィスシステム330は判定する。そうである（実際に対応する）場合は、カード識別子は、商人データベース340内の既存の顧客名レコードにリンク（関連付けられ）され、ステップ560で、商人バックオフィスシステム330は、金融トランザクションカード310を使用して、顧客による追加購入を反映するために商人データベース340内のリンクされたレコードを更新する。そうでない場合（実際に対応しない場合）、ステップ565（これについては下記に述べる）が行なわれる。
【００３２】
ステップ555において、顧客の名前のレコード、商人データベース340に既に存在しないものと判定された場合は、ステップ565では、商人バックオフィスシステム330は、商人データベース340内の顧客の名前のための新たなレコード（記録）を作成し、この新たなレコードを、ステップ510〜545の商人バックオフィスシステム330によって以前に生成された、或いは受信した、カード識別子にリンク（関連付け）する。その後、ステップ560で、商人バックオフィスシステム330は、金融トランザクションカード310を使用して購入が行われたことを反映するために商人データベース340を更新する。
【００３３】
本発明は、具体的な例示の実施態様に関して説明してきたが、付属の請求の範囲で記載する発明の本質および範囲から逸脱せずに、開示した実施態様に様々な修正、置換および変更を行なうことができるものと理解すべきである。
【図面の簡単な説明】
【００３４】
【図１】大きい整数の因数分解に基づいた適切な一方向性の転置アルゴリズムを示すフローチャートである。
【図２】有限体の離散対数に基づいた適切な一方向性の転置アルゴリズムを示すフローチャートである。
【図３】カード識別子を生成し格納するための例示のシステムを示すブロック図である。
【図４】カード識別子を生成し格納する例示の方法のステップを示すフローチャートである。
【図５】顧客名に基づいたカード識別子を格納する方法のステップを示すフローチャートである。
【図１】
2007520015.tif 000009
【図２】
2007520015.tif 000010
【図３】
2007520015.tif 000011
【図４】
2007520015.tif 000012
【図５】
2007520015.tif 000013
【国際調査報告】
2007520015.tif 000014