アップル・ウォッチの4次元バーコード(仮)について分析・検証してみた。

ルチアーノショー寄稿ブログ】 号外・特別編

とある五月晴れに照らされる中、ルチアーノショー銀座研究所はアップル・ウォッチの4次元バーコード(仮)について分析・検証した。

アップル・ウォッチをiPhoneとペアリングする際(購入時に最初にする接続設定)、アップル・ウォッチの画面に爆発した水風船が回転するようなアニメーションが表示され、それをiPhoneのカメラで「スキャン」(撮影)する。

f0337316_11032392.jpg
画期的なバーコード技術だ。
デンソー社(日本)が開発した「QRコード」も長く使われてきたが、紙媒体を除き、これにとって変わる技術だと思われる。
iPhoneにQRコードのスキャナが標準実装されないままだったのは(別途アプリケーションをインストールする必要があった)、米アップル社の「他人の技術を取り入れるくらいならもっといいものを作ってみせる」という心意気に他ならない。そう公言しているわけではないが、そのように勝手にプロファイリングしている。
※日本の電子マネーも最後まで搭載しないままにApple Payをリリースした。

その技術がついにお出ましだ。

QRコードは2次元バーコードと言い、濃淡のない2色の(通常は白黒)で図柄化されたバーコードだ。
暗号と同じ仕組みで、組み込みたい文字列が特定のアルゴリズム(*A)によって図柄に変換される。
スキャナ(この場合カメラ)側はそれを*Aアルゴリズムに乗っ取って復号することで元文を読み取る。

これらはバーコードの仕様に加え、暗号学ステガノグラフィーなども勉強すると応用・展開の理解が深まる。

ディスプレイは平面なので実質2次元(2D)だが、を付けることで擬似的に「奥行き」を表現している。これを3次元(3D)と呼んでいいのであれば、アップル・ウォッチのペアリングに使われた技術は4次元(空間3次元+時間1次元=すなわちミンコフスキー時空)バーコードと言える。

※今回のブログではあえてこれを4次元と呼ぶ。3Dプリンターの立体的なスキャンを3次元スキャンとした場合、更に「動く」という要素を加えると、必然的に+時間軸を表現しなければならないため。


f0337316_11024647.jpg
この新技術の仕組みを分析してみたくなり、いくつかの手順をふんだ。
※STAP細胞のようにならないために、検証手順の基本に忠実に(笑)。

以下、アップル・ウォッチとiPhoneをペアリングする作業のことをペアリングZと呼ぶ。
ペアリングZの際にアップル・ウォッチに表示される動くバーコードらしきものをバーコードYと呼ぶ。
バーコードYをiPhoneのカメラで読み込むことをスキャンXと呼ぶ。

★まず2次元バーコードではないことの確認。
→目視。バーコードYには濃淡があり、平面ディスプレイ上の擬似3次元仕様であることは一目瞭然。なおかつ動いているため、当たり前に時間軸が存在する。

★次に3次元バーコードではないことの確認。
→アップル・ウォッチはRetinaディスプレイで高精細なため、念には念を入れて高画素カメラ=ニコンD810(3650万画素=7360×4912ピクセル)カメラでバーコードYを複数枚撮影し(静止画)、同じく高精細表示が可能なiMac Retina 5Kのディスプレイ(27インチ、5120×2880ピクセルの解像度)で表示させたものをiPhoneでスキャンXしてみた。
スキャンXする際は、5Kディスプレイ上で→アップル・ウォッチの物理的原寸になるサイズで表示してみたり、ディスプレイ一杯に広げてみたり、輝度を調整してみたり、いろいろと試してみたが、ペアリングZされなかった。
※カメラの設定は、動くバーコードYがブレないよう、又iPhone 6の動画カメラ最大240fps=1秒間に240コマ)よりも高速になるよう(読み漏れがないよう)、カメラD810のシャッタースピードを1/250秒に設定した。→アップル・ウォッチはテーブルに置き、カメラは三脚で固定した。

