アラートシステムの開発
アラートシステムの作成に取り組んでいる。アラートはネットワークを通じてブロードキャストされ、バージョン番号の範囲に適用される。アラートメッセージは私だけが持つ秘密鍵で署名される。
ノードはアラートに対して2つのことを行える:
- ステータスバーに警告メッセージを表示する。
- json-rpcインターフェースの金銭処理メソッドがエラーを返すようにする。
オーバーフローバグやユーザーが受信した支払いを信頼できないフォークのような場合、アラートによって旧バージョンがアップグレードするまでほぼ安全に保たれるはずだ。手動のユーザーは受信した支払いを確認する際にステータスバーの警告に気付くはずであり、json-rpcのセーフモードはアップグレードされるまで自動化されたウェブサイトがこれ以上取引を行うのを停止する。
アラート中にエラーを返すjson-rpcメソッドは: sendtoaddress getbalance getreceivedbyaddress getreceivedbylabel listreceivedbyaddress listreceivedbylabel
これについてヒステリックになるほど心配性なのであれば、ステータスバーに警告メッセージが表示されたらウェブサイトとフォーラムを確認するくらい心配性なはずだ。
オーバーフローバグのような別のバグが発生した場合、自動化されたウェブサイトが管理者が何が起きているか確認して対応を決定できるまで取引を停止することが重要だと思う。誤報だと判断してリスクを取りたい場合は、「-disablesafemode」スイッチを使える。
リモートで任意のアクションを実行することはできない。アラートシステムにもっと多くのことをさせるべきだと提案した他の投稿者に反応しているのかもしれないな?
アラートがある場合、以下のjson-rpcメソッドがエラーを返す: sendtoaddress getbalance getreceivedbyaddress getreceivedbylabel listreceivedbyaddress listreceivedbylabel
残りの14メソッドは通常通り機能する。
より安全なオプションがデフォルトで有効であるべきだと考えている。サーバーが取引を続け、受信しているお金がオーバーフローバグのお金のようなものかもしれないというアラートを無視したい場合は、スイッチを使えるが、お金を失っても他人を責めないでほしい。
アラートを有効にしたままの最悪のケースでは、アップグレードするか-disablesafeモードスイッチを追加するまでサイトが取引を停止する。
ノードが本来リスクにさらされるはずの時に一時的なダウンタイムで驚かされる方が、泥棒に在庫をすべて奪われて驚かされるよりましだ。
いつか、長期間新しいバグが見つからず、何も見つからないまま徹底的なセキュリティレビューが行われた時には、これを縮小できる。これが永遠の恒久的な方法だと主張しているわけではない。まだベータソフトウェアだ。
Quote from: jimbobway on August 25, 2010, 04:45:22 PMQuote from: BioMike on August 23, 2010, 05:15:43 AM@mizerydearia、引用ボタンの方が返信ボタンより見つけやすいと思います。
では、理論的にこれは<ある政府>がSatoshiを逮捕して鍵を引き渡すよう(またはコンピュータから取得して)要求し、ネットワーク全体をシャットダウンできる最初の制御システムですか?
それとも不可能ですか?<ある政府>はどこまでできるでしょうか?
Satoshiへのいくつかの修辞的な質問:
ウォーターボーディングに耐えられますか? 電気ショックに耐えられますか? すべての形態の拷問に? 最後に、あなたはもしかしてJack Bauerですか?本気で。 アラートシステムに関して、誰が気にするのか?鍵ができることは、サイト所有者が-disablesafemodeスイッチを追加するかアップグレードするまで、6つのjson-rpcコマンドを一時的に無効にすることだけだ。すべてのノードは稼働し続け生成を続け、ネットワークは維持される。私が不在でも、スクリプトキディでも2文字追加してアラートシステムを無効にする新バージョンを作る方法を理解できる。一時的な不便でしかない。
Quote from: BioMike on August 23, 2010, 05:15:43 AMでは、理論的にこれは<ある政府>がSatoshiを逮捕して鍵を引き渡すよう(またはコンピュータから取得して)要求し、ネットワーク全体をシャットダウンできる最初の制御システムですか? これが、反対している人々が何を言っているかわかっていないと思わせる理由だ。「ネットワーク全体をシャットダウン」することはできない。
Quote from: nelisky on August 25, 2010, 01:28:32 AMでは、管理者はbitcoindからどのような警告を受け取りますか?debug.logからgrepできるものはありますか?それともRPC呼び出しが特定のエラーを発生させますか?ユニットテストサービスのために、ローカルでこれを強制的に発生させる方法はありますか? getinfoには、ステータスバーに表示されるアラートメッセージやその他のエラーを表示する新しいフィールドがある。
RPCメソッドは、エラー説明「Safe mode: 」に続いてアラートで指定された追加テキストを含むjson-rpcエラーを返す。
あなたのために「-testsafemode」スイッチを追加した。SVN rev 145だ。
これらは非常に新しいもので、まだ変更される可能性がある。
Quote from: mizerydearia on August 25, 2010, 12:11:50 AMhttp://www.bitcoin.org/wiki/doku.php?id=man_pageを見つけましたが、-disablesafemodeへの参照がありません。追加すべきでしょう!また、-4wayなど他のものも追加すべきです。 多くのスイッチは意図的にドキュメント化されていない。機能がまだ開発中だったり、名前がまだ確定していなかったり、リリース向けでないテストコードだったりする場合だ。
-4wayは最終的に自動検出に置き換えられるべきだ。
Quote from: BioMike on August 25, 2010, 06:23:45 PMQuote from: satoshi on August 25, 2010, 04:56:15 PMQuote from: BioMike on August 23, 2010, 05:15:43 AMでは、理論的にこれは<ある政府>がSatoshiを逮捕して鍵を引き渡すよう(またはコンピュータから取得して)要求し、ネットワーク全体をシャットダウンできる最初の制御システムですか?
それとも不可能ですか?<ある政府>はどこまでできるでしょうか? これが、反対している人々が何を言っているかわかっていないと思わせる理由です。「ネットワーク全体をシャットダウン」することはできません。 この変更/アイデアに反対したことはありません。これが可能かどうか、どの程度までかを質問していただけです。 情報を得ることの何が悪いのですか? 申し訳ない、あなたの投稿は確かに声明ではなく質問だった。