LoginSignup
1
0

More than 1 year has passed since last update.

TSS :閾値署名の紹介

Last updated at Posted at 2022-12-15

ブロックチェーンを利用する際にプライベートキーを使いますが、プライベートキーのセキュアな管理方法については、ずっと研究されています。その中の1つは、Threshold Signature Scheme(TSS)という方法があります。

TSS とは

TSS とは、Threshold Signature Scheme の略語であり、マルチパーティ計算(multi-party computation、略語 MPC)技術の1種です。
イメージ的には

  • 1つのプライベートキーを複数個の断片に分ける
  • 複数個の断片から、閾値個の断片を集めれば、元のプライベートキーを復元できる

例えば総個数 3 、閾値が 2 の場合は、プライベートキーを3つの断片に分けて、その中任意の2つの断片を集めれば、元のプライベートキーを復元できます。

なぜできる?

数学の話になるので、数学が下手な私はあんまり説明できませんが、ベースは、連立方程式です。連立方程式において未知数を求めるためには、未知数個数分の関係式があれば解けます。
非常に分かりやすい記事があったので、そちらを参照してください。

参照元:https://atmarkit.itmedia.co.jp/fsecurity/special/53tsss/tsss02.html

マルチサインとの違い

似ているものとしてマルチサインもありますが、比較してみました

  TSS マルチサイン
プライベートキーの数 1つ 複数
ブロックチェーン側の対応 なし 必要
断片が他所で流用できる できない できる

最後の他所での流用というのは、マルチサインの場合は各自自分が持っているのがフルのプライベートキーである為、普通にアドレスとして使えて署名したりなどもちろんできます。一方、TSS の断片は、フルのプライベートキーではない為、1つの断片だけで署名したりはできません。
これも不便と思う側面がありますが、逆にセキュリティ的にはよい側面ではあります。

要するに、TSS の断片は1つ漏れても、それだけでは何もできないので、被害は発生しません。マルチサインの場合、フルなプライベートキーであるため、漏れたら、そのアカウントが持っている資産がなくなる恐れがあります。

まとめ

あんまり分かっていなかった TSS 、結構セキュアで、これからいろいろ活用できそうなイメージですね。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0