非対称パスワードの動機 - Asymmetric password, its motive -

発明者が語る、その動機

こんな記事が目に入りました、「難解な数学の定理も動機は単純であった」と語っている記事です。それにならって発明者も「非対称パスワード」を語ってみることにしました。実装の話では無いし適用の話でも無いが、1を知れば10まで考えが及ぶ皆様には動機を語る方が判り易いと思います。

 

驚き

個人情報の漏洩事件は連日報道されている。特に、サービス提供者の攻撃から派生する漏えい事件は影響が大きい。例えば、2013年4月24日、AP通信社を攻撃したアカウント・ハッキング事件、手の込んだ技術を使う漏えい事件をアカウント・ハッキングと言う訳ですが、ツイッターから「ホワイトハウスで2度の爆発があり、オバマ米大統領が負傷した」との偽ニュースが流され、米株式相場が一時急落したという。

手の込んだ技術を使わなくても、誰でもやろうと思えばやれる事件もある。2010年2月10日のことでしたが、ソニー銀行は20代の男性社員が顧客5人の口座から計約3700万円を着服していたと発表した。「あー、やっぱり」、内部の者ならパスワードPもハッシュ値のパスワードh(P)も覗けるのが当たり前だから、この事件はロジックとしては、今現在もどこかで起きている事件です。

不正侵入を防ぐ対策をしているはずですが、2015年今もなおイタチゴッコが続いている、何ら改善されていないことは驚きです。不正侵入を防ぐ対策は有る; 境界防衛の強化である。例えば、セグメンテーション、IPアドレス・フィルタリング、二値認証、パケット監視系、ブラックリストなど色々有る。が、トロイアは滅亡した。境界防衛が突破された後、何が起きるか?

 

不正侵入を防ぐ対策が突破された後:

従来のパスワードは

h(Pi)=Pj --------(1)

と表せる;ここで、ユーザのパスワードはPi、サービス側パスワードはPj(ユーザアカウント)で表している:h()はハッシュ関数。

<図1:従来のパスワード>

攻撃者は対策を突破して、ユーザアカウントに在るパスワードPjを盗み、Pjをクラックする。クラックされたユーザパスワードPiで下記の一致をパスする;

h(クラックされたPi)=Pj --------(1)”
 

従来のパスワード(1)式には何らセキュリテイの備えが無い:

上のクラックは誰でも知っていることであるが、不正侵入をこのように表現した理由がある;パスワードh(Pi)=Pjそれ自身には何ら安全保障の備えが無い、言い換えれば、従来のパスワードスは攻撃に対する備えを持っていない、ということを示したかったから。ここが、非対称パスワードの背景であるからです。非対称パスワードは生まれながらに安全保障の備えを持っているパスワードです...。

 

単純なロジックだが、ハッカーのログインを不可能にする:

2012年の12月、ふっと、考えが浮かんだ、「もし、パスワードが(1)式ではなく、2つの確率変数CiとCjが有り、パスワードは不等式Ci≠Cjの組である。そうしたら、何が起きるだろうか…?」。
言い替えると、

Ci≠Cj--------(2)

不等式(2)がパスワードだ、と言う考えです。

こう考えると、何か状況が一変する予感がした…。今Cjがサービス側のファイルに有り、そのCjを盗んだヤツがユーザとしてCjを入力する…。そのCjを認証サーバは受け取り、ファイルから来たCjと照合する…当然、トートロジー(3)式になる;

Cj=Cj --------(3)

これは不等式Ci≠Cjじゃないから、認証サーバはハッカーの攻撃にエラー通知を出す。これなら、従来の攻撃手口は直接の脅威にならない。不等式(2)をベースにする非対称パスワードはそれ自身にセキュリテイを備える。ハッカーが対策を破った後も、なおずっと、安全保障を維持する。

 

確率の圧倒的な差を作るロジック

