iPhone XのFace IDをハックしたい
iPhone Xを購入したブログ狂のロンスタ (id:lonestartx)さんのお家に、家族で遊びにいったときの話です。もちろん見せてもらいましたよiPhone X!
We are X !!
やっぱり気になるのは「Face ID」による顔認証ですね。
Face IDの仕組みですが、初代キネクト(以降Kinect V1)と同じ、ストラクチャードライト方式(ライトコーディングとも呼ばれます)という仕組みで3次元的な顔の形を認識しています。実は、AppleはKinect V1のセンサを作っていたPrimeSense社を昔に買収しているのですよね。Microsoftへの嫌がらせかと思っていたのですが、まさかこのタイミングでちゃんと技術を取り入れてくるとは…
ストラクチャードライト方式を簡単に説明すると、プロジェクタで赤外線のパターンを対象に照射しながら、赤外線カメラで投影されたパターンの変化を読み取ることで、対象の3次元的距離を取得するという仕組みです。えっ、よく分からない?詳しくは自分で調べてね!ちなみに、この方式は、非常に太陽光に弱いはずなのですが、どうやって克服しているのか気になります。真夏の直射日光下では、うまく動かない気がするのですが。
そんなFace ID、気になったのは以下3点です。
- メガネをかけてもかけてなくてもちゃんと認識する
- 寝ている時(目を閉じている時)は認識しない
- マスクしていると認識しない
むむ!これって、実は目の周りの制約は結構緩いので、簡単にハックすることができるのではないのでしょうか?そんな疑問を持ち、とある実験をして見ることにしました。
iPhone X 「Face ID」ハックチャレンジ
紙きれ1枚で人工的な目を作る
やりたいことは、簡単です。
「寝ている人の顔に、簡単な細工をすることでFace IDを突破する」
簡単な細工…具体的には、これだっ!
はいっ!
これを読んでいる、全国でも希少なkaraageファンの皆さん、嫌な予感がしてきましたね!そうです、紙に書いた目をまぶたに貼り付けてFace IDを突破するという壮大かつチープな実験であります!
まぶたに貼り付けて見ます
ジャーン
か、完璧過ぎる。
ちなみに、実際試したのは私ですが、公開する写真はフリー素材であるロンスタさんのものを使用しています。ロンスタさん、いつもありがとうございます!
「Face ID」ハックのテスト
いよいよテストです。
ドキドキ
結果は…ロック解除…できませんでした!!!
そんなバカな!何かの間違いだろうと思い、10回くらい試しましたが1度たりともロック解除できませんでした。我々は、Appleの技術力の前に完敗しました。
まとめ
iPhone Xを紙1枚でハックしようとして失敗しました。成功したら絶対バズると思っていたのですが、中々世の中甘くはないです。ちなみに、この記事書いたあとに色々調べていたら、ハックにチャレンジして成功している人たちがいました。
なんと驚くべきは以下の内容。
簡単なマスク(シリコーンの鼻、紙に印刷された二次元的な目と唇、“被害者”となる人物の顔のデジタルスキャンから3Dプリンターでつくられたプラスチックのフレームの組み合わせ)によって、なりすましが可能になると語っている。
2次元の目!私の仮説は正しかった!!(かも)
何故うまくいかなかったのでしょうね。妻によると「圧倒的にクオリティ不足」とのことでした。また、画力をつけて再チャレンジしてみたいなと思います。
関連記事
Kinect V1は個人的に色々遊んでいたりしますので、興味ある方は以下の記事なども参照してみて下さい。