メインコンテンツへスキップ

トークナイゼーションとは

この記事は約 2 分で読めます

トークナイゼーションとは、クレジットカード番号や個人識別番号などの機密データを、意味のないランダムな文字列 (トークン) に置き換えて保護する技術です。元データはトークンボールト (安全な対応表) に格納され、権限を持つシステムだけがトークンから元の値を復元できます。 PCI DSS 準拠の決済システムで広く採用されており、 2025 年の PCI DSS v4.0 完全施行に伴い導入がさらに加速しています。

元の値がどこにも残らないという状態

置き換えを導入したあとに残る論点は、元の値がどこにも残っていないという状態をどう保つかにある。格納先を置き換えても、値が通過した経路の途中に写しが残ることがある。入力を受け付けた時点で書き出される動作記録、障害を調べるために一時的に置かれた控え、集計や分析のために抜き出された一覧などがそれで、いずれも正常に動いている間は目に入らない場所に作られるため、置き換える対象を洗い出す作業から漏れやすい。どこにも残っていないという状態は、保存先を 1 か所変えて成り立つものではなく、値が入ってから出ていくまでの経路を数え上げたうえで初めて言えることになる。第二に、置き換えの前後には値そのものを扱う箇所が必ず残る。変換する直前に値を受け取る箇所と、必要に応じて元に戻す権限を持つ箇所は、性質上なくすことができない。したがって得られるのは扱わなくなることではなく、扱う箇所を狭めることであり、狭めた状態が続くかどうかは、値の入口が後から増えていないかを確かめ続ける作業に依存する。第三に、対応関係を自分の側に置かない構成には、預け先を替えるときの前提がついてくる。手元にあるのは意味を持たない文字列だけで、それを元の値に結び付ける情報は預けた側にある。預け先を替える場合、文字列は持ち出せても対応関係は持ち出せないため、元の値をもう一度集め直すか、両者の間で引き渡す手続きを設けることになる。この論点は導入した直後ではなく年単位の時間が経ってから現れるため、選定時の比較項目に入りにくい。

トークナイゼーションフロー

ユーザーがカード番号を入力
トークナイゼーションサービスがトークンを生成
元データはトークンボールトに安全に格納
加盟店 DB にはトークンのみ保存
決済時にトークンボールトから元データを復元して処理

データマスキングとの違い

データマスキングは元データを不可逆的に変換するため復元できませんが、トークナイゼーションはトークンボールトを通じて元データに戻せる点が根本的に異なります。決済処理では、購入時にカード番号をトークン化し、実際の請求時にはトークンボールトから元の番号を取得して処理します。この仕組みにより、加盟店のシステムにはカード番号が一切保存されず、情報漏洩時の被害を大幅に軽減できます。

暗号化との使い分け

暗号化は数学的アルゴリズムでデータを変換するため、鍵が漏洩すると全データが復号されるリスクがあります。トークナイゼーションはトークンと元データの間に数学的関係がないため、トークンだけを入手しても元データを推測できません。ただし、トークンボールト自体が単一障害点になるため、ボールトの保護にはHSM による鍵管理と厳格なアクセス制御が不可欠です。

実務での導入ポイント

Apple Pay や Google Pay のモバイル決済は、デバイストークナイゼーションの代表例です。実カード番号の代わりにデバイス固有のトークンを使うことで、端末が盗まれてもカード情報は安全です。 EC サイトの「カード情報を保存」機能も、実際にはトークンを保存しているケースがほとんどです。強力なランダムパスワードで決済管理画面を保護し、トークンボールトへの不正アクセスを防ぎましょう。

関連用語

この記事は役に立ちましたか?