9/23/2016

Roughtime: 安全で監査可能な時刻同期プロトコル

GoogleでRoughtimeという安全で監査可能な時刻同期プロトコルを開発しているようだ。

セキュリティ・プロトコルは多くの場合、ローカル・クロックの正確さを前提としている(例えば、TLS、Kerberos、DNSSECなど)。プロトコルの設計時からその前提が広く受け入れられている。しかし、多くの人々にとって、それは真実ではない。我々は、Chromeでの証明書エラーの少なくとも25パーセントがローカル・クロックの問題であるという素晴らし証拠を見つけた。

ローカル・クロックが同期されていても、本物であると証明されていないNTPサーバを使っている恐れがある。だから、あなたの脅威モデルがMITM攻撃者を含んでいるなら、ローカル・クロックをまだ信用することはできない。

認証を持つNTPサーバを増やすための努力はされているが、各クライアントはどうしても複数台のタイムサーバを信用する世界をまだ前提としている。クライアントによって効果的に監査されることをタイムサーバに持たせるという解決法を探るため、私と同僚のMatt Braithwaite (Ben LaurieやMichael Shieldsから支援や助言を受けている)はRoughtimeを開発している。

超簡潔に: いくつかの技を使って、オンデマンドでクライアントが選択したノンスとタイムスタンプで署名するサーバのデプロイは成り立つと考えている。数台のサーバを持った時点で、クライアントはあるエントロピーを持つ他のサーバからのハッシュ応答によってそれらのノンスを生成できる。それがノンスは応答を受け取った後に作成されたことを証明する。クライアントはノンスのチェーンと応答を保持し、サーバが不正な振る舞いをすれば、証明と報告のために他のサーバからの応答を使うことができる。

今のところ、一台だけだがRoughtimeサービスを実行している。そして、拡散する信頼のアイデアは初期段階である。しかし、このアイデアに興味を持つ人がいるかどうか、特にクライアントにこのようなものをデプロイすることに真面目に興味を持つ組織があるかどうかを評価したい。(なぜなら、あなたがクライアントを持っていれば、サーバを実行することにも興味を持つと思うからだ。)

Roughtimeサイトにもっと長い紹介文や多くの詳細情報がある。また、メーリングリストも設定している。

Hacker News