Google AdWordsのカスタマーマッチで使いたい、メールアドレスのハッシュ化(SHA256ソルトなし)マクロ

By: Yuri Samoilov

こんにちは!

Google AdWordsのアップデートが目まぐるしい近頃ですが、2015年10月以降に順次「カスタマーマッチ」がローンチされます。これによって、Google 検索、Gmail広告、YouTube広告のキャンペーンで「顧客のメールアドレス」を基にして広告を配信したり、その類似ユーザーを生成できるようになりました。これによって顧客のメールアドレスを扱うことになりますので、広告運用にもセキュアな環境が求められるようになるわけです。

今回はカスタマーマッチを利用するときのセキュリティリスクとその対策について考えてみます。

Contents

顧客のメールアドレスを扱うということ

カスターマッチの登場によって「リアルな顧客情報を広告に活用できるようになる」ということになりまして、今までのリスティング広告で利用できた各種ターゲティングよりもよりもさらに「個」に重点を置いたターゲティングが可能になったことを意味します。そして、これはかなりプライバシーに突っ込んだ情報を扱うということになりますので、顧客・広告主・広告代理店の方それぞれで必ずこのような心配が出てくるでしょう。

「個人情報が流出してしまわないか?」

むしろ心配しなかった人は危険です…。

また、カスタマーマッチはメールアドレスのリストをGoogle AdWordsのサーバにアップロードする必要があるので、扱いについて次のような懸念が出てきます。

  • メールアドレスをそのままサーバにアップロードするけど、そのデータがいつかどこかに流出しないか心配
  • カスタマーマッチをやりたいけど、広告代理店などの社外にメールアドレスは渡したくないし渡せない

カスタマーマッチは「SHA256アルゴリズムでハッシュ化されたメールアドレス」を利用できる

繰り返しになりますがカスタマーマッチは「メールアドレスのリスト」を活用するプロダクトです。やりたい!でもセキュリティ面も心配という方もいらっしゃると思います。

しかしながら「カスタマーマッチ」に関するヘルプを読んで見ると、

メールアドレスをハッシュ化してリストを安全にアップロードする

  1. 顧客のメールアドレスをすべて小文字に変換し、メールアドレスの前後に余分なスペースがある場合はスペースを削除します。ハッシュ化の際には、大文字と小文字が区別され、スペースの有無が反映されるため、マッチングに使用する前に、このような作業が必要になります。
  2. SHA256 アルゴリズムを使用してメールアドレスをハッシュ化します。このアルゴリズムは、業界標準の一方向ハッシュ関数です。
  3. メールアドレス example@gmail.com をハッシュ化すると、264e53d93759bde067fd01ef2698f98d1253c730d12f021116f02eebcfa9ace6 となります。
  4. ハッシュ化したメールアドレスを .csv ファイルに貼り付けます。このとき、ファイルが上記の「顧客のメールリストを作成する」の要件を満たすようにしてください。
    同様に上記の手順に従って、ファイルを安全にアップロードします。

とあるように、メールアドレスをハッシュ化して不可逆な文字列に変換しておくことで、万が一このメールアドレスのリストが外部に漏れてしまっても、そのデータからはメールアドレスが復号できないので安全である旨が記されています。

なのでカスタマーマッチを実施する場合は「SHA256でハッシュ化したメールアドレスのリスト」必ず作成した上で活用しましょう。

そこでどうするか?だ。

では、メールアドレスのSHA256によるハッシュ化ってどうやってやるの?ということなのですが、SEM Insightの中の人が休日を使って「Emailアドレスをハッシュ化するExcelマクロ」を作りましたので公開します。

なんでこんなものを作ったかというと、ハッシュ化ができないことによる次のリスクを減らしたいと思ったからです。

  • 生のメールアドレスを使ってほしくない(不幸になってほしくない)
  • ハッシュ化できないからと言ってカスタマーマッチを使うことを諦めて欲しくない

使い方や注意点は次のセクションで。

「Emailアドレスをハッシュ化するマクロ」の特徴と使い方

ファイルのダウンロード

sha256hashmacro.zip

更新履歴

  • 2015年10月5日
    • 1.0βとして公開
  • 2015年10月7日
    • 1.1βへバージョンアップ(メールアドレスの「@」以前に「+」が入っていても正しいメールアドレスとして認識できるように)
    • 1.2βへバージョンアップ(Excelの32bit/64bit両方に対応)

特徴

  • ネットに接続しない(通信ログをとられる心配がない)からマクロの中で作業が完結する
  • 5,000個までのメールアドレスが数秒でハッシュ化できる(5,000個を超えるマクロが欲しい方は「お問い合わせ」からご連絡下さいませ)
  • メールアドレスの正当性が簡易にチェックできる

開発環境

  • Windows 10 64-bit
  • Microsoft Excel 2010(32bit)

おそらくWindows機でExcel 2010以降なら動くと思いますが、Mac版のExcelで動作するかはわかりません。

使い方

sha256hashmacro-01

メールアドレス欄に変換したいメールアドレスを貼り付けます。貼り付けたら「変換」をクリック。(配布マクロにも動作確認用にサンプルメールアドレスを残しています)

 

sha256hashmacro-02

メールアドレスの妥当性がTrue(使用不可記号を使っておらずメールアドレスが正しいと判断された)であるメールアドレスに対して、SHA256アルゴリズムでソルトなしのハッシュ化されたメールアドレスの一覧を返します。この時メールアドレスにスペースが入ってしまっている場合は自前に削除されます。

 

sha256hashmacro-03

カスタマーマッチには使えませんが、メールアドレスの妥当性がFalseのものはメールを送信してもエラーが出る可能性が高いものですので、参考情報として使ってもらえればと。

使い方は以上です。

注意点

  • VBA側でセルの場所を指定しているので、「行の削除」「列の削除」など体裁を変える変更は行わないで下さい
  • 動かなかったらごめんなさい。エラーの状況を詳細に教えてくれたら直すかもしれません

インハウス社内で使ってもらうでも良いですし、広告主がこのマクロでリストを作成して広告代理店担当者に送付するでも良いですし使い方はお任せしますが、このマクロの使用によっていかなる損害があっても作者はその責を負いませんのであしからず。

最後に

今回はGoogle AdWordsのカスタマーマッチ向けに作ったのですが、Twitter広告のカスタムオーディエンスでも「データは「SHA256」を使用して「ソルトなし」でハッシュ化」とあるのでこちらでも使うことが可能です。運用型広告の運用にセキュリティリスクへの対策も考える必要がある時代に突入してきました。セキュリティオプションがあるメニューでは必ずセキュアな運用を心がけましょう!