カード情報非保持化のための「PCI DSS Tokenization Guidelines」
カード情報の非保持化
2018年6月の「割賦販売法の一部を改正する法律」の施行期日に向け、「クレジット取引セキュリティ対策協議会」が取りまとめた実行計画のもと、多くの企業がクレジットカード情報の非保持化やPCI DSS準拠に取り組んでいることと推察されます。
実行計画では、加盟店におけるクレジットカード情報保護のため、次のように、カード情報の非保持化によって情報漏えいを防ぐことが推奨されています。(以下の通り、実行計画で「非保持化」の措置が認められる対象は加盟店のみとなります。カード会社やPSPの場合は、SAQやQSAの訪問審査によってPCI DSSに準拠することが求められているのでご注意ください。)
“実行計画で示す加盟店における「非保持化」とは、カード情報を保存する場合、それらの情報は紙レポートやクレジット取引にかかる紙伝票のみであり、電磁的に送受信しないこと”
「クレジットカード取引におけるセキュリティ対策の強化に向けた実行計画-2017-【公表版】」より抜粋
この非保持化を実現するために、自社システムの更改、新規のシステムやサービスの導入、既存システムベンダーへの要望・調整などを行うケースも多いのではないでしょうか。そこで本稿では、この「非保持化」を実現するための方法の一つとして、「トークナイゼーション」と、さらにトークナイゼーションを有効に活用するためのガイドライン「PCI DSS Information Supplement: PCI DSS Tokenization Guidelines」(以下、PCI DSS Tokenization Guidelines)(※1)をご紹介します。
また、実行計画に「非保持化」と同等/相当のセキュリティ措置の一例として挙げられている「PCI P2PE(PCI Point-to-Point Encryption)」については、過去のPCI DSS徹底解説(※2,※3)で取り上げていますので、そちらをご参照ください。クレジットカード取引全体の「非保持化」を実現するためには、P2PE、トークナイゼーションなどの技術を適切に組み合わせることが重要になります。
※1 PCI DSS Tokenization Guidelines
※2 対面/POS加盟店が考慮すべき5つのポイント(前編)
※3 対面/POS加盟店が考慮すべき5つのポイント(後編)
「トークナイゼーション」とは
トークナイゼーション(Tokenization)とはカード情報を無価値化するための技術のうちの一つで、プライマリアカウント番号(PAN)を「トークン(Token)」と呼ばれる値に置き換えて、トークンをPANの代用として使うデータ保護の方法です。
なお、狭義のトークナイゼーションはこれらのプロセスの内、PANをトークンに置き換えるプロセスを指します。逆にトークンからPANを呼び戻すプロセスをデトークナイゼーション(De-tokenization)といいます。本解説では、狭義のトークナイゼーションを"トークン化"、デトークナイゼーションを"デトークン"と呼び、トークン化とデトークンを含む広義のトークナイゼーションを、そのまま"トークナイゼーション"と呼んで区別することにします。
トークンの種類
トークンはその利用者や用途に応じてアクワイアリングトークン(Acquiring tokens)、イシュアトークン(Issuer tokens)、ペイメントトークン(Payment Tokens)の3つの種類に分類されます。
- アクワイアリングトークン(Acquiring tokens)
-
アクワイアラ、加盟店、または加盟店のサービスプロバイダーによって作成されるトークンを指します。トークナイゼーションのためのソリューションやプロセス、トークンのフォーマットなどはアクワイアラや加盟店の用途に応じて、独自に構成されます。(ただし、作成したトークンから元のPANを計算したり、予測したりできないこと)
アクワイアリングトークンを利用して決済を行うためには加盟店やサービスプロバイダーは事前にトークンに紐づくPANを取得しておき、トークンから元のPANに還元する必要があります。そのためアクワイアリングトークンを初回のオーソリゼーションに使用することはできません。
アクワイアリングトークンの使用例として、あらかじめ登録済みのカード情報をユーザー認証して使用するカード・オン・ファイル(Card on File、CoF)や定期支払などが挙げられます。 - イシュアトークン(Issuer tokens)
-
バーチャルカード番号(Virtual Card Numbers、VCN)とも呼ばれる、イシュアによって作成されるトークンを指します。PANと同じように数字の16桁以上(American Expressは15桁以上)で構成され、有効期限や限度額、利用回数など細かく指定して特定のユースケースでのリスクを軽減する手段を提供します。
イシュアトークンはPANと同じようにオーソリゼーションに使用することができ、加盟店や加盟店のサービスプロバイダーにおける決済処理ではPANと同様に取り扱われます。このため、カードブランド(American Express, Discover, JCB, MasterCard, Visa)のロゴとともに提供されるイシュアトークンは、バーチャルなPANとして、PCI DSSによる保護の対象となります。
イシュアトークンの例としては、Web上でPAN、カード会員名、有効期限、セキュリティコードだけが発行される(クレジットカードの実物は発行されない)EC用のバーチャルカードなどが挙げられます。 - ペイメントトークン(Payment Tokens)
-
EMVCoに登録されたトークン・サービス・プロバイダー(Token Service Providers、TSP)が作成するEMV規格のトークンを指します。ペイメントトークンは、「EMV Payment Tokenisation Specification - Technical Framework」(※4)によって仕様が定義されており、見た目はPANと同じように連続した数字で構成されています。ペイメントトークンを利用する消費者は、PANを加盟店やアクワイアラに提示することなく、決済を行うことができます。
ペイメントトークンは、それを取り扱う環境によって保護基準が異なります。TSPのトークンデータ環境は、PCI DSSと「PCI TSP Security Requirements」(※5)両方による保護の対象となります。(トークンデータ環境がPCI DSS の関連要件に適合しているかは、「PCI TSP Security Requirements」のTSP Requirement 1によって評価されます)
「PCI TSP Security Requirements」ではトークンデータ環境を次のように定義しています:トークンデータ環境は、トークン化サービスを実行するTSP内の安全な領域です。ペイメントトークンの例としてはApple Pay、Android Pay (Google Pay)、Samsung Pay などが挙げられます。また、EMVCo に登録されたTSPは、EMVCoのWebサイトに掲載されている"EMVCo Registered IDs"から確認することができます。
トークンデータ環境では以下のサービスの1つまたは複数が実行されます。- トークンの生成、発行、およびマッピング(PANとの紐付け)の処理
- トークンのライフサイクル管理
- トークンのマップおよび再マップ処理、デトークンの実行
- トークンナイゼーション機能をサポートするための暗号化処理
- トークンのセキュリティと関連プロセスの制御の維持
※4 EMV Payment Tokenisation(EMVCo)
※5 PCI TSP Security Requirements(PCI SSC)
アクワイアリングトークン | イシュアトークン | ペイメントトークン | |
---|---|---|---|
トークンの形式 | 独自の形式 | PANと同じ形式(イシュアのBINが付与される) | PANと同じ形式(Token BINが付与されたEMV仕様に基づく形式) |
トークンの提供者 | 加盟店、アクワイアラ(または加盟店、アクワイアラに代わってサービス提供するトークン・サービス・プロバイダー) | イシュア(またはイシュアに代わってサービス提供するトークン・サービス・プロバイダー) | EMVCoに登録されたトークン・サービス・プロバイダー |
トークンが PCI DSS 要件による保護対象となるか? | 対象外 | 対象 | トークン・サービス・プロバイダー: ・トークンデータ環境内の場合は対象(PCI TSP Security RequirementsにPCI DSS要件が含まれる) ・トークンデータ環境の外の場合は対象外 その他の事業体:対象外 |
PCI SSCの発行する基準/ガイドライン(PCI DSS 以外) | ・PCI DSS Tokenization Guidelines ・Tokenization Product Security Guidelines | イシュア向け: ・PCI Card Production and Provisioning Logical/Physical Security Requirements | トークン・サービス・プロバイダー(またはトークンデータ環境に含まれる事業体)向け: ・PCI TSP Security Requirements その他の事業体向け: ・PCI DSS Tokenization Guidelines |
代表例 | EC加盟店のカード情報の登録機能など | EC用のバーチャルカードなど | Apple Pay, Android Pay(Google Pay), Samsung Pay など |
表1:トークンの種類
トークナイゼーションによる非保持化
実行計画では、クレジットカード番号とは見做さない(=非保持化)トークナイゼーションを以下のように説明しています。
"トークナイゼーション(自社システムの外で不可逆な番号等に置き換え、自社システム内はクレジットカード番号を特定できないもの)"
「クレジットカード取引におけるセキュリティ対策の強化に向けた実行計画-2017-【公表版】」より抜粋
実行計画における非保持化をトークナイゼーションによって実現するためには、これまでに自社システム内で使用していたPANをすべてアクワイアリングトークンまたはペイメントトークンに置き換える必要があります。(イシュアトークンのバーチャルカード番号はPANと同等のカード情報なので、イシュアトークンへの置き換えは非保持化には適さない)
この時に気を付けなければいけないのは、PANをトークンに置き換えるためのトークン化システムは“自社システムの外”、すなわちサービスプロバイダーなど他社のシステムによって提供されなければならないということです。トークン化やデトークンを行うトークナイゼーションシステムは自社システムの外に存在しなければなりません。
また、自社システムの内部ではクレジットカード情報(PCI DSSにおけるアカウントデータ)の「伝送」「処理」「保存」がいずれも行われないように、既存のデータフローの変更、クレジットカード情報の削除などを行わなければなりません。
以上の通り、非保持化を実現するためには、自社システムにクレジットカード情報が残らないようにして、クレジットカード情報を完全に自社システムから切り離すために、さまざまな点に注意する必要があります。
これらの注意点は、PCI DSSの評価範囲にトークナイゼーションを導入する時の注意点に似ているため、次に非保持化のためにトークナイゼーションを導入する助けとして、PCI DSSの補足文書である「PCI DSS Tokenization Guidelines」をご紹介します。
非保持化のための「PCI DSS Tokenization Guidelines」の活用
PCI DSS Tokenization Guidelines にはPCI DSSの評価範囲(スコープ)を減少させるために、トークナイゼーションをどのように使用するかのポイントがまとめられています。この内容は実行計画における非保持化を実現しようとする場合にも参考とすることができます。即ち自社システム内にPCI DSSの評価範囲がなくなるようにトークナイゼーションを構成することで、適切に自社システムの非保持化を行うことができます。
以下に、PCI DSS Tokenization Guidelinesに書かれているPCI DSS評価範囲のポイントを要約します。
トークナイゼーションを行う場合のPCI DSSの評価範囲
- トークナイゼーションシステムのすべてのコンポーネントは、カード会員データを処理、保存、または伝送を行うため、カード会員データ環境の一部とみなされ、PCI DSS のスコープに含まれる。(下図①)
- トークン化またはデトークンの実行機能を提供するシステムコンポーネントは、PCI DSS のスコープに含まれる。(下図②)
- トークナイゼーションシステムまたはトークン化・デトークンの処理にアクセス可能なシステムコンポーネントやプロセスはカード会員データ環境に接続されているためPCI DSS のスコープに含まれる。(下図③④)
- 他のシステムコンポーネントがトークン化またはデトークンの操作を実行しない場合でも、カード会員データ環境内に位置する、またはカード会員データ環境に接続されていると、PCI DSS のスコープに含まれる。(下図⑤)
図1:トークナイゼーションを行う場合のPCI DSS評価範囲
PCI DSSの評価範囲外にするための方針
- トークンに紐づいたPANの値は、そのトークンや複数のトークン、その他トークン化に関連した知識を用いて計算可能であってはならない。
-
例:
次のようにトークン(または複数トークン)からPANが計算できないこと
-
例:
- トークンおよびトークンが存在するシステムが侵害されたとしても、PANを取得することができてはならない。
- システムコンポーネントは、次の任意のアプリケーション、システム、プロセス、ユーザーからセグメンテーション(分離)されている:
- そのトークンのデトークンリクエストを送信し、PANを取得する機能
- そのトークンのトークナイゼーションシステム、データ保管庫、または暗号化キーへのアクセス
- デトークンあるいはトークンからのPANの導出に利用することができる、トークンの入力データやその他の情報へのアクセス
- システムコンポーネントは、データ保管庫、または暗号鍵ストレージを含む、トークナイゼーションシステムやプロセスに接続されていない。
- システムコンポーネントは、カード会員データ環境外に位置し、カード会員データ環境に接続していない。
- システムコンポーネントは、カード会員データ環境における認証で使用されている認証資格情報へのアクセスを持たない。
- システムコンポーネントは、その他のいかなる経路を介してもカード会員データや機密認証データを伝送、処理、または保存しない。
- トークナイゼーションソリューションの実装に先立って、過去にカード会員データを保存、処理、または伝送されていたシステムコンポーネントからすべてのカード会員データが確実に削除され、検証されている。
まとめ
加盟店の非保持化を推進するための参考として、PCI SSCから発行されているトークナイゼーションのガイドライン「PCI DSS Information Supplement: PCI DSS Tokenization Guidelines」を紹介させていただきました。
ガイドラインに解説されるPCI DSS評価範囲に関するポイントは、一般的なPCI DSSの評価範囲を最小限にするためのネットワークセグメンテーションの原則に基づいています。トークナイゼーションを活用する場合でも、カード会員データ環境とのネットワークセグメンテーションや既存のカード情報の廃棄が不適切だと、カード情報の非保持化が適切に行えなかったり、PCI DSSの評価範囲が意図したとおりに減少できなかったりするのでご注意ください。冒頭でも述べたとおり、クレジットカード取引全体の「非保持化」を実現するためには、P2PE、トークナイゼーションなどの技術を適切に組み合わせることが重要になります。
2018年の新年を迎え、EC加盟店やイシュア、サービスプロバイダーにはいよいよ実行計画の対策の期限が差し迫っております。弊社のPCI DSS徹底解説が皆様のPCI DSS準拠や非保持化を推進するための一助となりますと幸いです。
Writer Profile
セキュリティ事業部
セキュリティコンサルティング担当 チーフコンサルタント
二部 弘太(CISSP、QSA)
Tweet