Weaknesses

提供: tezos-wiki
移動先: 案内検索

問題になるかもしれません[編集]

盗難に脆弱な財布[編集]

財布はデフォルトでは暗号化されずに保存されているため、盗難の貴重なゲートになります。Bitcoinクライアントの最近のリリースでは、ユーザーがオプショインする必要があるにもかわわらず、ウォレットデータを保護するための暗号化がサポートされるようになりました。

古いパスワードで脆弱な新しいウォレット(バックアプス)[編集]

古いパスワードを使用したウォレットの古いコピーは、しばしば既存のバックアップ機能(特にアップルのタイムマシン)を使いやすく簡単に取り出しできます。古いウォールを古いパスワードで流し、現在のウォレットを現在のパスワードはほとんどの技術者以外のユーザーには、「ウォレット上のパスワードを変更する」ことは、パスワードの侵害を受け入れることを意味するはずです。

最初の解決策は、ウォレットのパスワードを変更して、新しいアドレスをつけて新しいウォレットを作成し、既存の合計を送信するユーザーに要求する(コードまたは表現したポリシのいれかで)ことです。元のウォレットと元のパッケージのバックアップされたコードは、彼らが侵害された場合は空になります。欠点としては、パスワードを変更するプロシージャには時間がかかります、取手数量が可能な可能性があります。 、新しいワレットはバックアップされません。逆に、テクニカルではないユーザは、財布が閉鎖されたと信じているセキュリティ侵害から流出した、ウォレットを破棄するためにウォレットの既存のバックアップを見つける必要はありません。

硬貨の歴史をトレースする[編集]

硬貨の歴史をたどることで、身元を住所に結びつけることができます(Anonymityの記事では、この問題について詳細に詳述しています)。

シビルの攻撃[編集]

攻撃者が制御をネットワークを埋め込んだものとする、攻撃者のノードにのみ接続する可能性が高くなります。Bitcoinは何のためにも数を捨てて使用しませんが、正直なネットワークからノードを完全に隔離することは、他の攻撃の実行に役立ちます。

この状態は、(少しでもまた)以下の方法で悪用される可能性があります。

  • 攻撃者は誰からもブロックまたはトランザクションを中継することを拒否することができ、効果的にネットワークから切り離すことができます
  • 攻撃者は自分で作成したブロックだけを中継し、別のネットワークに効果的にアクセスさせ、二重支出攻撃
  • 確認が0のトランザクションに頼る場合、攻撃者は特定のトランザクションをフィルタリングして二重支出攻撃を実行することができます
  • 攻撃者のノードのいくつかに接続しています、攻撃者があなたのISPであなたの送信を見ているなら、Bitcoinの送信(Tor、JAPなど)の遅滞延期暗号化/匿名化を妨害攻撃で比較的に簡単に無効にすることができます

Bitcoinは、/ 16(xy0.0)ごとに1つのIPアドレスへの発信接続を行うだけで、これでの攻撃をより厳しくしています。着信接続は無制限で規制されていませんが、通常は着信接続を受入することができない匿名の場合にはみ問題になります。

不審に低いネットワークハッシュを探すと、2番目のハッシュレットを防がれることができます。

パッケットスニフィング[編集]

インターネットトラフィックのすべてを見ることができる人は、あなたが受取っていない(あなたがそれを提案した)取り引きをするときは、簡単に見えることができます。Bitcoin-QTにはTor統合機能があります、この攻撃のベクトルを使用するとこの攻撃のベクトルを閉じます。

サービス拒否(DoS)攻撃[編集]

多くのデータをノードに送信すると、通常のBitcoinトランザクションを処理できないほど忙しくなる可能性があります。Bitcoinにはサービス拒否防止機能が組まれていますが、より洗練されたサービス拒否攻撃に対してもまだ脆弱です。

これは、バージョン0.7.0のDoS攻撃を阻止するための現在のBitcoin Satoshiクライアントの保護です。

