Gt technology(j)-201305

962 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
962
On SlideShare
0
From Embeds
0
Number of Embeds
409
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Gt technology(j)-201305

  1. 1. キーレス署名基盤  技術概要  
  2. 2. ハッシュ関数  !   GuardTimeの技術は、ハッシュ暗号関数に基づいています。 2  !   ハッシュ関数は、暗号的に安全な一方向の処理を行います。任意サイズのデータを入力し、ユニークな固定長ビット列を出力します。  入力データ ハッシュ関数 ハッシュ値 イメージを表示できません。メモリ不足のためにイメージを開くことができないか、イメージが破損している可能性があります。コンピューターを再起動して再度ファイルを開いてください。それでも赤い x が表示される場合は、イメージを削除して挿入してください。AXSJ76SNWCRVRVLFFAONRDNZG4VUSU2HAS7DJWZR2U  一方向  不可逆 イメージを表示できません。メモリ不足のためにイメージを開くことができないか、イメ!   出力はハッシュ値、メッセージダイジェスト或いはフィンガープリントなどを呼ばれます。  
  3. 3. ハッシュツリー  !   ハッシュツリーは、複数のハッシュ値を入力し、繰り返しハッシュ関数を実行し、一つのルートハッシュを生成します。 3  !   上図で、ハッシュツリーのリーフノードとして、8つのハッシュ値を持っています。 !   x1  から  x8  は入力ハッシュ (リーフノード)  !   h()はハッシュ関数  !   |  は文字列の結合  Note:  h(x1|x2)  ≠  h(x2|x1)  Data  Item  
  4. 4. ハッシュチェーン  !   上図の例では、 x3  のオーナーは {x4,  x12,  x58}  と連結の順番を示す “位置ビット” {1,0,1}  を持ちます。これを使い、ルートハッシュを再生成し確かにx3  が計算に使われていたことを証明します。 4  !   ハッシュチェーンは、ツリー上のあるリーフハッシュからルートハッシュを生成するため必要となる情報です。
  5. 5. 分散ハッシュツリー  !   GuardTime  は毎秒グローバル分散ハッシュツリーを生成し破壊します。 !   ツリーは、階層的に離れた場所に設置されたノード「アグリゲーター」を使って構築します。 !   各アグリゲーターは、非同期で処理を行います。子ノードからハッシュ値を受け取り、ハッシュツリーを生成し、複数の親ノードにルートハッシュを送ります。 5  !   アグリゲーターは、ステートレスで仮想マシンや専用ハードウエア上で稼働します。 !   理論上、毎秒264まで入力できます。
  6. 6. キーレス署名  !   顧客のアプリケーションが、署名するデータのハッシュ値(青丸)をツリーに送ります。 !   顧客が受け取ったキーレス署名には、ハッシュ値(赤丸)と位置ビットで構成されるハッシュチェーンを含んでいます。この情報でトップルートハッシュ値を再生成することが出来ます。 !   GuardTimeシステムでは、このハッシュチェーンをローカルハッシュチェーンと呼んでいます。 6  
  7. 7. カレンダー  !   分散ハッシュツリーのルートハッシュ値(サービスを開始してから毎秒一つづつ生成される)を、「カレンダー」と呼ぶ公表データベースに保管します。 7  
  8. 8. 公表  !   カレンダーハッシュ値は、定期的に集約し「公表コード」と呼ぶハッシュ値を生成し、電子的に公表するとともに世界で配布される媒体に物理的に公表します。全ての署名は、署名した後発行されるどの「公表コード」にトレースすることが出来ます。  !   公表は毎月行います。公表コードはフィナンシャルタイムズのマーケット版に掲載されます。幅広く、信頼できるメディアに掲載されていることが、GuardTimeの信用根拠(トラストアンカー)となります。 8  
  9. 9. サービスの実装  !   顧客は署名サーバを経由してGuardTimeのサービスをインタラクティブに利用します。 !   プライベートサーバー:  顧客のファイアウオールの後ろに実装します。 !   パブリックサーバー:  GuardTimeが運用します。 !   署名サーバは署名と検証サービスの両方を提供します。 9  
  10. 10. 署名サービス  !   顧客は、署名するデータのハッシュ値を送ると、最初の集約が行われ、ルートハッシュ値が複数のアグリゲータに送られます。 !   署名サーバがアグリゲータの一つから応答を受け取ったら、署名をアプリケーションに戻します。 10  
  11. 11. 完全性の証明 I  !   まず最初に、署名から取出したヒストリーハッシュチェーンを使ってグローバルルートハッシュ値を再生成することで、完全性を証明します。 !   これは次の様に表わすことが出来ます。 !   検証するデータのハッシュ値(x3)を再生成します。 !   署名からヒストリーハッシュチェーン(x4,  x12,  and  x58),  {1,0,1}を取り出します。 !   計算:  x34=h(x3|x4),  x14=h(x12|x34),  xroot=h(x14|x58)  11  
  12. 12. 完全性の証明 II  !   グローバルルートハッシュ値が算出されば、カレンダーのヒストリーハッシュチェーンを使って、公表コードを再計算できます。 下図で、ヒストリーハッシュチェーンは赤線、ハッシュ値は赤丸で示されます。 12  !   GuardTime  は、検証時にGuardTimeサービスがなくでも、オフラインで独立して検証できるツール(MicrosoW  Excel  等)を提供します。  
  13. 13. 完全性の証明 Ⅲ  13  ● ● ● 1 0 1 HashValue LocationBit History Hash Chain Aggregation Hash Chain 署名時 公表以降(エクステント時) 註:エクステンドとは、ヒストリーハッシュチェーンをキーレス署名に組込むことを指します。 カレンダー キーレス署名
  14. 14. 時刻の証明  14  1 ステップ 合成  ハッシュ 合成ハッシュの方向 グローバルルートハッシュの時刻 公表時刻   0 12 1 4 0 0+8=8 12-­‐8=4 2 3 1 8 4-­‐1=3 3 2 0 8+2=10 3-­‐2=1 4 1 1 10 1-­‐1=0 120トップルートハッシュ時刻 2 3 4 8 10ルートハッシュからハッシュチェーンの情報を使って、グローバルルートハッシュ(緑ドット)の時刻を計算します。 •  合成されたハッシュが左から合成されていれば、左のバイナリーツリーの秒数をグローバルルートハッシュ時刻に加算、公表時刻から差し引きます。•  逆にハッシュが右から合成されている場合、公表時刻から1を差し引きます。
  15. 15. データ源の証明  !   アグリゲーションサーバの階層は、階層上の位置を示します。 !   各アグリゲータノードは、親ノードのハッシュツリーで、名前と論理的な位置を与えられます。 !   この情報は、署名の中に埋め込まれ、各署名に次のような識別子を提供します:  15  !   認証サーバーと別途接続することにより、ユーザレベルの証明を提供することが出来ます:     Na,onalAggregator:StateAggregator:CompanyName:UserName  Na,onalAggregator:StateAggregator:CompanyName  
  16. 16. ユーザインターフェース  !   署名はPDFなど様々なフォーマットに埋め込むことが出来ます。 16  
  17. 17. 冗長性  !   各アグリゲータは、複数の親ノードを持ち、リクエストは全ての親に送ります。 !   最初のリスポンスが採用され、後は破棄されます。 !   これにより、ネットワークやサーバに障害があった場合、自動的に迂回します。 !   システム上のボトルネックはありません。 17  
  18. 18. コアクラスター  !   最上位のアグリゲーターをコアクラスターと呼びます。 !   アベイラビリティを確保する為に、複数の最上位アグリゲーターが必要です。しかし、毎秒1ルートハッシュ値だけがカレンダーに送られます。 !   「バイザンチンジェネラル」に類似する問題は、独自に開発したコアサーバ間の通信プロトコルで解決されます。 !   各コアは、原子時計を持ち他のコアと同期しています。 !   時計の精度は、どのユーザでもリアルタイムに監査出来ます。 18  
  19. 19. 有り難うございました。    お問い合わせ  jp-­‐info@guardbme.com 19  

×