2つの確率変数CiとCjがCi≠Cjというパスワードを構成する、そのセキュリテイについて、もっと考えてみましょう。確率変数CiとCjのビット長を256bitにする:Ci≠Cjという組み合わせは2256*2256個も有る。2256*2256個の中の一組がパスワード(2)である。

2256*2256個の中から一組のパスワード(2)を見つけ出す関数が在ります。下記(4)式を満たす関数である;

F1-1(Ci) = F2-1(Cj) =一つの乱数-------(4)

F1-1()とF2-1()はF1()とF2()の逆関数である。このF1()とF2()が一組のパスワード(2)Ci≠Cjを創る関数です;すなわち、

Ci= F1(一つの乱数)
Cj= F2(一つの乱数) -------(5)

もし、(4)式の関数が無かったら、元の一つの乱数を見つける確率は:

確率=1/2256*2256-------(6)

(4)式の関数が有れば、元の一つの乱数を見つける確率は:

確率=1-------(7)

である。この圧倒的な確率の差が非対称パスワードの信頼度を象徴する。→ クラックは不可能である。

 

パスワードの登録が不要、パスワードの漏えいが無い...

見ての通り、関数(4) (5) (6) (7)は等式(1)を含んでいない:従って、非対称パスワードはパスワードの登録を求めない。関数(4) (5) (6) (7)を計算するコンピュータが有る、それが認証サーバである。「知識分割サーバ」と言う。

<図2:認証通知を両端に発行する>

知識分割という言葉は、PCIDSS要件3.6.6v.1.2.1に由来する。カード業界の団体PCI SSC(グローバルフォーラム)は2009年に運用中の鍵を二つの鍵に「知識分割」せよ、と求めたことが有る;→ PCIDSS要件3.6.6. v.1.2.1 (Split knowledge and establishment of dual control of cryptographic keys)。

図2に見るように、二つのコードCiとCjが揃ってサーバに入ると、認証通知がユーザとサービス側双方に出る:これは(4)式に見るように、元の「一つの乱数」が再現したからである。→ (4)式。そういうリスク管理が要件3.6.6である。知識分割サーバの実装事例は他のページに譲る。

 

ハッカーのログインは不可能になり、イタチゴッコが終わる...

非対称パスワードの売りは、1)パスワードが不等式Ci ≠ Cj,の組である:2)アプリの通信路と非対称パスワードの通信路の両者は独立である。1)と2)から、従来の攻撃は殆ど無意味になる。→ 表1と表2

非対称パスワード・リストの流出(ユーザ側) 成り行き 従来の対策
キーストローク・ロガーからの流出 なし → QRコード&スマホ ソフトウエア・キーボード
無線ルータや中継サーバからの流出 なし → QRコード&スマホ  
フィッシングに依る流出 なし → QRコード&スマホ ページの個性化
表1;ユーザ側
非対称パスワード・アカウントの流出(サービス側) 成り行き 従来の対策
ウイルス、内部者からのアカウント流出 意味ない → (2)&(3) 式 個人識別情報の読み替え
訴訟、損害補償 意味ない → (2)&(3) 式 保険
表2;サービス側
 

進化の提案、物理的パスワード

非対称パスワードをコアに持つ「物理的パスワード」の提案、これもデバイスに焦点を当てた認証ツールの一種です。ただし、デバイスを従来のアカウントに結び付ける類のものではなく、新しいアカウントに結び付ける、すなわち、不等式(2)の非対称パスワードCjに結び付けるものです。

物理的パスワードは、非対称パスワード(知識分割)と、IPsecトンネルと、モバイルルータから構成される。モバイルルータは、Wi-Fiを2ポート持ち、人が携帯するタイプも設置タイプも有るし、スマートフォンタイプもある;スマホはモバイルルータとしても機能する。

物理的パスワードは、又、インターネットにおいてもLANにおいても、X.509証明書も用いないで、インターネット鍵交換プロトコルを駆動する。この進化への参画を歓迎する、連絡を頂ければ。

以上
2015年2月22日
渡邊栄治