#孤立したトランザクション/ブロックを転送しない #二重放出脱着を転送しません #同じブロック、トランザクション、またはアラートを同じピアに2回転送しません。 #「ペニー・フラッディング」を緩和するためのフリー・トランザクションの継承的なレーベル制限 #接続された各ピアのDoScoを保持し、ルールに準拠しないメッセージを送信するから切断します。 #時間切れに間違っているIPアドレスを禁止します(デフルトは24時間) #保存された孤立したトランザクションの数を制限します(デフォルトでは10000) #署名されたキャッシュを使用して、保存された孤立トランザクションの再検証を継続的にトリガーする防御を行う(https://bitcointalk.org/index.php?topic=136422.0攻撃から保護します) #署名を受けた署名の数を制限します(デフルトでは50000の署名) #シンクネチャ検証が行なわれる前に、CPU使用率に対するDoS攻撃を回避するために、すべての可能性のあるエーラーをトランザクションで捕捉しようとします。 #重複した/有効期限の切れた/無効な署名/何かのアラートをたくさん送るピアを罰するので、最終的に禁止されます。 #孤立した/署名のキャッシュでは、アイテムを削除するとランダムなエントリが削除されます。 #データ構造は、反復回数が指数に関連した複雑なものも含めて攻撃者によって制御されるループを避けるために特別に選択されます。 大量の孤立したトランザクションを無視して、孤立した大量のメモ枯渇攻撃を避けます。

  1. RPC:SSLハンドシェイク中にDoSを防御するためにSSLを使用しない場合には、HTTP 403を応答を送信します。
  2. RPCの場合:認証に失敗して軽い強制パスワードを使用できない場合は、時間をおいてください。
  3. GUI:QRコードダイアログに対応するDoSを防御するにはURIの長さを制限する

#サイズが500バイトを超える非自発性のシングネックレスを考慮します。

  1. PUSHその他の操作を含む非機密保護の署名スクリプトを検討します。

#非公開ポリシートランザクションを転送するも処理もしません

DoSを防止するために構築されたプロコールルールです。

#ブロッコサイズを1メガバイトに制限します。 #トランザクション入力が要求する可能性のある署名チェッカーの最大数を制限します #各スクリプトのサイズを制限します(最大10000バイト) #スクリーニングを評価する際に各値のサイズを制限します(最大520バイト) #スクリュー内部の高価な操作の数を制限します(最大201操作)。プッシュを除いてすべて高値とみなされます。また、マルチチャンネルネーション(OP_CHECKMULTISIG)におけるシンクネチチャッチの各主要な引換数は、操作と見られるされます。

  1. OP_CHECKMULTISIGが使用できるキー数値を制限する(最大20個のキー)

#同時に行き着くことができるスタック要素の数を制限します(標準スタックとaltスタックで最大1000要素まで) #ブロックが要求するシグネチャチェッキの数を制限します(最大20000のチェック)

バージョン0.8.0で追加されたSatoshiクライアントの保護機能は次のとおりです。

#100キロバイトを上回るトランザクションは非セキュアモードとみなされます(https://bitcointalk.org/index.php?topic=140078.0攻撃のバリエーションから保護します)。

  1. UXTO(未使用トランザクション出力設定)のがメモリに格納され、残りのデータはディスクに格納されます。

#トランザクションを処理する際に、トランザクション投入をディスクからモモリにフェッチする前に、クライアントはすべての入力が消費されていないことを確認します(Continuous Hard Disk Seek / Readアクティビティから保護します.https: //bitcointalk.org/index.php?topic= 144122.0)DoS攻撃)

Satoshiクライアントはピアバンド幅やCPU使用率を直接制限しません。

ターゲットノードに対してクロックドリフトを強制する[編集]

この攻撃の詳細については、[1]を参照してください。ノートの現在の時刻の計算方法を変更することで修正できます。

ブロッキングチェインの本当のコンテンツ[編集]

いくつかの国では、特定の種類のデータを所有/配布することは違法です。Bitcoinトランザクションには任意のデータを含むことができます、Bitcoinノードは通常、すべての未使用トランザクションのコピーを保持する必要ありがとう、法的な問題が発生する可能性があります。ロカールノーポリフォーは一般的に任意のデータ(データの埋め込みをトリンザーションは非フォント優先です)を許可しないが、ステガノグラフィックの埋め込みは引き続き使用できますが、これによってストレージが少量に制限されます。[2] UTXOセット内のデーターベースをされたものに制限することができます(ただ、現在は展開が重要視されていません)。

セクレティの脆弱性とバグ[編集]

可能性はありますが、標準クライアントで新たに発見されたバグやセキュリティの脆弱性により、ブロックチェインが分割された、すべてのノードが短期にアップグレードされる必要はありません。たのえば、特定の脆弱性をを悪用するように調整された単一の不正なメッセージが、ノードからノードに伝播すると、ネットワーク全体が数時間で停止する可能性があります。逆に、Bitcoinの疑似匿名性が分析されていないため、ユーザーの匿名性を損なうバグが見つかってしまった。 バージョン0.7.0以降、Bitcoinクライアントは成熟したプロジェクトと見えることができます。ソースコードのセキュリティ上重要なセクションは、更新頻度が少ない、多くのコンピュータセキュリティ専門家によってレビューされています。またBitcoin Satoshiのクライエントは3年以上にわたオンラインでのテストに合格しており、単一の脆弱性が「野生のもの」に悪用されることはありません。 検出され修正された脆弱性の詳細なリストについては、Common Vulnerabilities and Exposuresを参照してください。

エネルギー消費[編集]