★次に4次元であることの確認。
→こちらも念には念を入れてソニー製4KビデオカメラでバーコードYを30秒ほど撮影し、iMac Retina 5Kのディスプレイで再生したものをスキャンXした。
バーコードYの表示サイズを問わず、僅か数秒で無事にペアリングできた。
※ビデオカメラの設定は30fps(毎秒30コマ)の4K画質のものと、毎秒24コマ、30コマ、60コマのHD(ハイビジョン)画質のものと試した。全てペアリングZされた。

よってアップル・ウォッチのペアリングZは4次元バーコードが採用されていると言える。
動画撮影されたバーコードYをiPhoneでスキャンXすることでペアリングZが完了する

※動画からペアリングできるということは、バーコードYにはアップル・ウォッチのシリアル番号を埋め込んでいるのだろう。もしかするとシリアル番号をアニメーションの図柄を決定づける乱数生成の種に使っているのかもしれない。iPhoneのWi-Fi及びBluetoothを切るとペアリングZモードに入れないため、アップルのサーバーとも何か照合している可能性があるし、通常のBluetoothペアリングと同じ認証を同時に(並行して)実行しているかもしれない(それだけなら6桁程度の数字のOCRで良いのでアニメーションは大げさだ)。いずれWiresharkなどでパケットモニタリングしてみようと思う。

※2日後に再度動画からペアリングZを試みたところ認証されなかったため、毎日または毎時、図柄は変わるのかもしれない。或いは1度認証したバーコードYは無効化される=ワンタイムパスワード的な機能を持たせている可能性がある。10回ほど試してみたが、2回以上ペアリングZが完了したバーコードYはなかった。ジャパンネット銀行のトークンのようなイメージ。
f0337316_01331448.jpg
/*
検証する上で、アップル社が想定するカメラの機器的スキャン能力の最低ラインを想定しなくてはならない。今回の場合は
アップル・ウォッチが対応しているiPhone 5のカメラだ。
アップル・ウォッチはRetinaディスプレイなのでカメラ側の画素(解像度)不足や、動画(アニメーション)をスキャンするのでコマ落ちが生じては検証できない。
*/

iPhone 5s以降スローモーション撮影が可能になった。
通常は1秒間に30コマ(30fps)撮影するところを1秒間に120コマ撮影できる。iPhone 6(およびPlus)は240コマ/秒にも設定可能だ。
iPhone 5のカメラは毎秒30コマまでなので、アップル・ウォッチがiPhone 5以上に対応している点、今回の検証で24fps動画でもペアリングZが完了した点を踏まえると、バーコードYは24fps(またはそれ以下)のスキャナ(動画カメラ)で読み取ることができ、24fps(またはそれ以下)のアニメーションだと言える。

/*
スローモーションと呼ばれているが、実態は高速動画(毎秒120コマ)撮影しており、それを再生時に毎秒30コマに落とすことで、高画質な1/4スローモーションを実現している。一般的なスローモーションは、毎秒30コマで撮影さた動画を1コマ1コマを引き延ばしていくため、iPhoneの方式の方が高画質になる。
*/

理論的にはiPhone6の240fps対応カメラでしか読み取れない「高速バーコード」なども作成可能だが、手ぶれなどのゆらぎ許容のため合理的な仕様にしていると思われる。
静止画スキャンベースのQRコードに対し、このアップルのバーコードYは動いているので、もし30fpsであれば1秒間あたりQRコードの30乗のパターンが存在するということ。
※更に濃淡だけでなく色さえも識別子化していれば、ほぼ無限といっていい程のバーコードパターンが生成できる。
また、読み取り時間制限を設けなければ、最終的には高画素写真だろうと音声だろうと動画だろうと埋め込むことができ、4次元ステガノグラフィー的な要素を持ち合わせている。

