Bitmessageは非中央集権型の暗号化された無信用のP2P方式の通信プロトコルである。他者または複数のサブスクライバーへ暗号化されたメッセージを送信することを可能とする。無信用とは、信用のおけないノードと通信してしまってもセキュリティが破られないことを指し、サーバの信用を認証局の発行する証明書に依拠するSSLなどのシステムとは対照的である。BitmessageはユーザーのIDを秘匿するために公開鍵暗号で暗号化された各ユーザー宛のメッセージをP2Pネットワーク上で複製し、他のユーザーのメッセージとかき混ぜる。これにより盗聴を防ぎつつ、非中央集権方式でネットワークを運用することが可能になる。Bitmessageの通信プロトコルは認証を通して送信者の成りすましを防止し、傍受システムからメタデータを隠匿する[要出典]。
2013年6月に、NSAによる電子メール傍受が報じられると、急激に使用者が増加した[2]。
2014年6月現在、Bitemessageネットワークでは1日に数千通のメッセージが処理されている[要出典]。
アプリケーション
正式なクライアント
PyBitmessageはBitmessageの正式なメッセージクライアントとして設計された。
Bitpost client
OSX用のクライアントである。
E-mail services
数多くのサーバが電子メールによるBitmessageの送受信用のエンドポイントを提供している。Bitmessage.chはその中の一つである[3]。
IMAP/POPとSMTPブリッジ
多くのアプリケーションがPyBitmessageクライアントとIMAP/POPとSMTPプロトコルを用いる電子メールアプリケーションとの間にブリッジを提供している。BitMailはIMAP、POP、SMTPプロトコルのブリッジをするアプリケーションである[4]。
運用
Bitmessageは受信者だけがメッセージを復号できるよう公開鍵暗号を用いて全ての送受信されるメッセージを暗号化している。また、以下のような運用により匿名性を確保している。
- Bitmessageは匿名P2P(英語版)ネットワーク内の全てのメッセージを複製するため、あるユーザのメッセージはネットワーク中の全てのユーザーの暗号化されたメッセージ内に紛れこむ。これにより、元々の送信者と受信者を追跡することが困難になる。
- Bitmessageは暗号学的に生成したアドレス(たとえば、BM-BcbRqcFFSQUUmXFKsPJgVQPSiFA3Xash)[5] を使用する。BitmessageのアドレスはBitcoinのアドレスに似ており、鍵はBitcoinの鍵と互換である。
- Bitmessageは公開鍵暗号により本来の受信者だけが読めるような設計がされている。公開鍵暗号では暗号化と復号に異る鍵が必要であるため、もともとの送信者さえも復号できない。詳細には、256bitのECC(楕円曲線暗号)が採用されており、暗号関数にはOpenSSLを用いている。
- 送信されるメッセージにはメッセージの受信者の明確なアドレスが含まれていないため、全てのネットワークノードはネットワーク中に流れているメッセージを復号しようとする。もしもメッセージの復号に失敗したならば、それは自分宛てのものではなかったことがわかる。
- 元々の送信者は期待した受信者がメッセージを受け取ったかそうでないかを認証システムを通して知ることができるが、全てのネットワークノードは自分宛てでないものも含めて全てのメッセージを受けとるため、どのネットワークノードが受信者なのかを追跡することはできない。
- Bitmessageのノードは貯蔵したメッセージを2日間だけ保存し、これを超えると削除する。よって、メッセージはネットワークには残らなくなる。新しくネットワークに加わるノードは直近2日分のメッセージしかダウンロードおよびブロードキャストできない。受信されたことが確認されていないメッセージは、2日ごとに送信者が再送する。
- Bitmessageはプルーフ・オブ・ワーク・システムを用いてDoS攻撃を防いでいる。
チャンネル(Chan)
Bitmessageバージョン0.3.5から、チャンネル(chan)と呼ばれる新しい機能が追加された。これは非中央集権型の匿名メーリングリストである。従来の電子メールを用いたメーリングリストとは異なる。
- chanは非中央集権型という特性から、どのサーバーやサーバー群がダウンしてもシャットダウンされることはない。
- 特定のchanパスフレーズを知っているユーザーだけがそのchanに投稿したり読むことができるため、chanは実質上検閲できない。
- chan内でユーザーのメッセージは、送信側のアドレスも受信側のアドレスも含まれないため非常に匿名性が高い。
多くのchanが広く知られており、オンラインプライバシー問題(英語版)から政治、果てはチェスまでの多岐にわたる目的で使用されている[6]。
開発
Bitmessageのコンセプトは、非中央集権型のデジタル通貨、Bitcoinの設計をもとにソフトウェア開発者ジョナサン・ウォーレン(Jonathan Warren)により着想された。Bitmessageを実装したソフトウェアは2012年11月、MITライセンスの下にリリースされた[2]。
ソースコードはPythonで書かれており、OpenSSLの暗号関数とQtクロスプラットフォームアプリケーションフレームワークを使用している。Microsoft Windows、Mac OS、Linux上で使用可能である。
社会的反響
Bitmessageは、非中央集権型という特性と暗号の解読が困難であるという理由から、NSAによる「令状なしの盗聴」を防ぐことができると評されている。このため、NSAによる電子メールの盗聴が報じられた後の2013年6月、Bitmessageを実装したプログラムのダウンロード数は5倍に達した[2]。
Bitmessageは電子メールにとって代わるともPopular Science[7]とCNETで言及されている[8]。
安全性
2015年10月現在、BitMessageの安全性は第三者機関から審査されていない[9]。
関連項目
出典
外部リンク
- 出典