質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Security+

Security+は、IT業界団体であるCompTIA認定の資格の一つです。ネットワークセキュリティやコンプライアンスと運用セキュリティといったセキュリティ分野における知識・技術の証明になり、セキュリティインシデントに対応するための知識も評価されます。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Bitcoin

Bitcoinは、インターネット上で流通している電子マネーです。P2Pネットワークを通じた安価な決済コストが実現できる一方、取引時の危険性や闇市場・資金洗浄など不正取引の温床といった法的問題も抱えています。

Q&A

1回答

1587閲覧

「マルチシグ」でのセキュリティ向上方法について

awakia

総合スコア6

Security+

Security+は、IT業界団体であるCompTIA認定の資格の一つです。ネットワークセキュリティやコンプライアンスと運用セキュリティといったセキュリティ分野における知識・技術の証明になり、セキュリティインシデントに対応するための知識も評価されます。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Bitcoin

Bitcoinは、インターネット上で流通している電子マネーです。P2Pネットワークを通じた安価な決済コストが実現できる一方、取引時の危険性や闇市場・資金洗浄など不正取引の温床といった法的問題も抱えています。

0グッド

3クリップ

投稿2018/01/31 04:01

「マルチシグ」を導入することによりbitcoinの送金など重要な処理のセキュリティを高める方法を知りたいです。

ここで、マルチシグ導入の時にユーザーにも暗号鍵をもたせ、サーバー側の暗号鍵とペアにすることで起動すると言うのは、ユーザーの初期フローに影響があるのと、アプリなどを削除してなくしてしまった時の処理が大変なので行わないこととし、あくまでサーバー内のみでマルチシグを完結させることを前提とします。

簡単のために、マルチシグは2-of-3の構成にして、1つの暗号鍵は完全に保管用、残りの2つはネットワークに繋がったところに置く前提で話を進められるとうれしいです。(この前提ではうまくいかない場合はそこも変えてください)

この暗号鍵の保存場所をたとえ2箇所のサーバー(A,Bとする)にわけたとしても、bitcoinの送金の命令出すサーバー(Cとする)はこの2つの暗号鍵を使わないといけないので、Cに侵入されれば、A,B両方の暗号鍵が盗まれてしまうためあまりセキュリティ的に高くなっていると思えません。
実際、ハッカーからしても送金の命令を出しているサーバーCが一番外部に触れるところにあるため攻撃しやすく、わざわざAやBだけ攻撃してくるケースも考えにくいと思います。

https://bitflyer.com/Security によると、大手仮想通貨取引所のbitflyerはサーバー内でマルチシグに対応しているようなのでできないことは無いと思うのですが、どうもセキュリティー的に向上する構成にする方法がわかりません。

どなたか詳しい方、ご回答よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

2 of 3のマルチシグを使って安全性を高めたい場合はA鍵をインターネット上のAサーバーに置き、B鍵をプライベートネットワークのBサーバーに置き、C鍵を金庫に入れます。
Aサーバーは未署名トランザクションを作成しA鍵を使って署名します。
A鍵を使って署名されたトランザクションをメールなど使ってBサーバーに送信します。(どこのサーバーにトランザクションを送信しているのかわからないようにします。トランザクション送信側のサーバーで鍵のある場所が特定されなければどんな方法でもOK)
Bサーバーでトランザクションを受け取ったらB鍵で署名します。
A鍵とB鍵のトランザクションで署名されたトランザクションをネットワークにブロードキャストします。

質問者はマルチシグと鍵をバラバラにするシャミアの秘密分散法と勘違いしているかと思います。
シャミアの秘密分散法であれば懸念のとおり、鍵を一箇所に集める必要があります
マルチシグはトランザクションを鍵を持っているサーバーに対してたらい回しにします

投稿2018/02/09 11:58

編集2018/02/09 12:01
you21979

総合スコア71

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問