/*
ステガノグラフィーは、動画やアニメーションのある1コマに全く異なる絵を差し込む「サブリミナル」手法とは異なる。より暗号に近く、そのままの形では埋め込まれていないため復号が必要だ。よって人間は知覚することができないため、ずっと見続けたからといって埋め込まれた情報で洗脳されるようなことはない。
一般的には電子透かし(著作権者の埋め込みやコピー防止など)技術として応用されている。
*/

f0337316_01331487.jpg
これらが意味するところは静止画スキャンの時代は終わり、これからは動画スキャンですよということであり、同時に「暗号学」による捜査・調査対象も広がったということ。
例えばどこかの電光掲示板で訳のわからない図柄が延々と流れていると思ったら、実は動画スキャンすることで何らかのメッセージが現れたなど。
これは空想ではなく、動画スキャンが存在する時点で既に実現している。

ステガノグラフィーも、テロリストなどが敵国の諜報活動(盗聴、盗撮、傍受など)を逃れるために、写真に文字を埋め込んで仲間と連絡を取るケースも多々あった。
見た目はただの写真でも、復号すると言葉が現れる。
これらに対応するために、大手各社にはそれぞれの規定があり、例えばFacebookは画像面積に対し、20%以上のテキストが含まれていると広告を掲載することができない。※目で見えている場合

テレビのCMの入稿検査なども、より知識と技術が必要になってきましたな。
気がついたら毎日犯罪荷担するCMを流していたなんてことにもなりかねないのだから。

/*
ステガノグラフィーに文字列を埋め込むことは、JPEGなどのメタデータ(ヘッダ)とは性質的に全く異なる。
JPEGメタデータについて。
カメラで撮影した写真には、カメラのメーカーやバージョンなどの情報、撮影時間、カメラの設定(露出やシャッタースピード、フラッシュの有無など)、レンズ情報(一眼レフなどの場合)、画素数、設定によっては撮影場所の位置情報(GPS座標)が記録されている。

よって会社をズル休みして旅行に行き、撮った写真をそのままみんなに送って、「去年の」と言ってもバレるのでお気を付けて。

MacOSであれば「プレビュー」の“インスペクタ”で確認することができ、Photoshopなどがあれば、メタデータはいくらでも書き換えることができる。
著作権情報などを埋め込むことができる。

これを応用すると、内部に情報を漏らすだろう人物がいる場合、配信する前に個々に割り振った特定の文字列を埋め込んでおけば、流出した画像のメタデータから、誰が漏洩したものかを特定することができる。※お喋りさんが言いふらしたくなるデータを用意する必要がある。

例えばファンクラブが
芸能人の写真を会員向けに配信し「転載禁止」令を出したとしよう。しかし「禁止」とは命じるだけであり、応じない人もいる。ではルール(約束)を破った人物を退会処分にしたいとする。この場合、配信メールサーバーにJPEGメタデータを動的に書き換えるプログラムを設置し(*a)、メールを送信する際に会員データベースから会員番号と宛先メールアドレスを呼び出し、会員番号をJPEGヘッダに埋め込んだ上で当該宛先へと配信すると良い。受け取る会員は知らないものとする。そしてこれらの写真がどこかのブログなどにアップされ一般に流出した際、運営側はメタデータを参照することで犯人(漏洩者)がわかるという仕組み。
まさに1対1(1人1画像)を実現する電子透かし技術だ。

*a:
JPEGのヘッダはPHPのimage関数、EXIF関数などで簡単に読み込める。書き換える際はJPEGバイナリデータを一度テキストデータに変更し、1行づつ読み込みながら該当箇所を変更し、再度バイナリデータ戻した上で、Base64エンコードしてメールに添付する。

ただしこれらのメタデータは簡単に読み書きできるため信頼性は低いし、ヘッダに識別子が埋め込まれていることを知った時点で削除・変更されてしまう可能性が高い。確実性を持たせるならステガノグラフィー技術(復号も配信元にしかできないもの)を用いた方が良い。
*/

f0337316_11065904.jpg

まとめ

