「JCBが個人情報を第三者に提供」の件でプチ炎上している。2025年2月28日(金)~3月31日(月)までに手続きしなければ、個人情報が第三者に提供されるため、早く手続きしようとの書き込みが多く見られる。
では、個人情報の第三者提供とは、どのような情報が提供されるのか。JCBのwebサイトには、以下の2点が書かれている。
- お客様の情報をもとに、対象を限定した通知や広告を行う仕組みを導入します。
- お客様の情報(Eメールアドレス・電話番号)は、元の情報に復元できない加工(ハッシュ化)を行い、本ページ掲載の企業の保有する情報との突合に利用します。
おそらく、『拒否しなければ「お客様の情報(Eメールアドレス・電話番号)」が第三者に提供される』と勘違いしているのではないだろうか。
2025年3月6日(木)にJCBのお知らせで「個人情報の第三者提供について」として追記されているが、どんな情報が提供され、どんな事に使われるのかを紹介したい。
個人情報の第三者提供対象の会員は?
JCBの難しいところは、カード発行会社であり国際ブランドであること。今回の個人情報の第三者提供については、カード発行会社としての内容であり、カード裏面の発行会社が「株式会社ジェーシービー」で、カード番号が354からはじまる個人用クレカのみが対象。
楽天カード(JCB)やPayPayカード(JCB)、イオンカード(JCB)などは、発行会社が異なるため対象外となる。
個人情報をハッシュ化するとは?
対象カード会員向けには、今回の個人情報第三者提供の仕組みを詳しく解説したい。技術的に解説するため、よくわからないと言う場合は「ハッシュ値を突合して何に使うの?」までジャンプしてもらった方が良いかもしれない。
個人情報がどのように提供されるかを調べると、ハッシュ化を行った後のハッシュ値を提供するとのこと。ハッシュ化とは特定の文字列を不規則な文字列に変換する事だが、変換後の文字列からは元の文字列に復元できない。このハッシュ化は、webサイトなどのパスワード保存にも使われる仕組みだ。
例えば、「password」をmd5と言うアルゴリズムでハッシュ化すると「5f4dcc3b5aa765d61d8327deb882cf99」、「poitan123」の場合は「d21cac4cc931d60c9931f84d849dec99」となり、「5f4dcc3b5aa765d61d8327deb882cf99」や「d21cac4cc931d60c9931f84d849dec99」から「password」や「poitan123」に戻す事はできない。
データベースに「5f4dcc3b5aa765d61d8327deb882cf99」や「d21cac4cc931d60c9931f84d849dec99」を保存しておき、ログイン時に入力されたパスワードを同じハッシュアルゴリズムでハッシュ化すると、それらが一致するか一致しないかでパスワードが合っているのか・間違っているのかを判断できる。
例えば、「password」と入力するのを「pasword」とsを1つ少なくした場合、md5でハッシュ化すると「22e5ab5743ea52caf34abcc02c0f161d」となるため、「5f4dcc3b5aa765d61d8327deb882cf99」と一致せずに「パスワードが一致しません」とエラーメッセージが表示される仕組みだ。
もし、パスワードを忘れて、webサイトなどパスワードを確認しようとしても「パスワードの確認」メニューはないはずだ。これは、ハッシュ化したパスワードが保存されており、元に戻すことができないため「パスワードの確認」はできずに、「パスワード再設定」や「パスワード再発行」しか用意できない事になる。
しかし、単純なハッシュアルゴリズムが使われている場合は、ハッシュ値から元の文字列を割り出すこともできてしまう。
元の文字列 | md5によるハッシュ値 |
password | 5f4dcc3b5aa765d61d8327deb882cf99 |
123456 | e10adc3949ba59abbe56e057f20f883e |
poitan | 4c2eee27a1bfd268245159217d4633f9 |
例えば「5f4dcc3b5aa765d61d8327deb882cf99」をGoogleなどで検索すると「password」をmd5でハッシュ化した物であることがすぐに判明する。ハッシュ化は元に戻せないのだが、辞書に載っている文字を全てmd5などでハッシュ化した物を用意しておけば、そのハッシュ値から元の文字を割り出せる。
そのため、パスワードを保存するアプリやサイトなどでは、パスワードをデータベースに保存する場合、実際のパスワードに、別途文字列を加えた状態でハッシュ化して保存することが多い。その場合、データベースに保存されたパスワードが漏えいしても、ハッシュ値から元のパスワード+追加文字列を割り出すことは非常に難しくなる。
JCBがどのようなハッシュアルゴリズムを使うかは確認できないが、対象企業も同じハッシュアルゴリズムを使うことを考えると、単純なアルゴリズムを使う事はないだろう。
個人情報のハッシュ化を共有するのは危険?
もう一度、JCBの個人情報の第三者提供を確認すると、「お客様の情報(Eメールアドレス・電話番号)は、元の情報に復元できない加工(ハッシュ化)を行い、本ページ掲載の企業の保有する情報との突合に利用します」とあり、「ハッシュ化」した情報のみ第三者に提供するという事だ。
ハッシュ値同士の突合と言うことは、元々第三者に存在する個人情報が使われ、同じハッシュアルゴリズムでLINEヤフーやGoogleが保有している個人情報をハッシュ化した情報が一致するかの確認だけとなる。
つまり、JCBが提供する個人情報とは、復元できない方式でハッシュ化した情報であり、もしハッシュ値が一致したとしても、一致した情報は第三者自身が保有する情報であるため、そもそも個人情報の提供にあたらないのではないかをJCBに確認してみたところ、以下のように回答があった。
弊社としては、ハッシュ化していても個人情報と整理し、また、連携先がもともと同じ個人情報を持っていたとしても、第三者への提供に該当すると考え、規約改定のご案内をいたしました。
法律の専門家でもないため、ハッシュ値が個人情報に当たるのかどうかはわからないが、正直炎上するような内容でもないと感じている。
ハッシュ値を突合して何に使うの?
一番重要な事は、個人情報をハッシュ化して何に使うのかだろう。利用する目的はwebサイトに以下のように書かれている。
- MyJCB LINE公式アカウント等のJCB公式のSNSアカウントで各種案内を配信するため
- お客様の興味・関心に合わせて、主に当社に関する広告を配信するためお客様の興味・関心に合わせて、主に当社に関する広告を配信するため
前者はLINEの公式アカウントで有効期限切れなどの更新カードを発送したなどの通知を送るため、後者は単純に広告の表示のためだが、JCBカードを持っているかどうかでキャンペーン情報などの広告を切り替えるという使い方だろう。
また、JCBからは以下のような回答もあった。
- フィッシングメールへの不安を回避するため、弊社が送信元であることが確認できるJCB公式SNSアカウントからのメッセージの受け取りが可能。
- JCBカードをお持ちのお客様に対するカード入会案内等、不要な広告を表示しないようにすること、対象を限定した通知や広告を行うことが可能。
確かに、フィッシングメールなのかを判別するのが難しくなってきているが、公式LINEアカウントからカードの更新情報などが送られてくれば安心してみることができるだろう。
実際、LINEでは企業のLINEアカウントから個人あて通知もあり、筆者にも「佐川急便」や「イオンカード」などから以下のようなメッセージが届いている。
メッセージの下部には、「このメッセージは企業が保有する電話番号とLINEに登録された電話番号が一致した方に配信しております」とあり、今回と同じ仕組みが使われれているはずで、JCBも同じような仕組みを導入するための規約変更という事だろう。
「個人情報」「第三者提供」というキーワードが一人歩きをしてしまったことを事を考えると、発表の仕方が悪かったのだろう。どうしても気になる場合、停止方法は詳しく書かれているため、その通り手続きしよう。