鉱業のエネルギー消費量は、バッチコイン値(為替レート)と高い相関関係を持ちます。マイニングの変動コストは電力価格によって支配されているため、鉱業の世界的な電気料金があります[マイニング]]報酬+ 取引手数料

したが、1つのバットコインの値が高いほど、採掘報酬と取手数量の値が高いほど、長期的にはビートコインネットワークのエネルギーは消費量が高くなります。

  • より効率的な採掘装置は、ビット列ネットワークのエネルギーを使用しないでください。それはネットワークです[難しさ]を上げるだけです
  • ビート・コインネットワークのマイニング・エネルギー使用を直線的に増やさせるより安価なエネルギー*同じ結論がすべての労働実績に基づいて通貨に適用されます。==おそら問題はない== ===暗号を破る=== SHA-256とECDSAは現在非常に強く考えますられていますが、遠い将来に壊れているかもしれません。その場合、Bitcoinはより強力なアルゴリズムに移行することができます。msg1585#msg1585詳細情報 ===スケーラビリティ=== Bitcoinは、VISAが今日世界中で見えるトラックレベルを超に簡単に拡張できます。詳細は、スケーラビリティページの説明を参照してください===セグメンテーション===セグメンテーション化されたネットワークの2つの側面の間に「細流」の接続がありました、完全に機能するはずです。ブロックチェインが結合されると、より短いチェンの非世代トランザクションはすべてトランドラセクメンテーションが~120ブログよりも長く続く続行しない限り、成熟したトランザクションは失われません。その後、世代が成熟し始めました、その世代に基づくトランザクションは、より長いチェインと再結合すると無効になります。[3] ===すべてのユーザーを攻撃する===ほとんどどのユーザーのIPアドレスは完全に公開されています。Torを使ってこれを隠すことはできますが、誰もそうだしネットワークも動作していない。Bitcoinは、「いくつかの国は依然として無料であることを要求しています===トランザクションを破棄する===ブロックを生成するノードは、そのブログにトランザクションを含むこれを選ぶことができます。この場合、トランザクションは「アクティ」のままに、後のブログに含めることができます。これを妨げるのは2つのことです。*ノードは固定サイズのヘッダーのみをハッシュするので、トランザクションを削除する速度の利点はありません。* Satoshiは、[4]問題が発生した場合、これですそういうことを止めるためのコードを記述します===攻撃者は多くのコンピューティングパワーを持っています===ネットワークのコンピューティングパワーの50%以上を制御する攻撃者は、自分が制御している間は、トランザクションの順序を除いて変更することができます。これにより、*彼がコンロールをしている間に送信する逆転することを逆転させる。これが、既ブログチェストで既に見られた二重支出トランザクションの可能性を秘めています。*一部または全てのトランザクションが確認を取得しないようにする*一部まったくの鉱夫が有効なブロックを採掘するのを防御攻撃は「できない」:*協力しないで他の人の取り引きを逆転させる*トランザクションがまったく送信されないようにしています(0 /未確認として表示されます)*ブログごとに生成されるコインの数を変更する*薄い空からコインを作る*決まっていないタイプのコインを送ることができますBitcoinの視点にのみ適用され、完全なノートに見えることに注意してください。軽量ノートの中には、鉱夫を絶対に信用するものもあります。軽量ノードで見られるBitcoinの観点からは、鉱夫はBTCをこれは、軽量ノードが完全ノードより安全性が低い理由の1つです。50%未満は、同種の攻撃が可能ですが、成功率は100%未満です。たにえば、ネットワークコンピューティングパワーの40%は持っていない人は、6%の確認済みトランザクションを50%の成功率で克服することができます<ref> https://bitcoil.co.il/Doublespend.pdf < ref>。歴史的なブロックを変えるのははるかに難しい、さもりに後退するほどの指数関係に難しくなります。上のように、履歴ブロックを変更するだけで、トランザクションの順序を除外した変更ありがとうことができます。鉱夫が過去のブログをあまりにも遠くに書き戻すと、プルーニングが有効になっている完全なことは継ぎでないくらい、シャットダウンします。ネットワーク況はおそらく手作りで絡み合わなくてはならないだろう(例えば、長持ちソフトがこのチェンを拒絶するようなようにソフトウェアをアップデートすることによって)。この攻撃はネットワーク上のすべての強力なパワーを許さないあたかも合理的な鉱夫はそれを試行しません。利益追求の鉱夫は、魔力だけだと多くの利益を得ることでシステムを破壊しようとする人さえも、他の攻撃がより魅力的にはしません。おおそら、この攻撃が採用される最も可能性の高いシナリオは、大半のハッシング・パワー(直接または境界内の民間鉱夫のルールを実施することによって)を獲得することによって、政府ビットコインを制御しようとすることですそれから、この政府は、上に列挙した取り引き - 検閲権を使って、次のようなことを行為があります:*「盗まれた」コインを消費する取引を防止する、効果的にコインを破壊する硬貨がはっきりと盗まれた場合、この行動はBitcoinコミュニティーに受け入れられる危険性がありますが、これは非常に有害な先例となります。このようにコインがブラックリストに載る可能性がある場合、それは他の「疑わしい」コインのブラックリストに滑りやすい斜面になります。*未知の人々からのすべてを取ることを禁止することで、誰も政府との取り引きに登録する必要があります。鉱夫によって長期的な攻撃に適切な対応は、作業証明機能を変更することです[ハードフック]。これがによって、既存のすべての鉱夫が発しました、まったく新しい鉱夫がそれを置き換えられることができます。こちらもご覧ください:Majority_attack ===スパあなたは=== テンプレート:メインあなたは自分に繰り返し返すトランザクションを送るのは簡単です。これのトランザクションはブロックサイズを最大サイズ(1MB)まで満たす場合、他のトランザクションは次のブロックでは延伸されます。これは、1ブロックあ50KBのフリー・トランザクションが使い尽くされた後に必要となる料金金によって高額になります。攻撃者は最終的に無料の取引を排除します、Bitcoinの手数料は、KB当り0.01BTCを超える手数料を支払うには、取手手数料が必要となるため、常に下がります。攻撃者は最終的にお金を使い果たしてしまいます。たけえ攻撃者が金を浪費したとしても、コインが最後に費やされてから取り寄せが優先されるため、同じコインを繰り返し返す使用する攻撃は効果が少々なります。=== [二重支出#Finney_attack |フィニー攻撃] === Hal Finney氏の名前は、0確認トランザクションを受け入れるこれを含む二重支出の攻撃のこの変形を最初に記述した人物です。大量の大量を受け入れることは問題になります。(通常の二重の使用を検討するのに数秒待ってから)値===ライバル/悪意のあるクライアントコード===すべての競合クライアントはBitcoinのルールに従っていますが、現在のBitcoinクライアントはすべてですそれを無視します。あなたが実際にあなたのクライアントを使用するように人を獲得したばりません。同ルールを守っているが、作成者だけが知っている例外(例外的にはソーズを非開封している)を抱えるより優しいクライアントは、おそらく普及を広げる可能性があります。その時点で、その作者は彼の例外を使うことができます、ほとんどと気がなくなってしまった==間違いなく問題= =====破損=== BitcoinはBTC精度の8小数を構成する2.1兆の原点を持っているため、ネットワーク全体が潜在的にBitcoinsの全量よりもずっと少々動作する可能性があります。デフレッションが10以上のBTCの取引が聞こえない場合、顧客は別のユニットに切替えできるだけで、例えば0.01 BTCではなく10 mBTCを表示することができます。「世界全体」がBTCの使用を開始する場合、生のユニットの最大数は不十分でなくなって、その場合は精度を上げるのが難しくありません。トランザクションフォーマットとバージョン番号は、1年または2年後に定のブロック番号で変更される予定であり、誰もがそれまで更新する必要があります===たくさんのアドレスを生成===アドレスを生成してもネットワークには全く触れません。CPUリソースとディスク容量を浪費するだけです。また、衝突はほんとにありません。キーの長さは256ビットで、160ビットのアドレスでハッシュされます(2 ^ 160乗)それを世界の人口で割ると、1人当り約215,000,000,000,000,000,000,000,000,000,000,000,000,000の住所があります(2.15 x 10 ^ 38)[5] ===誰もが同じ割合で計算する===誰もが同じブログで始まり、1でノンストを開始して増分する、最速の速いが勝つである。ランダム公開鍵が含まれています。これの256ビットの「Merkle tree」ハッシュは、ブロックヘッダーの一部です。だから誰かがわずらに異なるブロックから始め、誰もが本当に勝利のランダムなチャンスを持っています(CPUパワーによって修正されます)===普通のものよりも難易度の低い「有効な」ブロックを生成する===変更されていないBitcoinコードを使用すると、攻撃者はメインネットワークから自分自身を分割し、実際のネットワークよりも難易度の低い長いブロックチェインを生成することができます。これはブログが、自分のネットワークにとって完全に有効です。2つのネットワークを組み合せることは不可能です(そして、「偽の」チェインは、プロシージャで破壊されるでしょう。)「ブロックチェン長さ」は、チェイン内のロック数だけではなく、すべてのブロックの結合難易度から計算されます。ほとんどの計算を表するものが勝つであります。==関連項目== * 二重支出 * [http:// bitcoin .stackexchange.com / questions / 10025 / well-written-well-written-criticism-about-bitcoinスタック交換] カテゴリ:技術