React hooks collection vol.5 (sss-wasmで秘密分散)
December 29, 2020
sss-wasmを使用した秘密分散法
シャミア秘密分散法(ssss: Shamir’s Secret Sharing Scheme)というのがあり、 これを用いるとメッセージをいくつかに分散して暗号化することが可能です。
復号化には閾値を超えるだけの暗号文が必要となります。
これをJavaScriptで実装したものにsss-wasmというのがあり、今回はこれを 用いてReactコンポーネントを作成しました。
以下のメッセージのところに暗号化したいメッセージを入力し、 amountで分散させたい数、thresholdで閾値(復号化の際の必要数)を決め、 暗号化ボタンを押すと暗号文のところにamount行のBase64文字列が生成されます。
復号化の際は暗号文のところに必要な行数をコピペし復号化ボタンを押すこと でメッセージのところに復号化された文字列が表示されます。
まだあまり理解できていないですが、メッセージのところはできるだけユニークな 長い文字列を入れた方がよいのではないかと思います。
メッセージ(64バイト以内)amount
threshold
暗号文
ソースコード
ソースコードは以下のgistに置きました。
https://gist.github.com/ohac/9d302c84810edcbff188e78b37f69fd3