デジタル端末を媒体とするバーコードは今後この4次元バーコード(仮名)へと移行するだろう。
紙媒体など「動かす」ことができない媒体においては、引き続き既存の2次元バーコード(QRコードを含む)が活躍するに違いない。

この動画スキャン式バーコードから読み取れるアップル社の未来の技術は、現在採用されている「ジェスチャー」はいずれ非接触型(トラックパッドやタッチパネルに触れないスキャン方式)となり、更には動画カメラに向かって振り振り(従来の意味でのジェスチャー)したものを読み取って端末が動いてくれるようになるかと思われる。
例えば画面に顔を寄せれば文字が拡大されるなど、人の行動からある程度推測できる空気を読むサービスは可能だ。
※心理学、行動科学などの科学者が採用される(されている)だろう。

/*
※こういった人工知能的な機能の特徴は、より高い精度に近づくために個々の利用者の癖に適用する必要があり、学習期間を設けるのが一般的だ。使い始めは「これでいいですか?」と毎回問われ、利用者のYes,Noに対して微調整される。Yesが増えるにつれ端末は「より利用者が求めているものに近づいている」と認識し、確認の問いのペースが開いていく。そして利用者本人に最適化されたシステムのできあがりだ。
*/

Siri
(声によるiPhoneの操作)の認識精度も極めて高いし、当面は補助的な位置づけで導入され、完成度を増した時点で徐々に移行していくはずだ。

そしていずれ高速動画カメラで微表情(0.2秒)を読み取り、Lie to Meのライトマン博士のように振る舞うんじゃないかとルチアーノショー銀座研究所は予想している。


あとがき
最近(アップルやgoogleのような突出した会社)は、プログラマーやエンジニアは「技師」という明確なポジションに落ち着きつつある。これまでは「開発」というカテゴリの中に存在していたが、ここまで(例えばgoogleが自前で打ち上げている軌道衛星は他国の国家レベルよりも精度が高い)技術レベルが高まってくると、発案者、設計者は異なることが多い。発案者は例えばスティーブ・ジョブズのような天才・カリスマが存在し、世の中という全体を見渡せる目と先見性というビジョンが必要だ。設計者はそれを実現する上で必要なデータ(科学的根拠)を揃え、全体的なシステムデザインを構築し、プログラマーに指示する役割だ。主に各ジャンルの科学者が雇用されている。そして設計書(建築で言う図面)を見ながらプログラマーがコーディングする。作業現場だ。
ピラミッドの建築現場にも似ている気がする。

長年「学者」はあまり儲からない職のように思われてきたが今は違う(少なくともUSAでは)。
ハーバードやMIT(マサチューセッツ工科大)、カリフォルニア工科大などの学生は、一流民間企業に加えNSA、CIA、FBIの順に高給でリクルーティングされ、給料面でも民間か公務員かで迷うという日本にはないシーンが実在する。
※同時に労働時間や制約、リスクも民間人を上回ることもあり、高給=好待遇とは限らない。

日本も大学進学率の極めて高い国なのだから、誰よりも勉強・研究した分、誰よりも報酬がもらえるようになればいいんだが、なかなか日本はお金が動かない。
先日googleによる東大生の青田買いについて報道された。提示された年収は1,800万円。
最近は英語もできる人が増えたので、海を越えることに抵抗がなくなってきているのではないかと思う今日この頃。

メイド・イン・ジャパン、頑張りたいところですな。


Photographer&Engineer: Charlie

Homepage
Facebook
Twitter
Instagram
ルチアーノショーで働くスタッフのブログ
専属カメラマン☆チャーリーの寄稿ブログ(過去ログ)
専属カメラマン★チャーリーの部屋(過去ログ)

ルチアーノショー
TEL : 03-3531-4851

by charlie-ls | 2015-05-10 11:23 | 【赤坂】ルチアーノショー寄稿ブログ

カメラマン☆チャーリーのブログ


by チャーリー
カレンダー
S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31