ワンタイムパスワードを生成して、銀行のネット振り込みなどに使用される トークンをバラしてみました。
新しい物が来たので、古いのはそのまま捨てようと思ったのですが、ふと思い立っての分解。
中身は予想通りに極めてシンプル。
大量生産するが故に安く出来るわけですが、 幾らするんだろうな~なんて思ったりもして(笑)
バラしたのはこれです。
まずは裏蓋をあけますが、すぐに目に入るのがプログラムを書き込んだりするための端子。
構造的に一度きりの書き込みだけのはずですが、 どういったプログラムで、又アルゴリズム等は当然に解りません。
ちなみに、 トークンそのものは単に乱数を発生させるだけの代物ですが、 その乱数をパスワードとして本部に有るサーバーと照合する事で、
使用者の身元確認(使用する者が本人かどうか)をしています。
簡単な説明が下記のURLにありますので、参照下さい。
「認証」の基礎知識(7):ワンタイムパスワードの方式 – せぐなべ (segunabe.com)
トークンは1分ごとに自動的にパスワードを作成している訳ですが、 サーバーとのやりとりによる時刻補正機能は無い上に、 クロックが水晶ですので、段々と時差が出てくる。 といっても、本当に僅かですけど。
それでも受け取って一年も全く使用されていないなんてことになると、サーバーとの間の時差はかなりの物。
基本的に、パソコンなどでパスワードを打ち込むときに、更新される間際のパスワードは間に合わない可能性が高い事から、自然に次のパスワードを待ってから入力するのが普通。
ですので、 時差の修正は トークンが側では無くてサーバー側でやっていることが容易に解ります。
一度シンクロすると、誤差0になるので、 又次の入力処理時に、それまで生じていた誤差を再び修正する。
そんな感じでしょうね。
さて、外側の殻をむしり取ると、電池ケース、表には表示器(上下には端子がずらっと並んでます)、そしてそれが下の電子基板に接続されています。
電池のサイズは2032で、トークンの使用期間は大体2年という事ですが、 表示と乱数発生だけの機能ですので、十分な容量です。
裏側
全体としては完全防水加工に近く、 赤丸の部分にパッキンが付いています。
半透明?のカバーをむしり取ります。
そして上部の表示器もとりさった状態。
真ん中の黒いのは マイクロチップ(小さいけど乱数を発生させたりプログラミングが可能なワンチップマイコン)。
水晶(クリスタルクロック)がまず目に入りますが、 そのすぐ横の茶色丸がジェネレーター関連。
白丸にダイオードを取り付けする事が出来るようになっていますが、 何も付いていませんでした。
緑線で囲っているのはスルーホールで、裏面のプログラム端子からの配線や、そのほか裏と表の(積層の場合、サンドされている内部基板、有ればですが・・・)信号のやりとりの為の通電ラインです。
オレンジ色のがセラミックコンデンサーで コンデンサー関連は Cが記号でつきます。
RN1となっている辺りはおそらくセンターに有る マイクロチップの為の電源供給関連かと・・・
ピンクで囲ったのが 抵抗 だいたいRの記号 、集積タイプの抵抗の場合 RNがつく。
基板上部には 取り去ってしまった表示器(ディスプレイ)への配線が沢山並んでいます。
さて、センターの黒いモールドをカッターで削っていきます。
見てきたのはマイクロチップです。
コアの廻りに、 点線状に並んで、コアへの配線が見えています。
チップその物は一辺2~3mm程度の大きさですが、 シリコンが光に反射して綺麗です。
スマホでは無く、倍率の大きな顕微鏡みたいな物で見れば、 構成されているトランジスター等が多分綺麗に見えるかと思います。
まあ、そんなわけで、トークンをバラしてみましたけど、
一昔前なら安価で造ることなど出来る様な代物では無く、 こうした高度な物が極安く造れて、しかも使い捨てという、今の工業力の凄さには
改めて驚かされます。