この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 972|答える: 2

[出典] ブロックチェーンデジタルウォレット(HD)BIP32、BIP44、BIP39プロトコル

[リンクをコピー]
2025年4月14日 10:35:59に投稿 | | | |
デジタルウォレット

デジタルウォレットとは、ユーザーがデジタルでお金を保管、追跡、送金、受け取ることができるシステムです。 通貨はビットコインやダグなどのデジタル資産から、米ドルやユーロのような法定通貨であったりします。

このウォレットは従来言われる物理的なウォレットではなく、ソフトウェアアプリケーションです。 ブロックチェーンネットワークに接続されており、ユーザーは自分の通貨を追跡し、取引を行い、ブロックチェーン操作を行うことができます。

典型的なデジタルウォレットには2種類の「鍵」が含まれています。公開鍵は、他者が通貨を送金できるウォレットのアドレスです。 また、ウォレット保有者のみが知る取引情報を復号するためのパスワードである秘密鍵もあります。 厳密に言えば、デジタル通貨を「保持する」と言うとき、実際にはそれを制御する秘密鍵を持っています。

秘密鍵のマスターは、内部のデジタル通貨をマスターすることと同等であるため、特に秘密鍵のセキュリティを守ることが重要です。 秘密鍵が紛失または盗まれると、該当するデジタル通貨は永久に使用不能になります。 これは、銀行によって復元または置き換えが可能な従来の金融口座とは大きく異なります。

HDウォレット

HDウォレット、正式名称は階層的決定性ウォレット(階層的決定性ウォレットは多数の公開鍵と秘密鍵ペアを生成するために使われるウォレットです。

HDウォレットは、最初に生成された単一のシードに基づいて動作します。 1つ以上のマスター秘密鍵はシードを通じて生成でき、各マスター秘密鍵は複数の一意な子秘密鍵を生成できます。 これらのサブ秘密鍵はさらに孫の秘密鍵を生成するために使われ、階層的な鍵構造を形成します。 これらすべては元の種子によって再現可能です。 したがって、このシードが保護されている限り、ウォレット内の生成されたすべてのアドレスと秘密鍵は回復可能です。



ウォレットのプライバシーを高めるために、HD Walletはすべてのアドレスが同じシードからエクスポートされるため、同じアドレスを複数回使うことによるプライバシー問題を回避できるため、各取引ごとに新しいアドレスを生成できます。

その中で、HDウォレットは標準化され、ビットコインBIP32、BIP44、BIP39などの提案で適用されています。 BIP39は、固定語彙から選ばれた12語、18語、または24語のシードフレーズを用いて表現できるシードを生成する方法を規定しています。 これにより、複雑な秘密鍵を使わずにウォレットのバックアップ時にこれらのシードフレーズだけを記憶またはバックアップでき、使用の難易度が大幅に軽減されます。

HDウォレットは、単一のシード(単なるデータの文字列)から無限の秘密鍵と対応するウォレットアドレスを生成する新しい方法を導入した、より高度なデジタルウォレットのタイプです。

HD Walletの最大の利点は、ウォレットのバックアップが非常に簡単になることです。 ユーザーはこのシード(通常はシードフレーズと呼ばれる特定の単語の文字列)を覚えるか保存するだけで、すべてのウォレットアドレスと秘密鍵を回復できます。 つまり、ユーザーのデバイスが失われても、シードが失われていなければ、シードをインポートすることで資産を回復できるということです。

さらに、HDウォレットはよりプライバシーが確保されています。 取引ごとに新しいアドレスが生成されるため、ウォレットアドレスだけですべての取引や資産の状態をチェーン上で追跡するのは困難です。

したがって、HDウォレットはデジタルウォレットの一種と見なせますが、デジタル通貨の管理・管理のためのツールでありながら、いくつかの追加機能が加えられています。  

BIP32、BIP44、BIP39

BIPはビットコイン Improvement Proposal(改善提案)の略称で、ビットコイン開発者がビットコインのプロトコル、クライアント、環境に新機能や改善を提案するために作成する標準です。 各BIPにはBIP-32、BIP-44など、ビットコインのウォレット設計標準となる番号が付けられています。

BIPには主に3つのタイプがあります:

標準化されたBIP:このタイプのBIPは、ネットワーク、ブロックチェーン、またはプロトコルに新機能を追加する役割を担います。
情報提供BIP:これらのBIPはビットコインプロトコルの変更を伴わず、主に質問やガイドラインの設計、ビットコインコミュニティへの一般的な情報提供を目的としています。
プロセスBIP:このBIPはプロセスや環境の変更を記述しますが、BIPの技術仕様には追加されません。
すべてのBIPは、コミュニティによる十分な議論と修正を経て、十分な支持が得られればビットコインプロトコル標準に取り込まれる提案から始まります。

標準住所:ハイパーリンクのログインが見えます。

BIP32

BIP32(ビットコイン改善提案32の正式名称)は、ビットコイン改善提案の標準です。

かつてビットコインウォレットは、新しい秘密鍵が生成されるたびに新しい公開鍵と対応するビットコインアドレスを生成し、それがウォレットファイルに保存される形で実装されていました。 この方法の問題は、新しい秘密鍵とビットコインアドレスが生成されるたびに、新しいウォレットバックアップを生成しなければならないことです。 BIP32の誕生はこの問題を解決し、1つのシードだけで秘密鍵と公開鍵を生成し、木構造で無限の秘密鍵と公開鍵を生成する新しい方法を生み出しました。

BIP32の主な特徴は以下の通りです:

シングル秘密鍵は無制限鍵ペアの生成をサポートします。シードから公開鍵ペアと秘密鍵ペアを生成し、シードのみが既知のキーツリー全体を作成します。 これによりバックアップの問題が解決し、このシードをバックアップするだけでウォレット全体を復元できます。
階層的ウォレット管理:BIP32は、目的、事業、アカウントなどに応じてユーザーがウォレットを階層的に管理できるウォレット構造を規定しています。
公開鍵導出:BIP32はノードの公開鍵とチェーンコードが既知のサブ公開鍵を導出することを可能にします。 この機能により、秘密鍵を知らなくても公開鍵の導出が可能となり、セキュリティが向上します。
プライバシー強化:従来のウォレットはランダム生成の一意アドレスを使用しますが、BIP32ウォレットは同じシードに基づいて鍵の一括を生成し、取引ごとに新しいアドレスを使用できるため、プライバシーが向上します。
要するに、BIP32は主に従来のウォレットバックアップ方式を改善し、シンプルで効率的かつよりプライベートなものにしています。

BIP39

BIP39はBIP32シードを生成するために使用された仕様の名称です。

BIP39は、ビットコイン改善提案39の正式名称であり、ビットコインの改良提案であるシードフレーズ生成方法の中国語名です。

BIP39は一般的にBIP32シードの生成に使われます。 これは、ランダムな数を記憶に残る単語のセットに変換する方法を規定しており、これは私たちがよく見る12〜24語のバックアップシードフレーズのセットです。 ユーザーがウォレットを生成したり、ウォレットアプリを初めて開くと、そのような単語のセットが作成されます。 BIP39はほとんどの現代の暗号通貨ウォレットで広く使われています。

以下のように記憶術のフレーズを生成します:



シードは下図のように記憶術のフレーズから派生しています:



BIP39シードの主な用途:BIP39シードは、記憶法と任意のパスフレーズから生成される固定長(512ビット、64バイト)のバイナリデータです。 主な役割はウォレットのコアとなる秘密データとして機能し、その後のすべての秘密鍵、公開鍵、アドレスを導き出すために利用することです。

BIP39のより詳細な紹介はこちらです:

生成方法:シードフレーズは、固定された単語リストから得られた英語の単語の集合で構成されます(合計2,048人) まず、ユーザーのランダムな行動(例:マウスの動き、キーボードの入力速度など)に基づいて乱数が生成され、この乱数は単語のセットに変換されます。 この過程は可逆的であり、単語の集合を暗記していれば元の乱数を復元できます。
キー回復:BIP39のシードフレーズ生成方法では、ユーザーは12〜24語の簡単な単語を覚えるだけでウォレット全体を回復できます。 これによりウォレットの秘密鍵のバックアップと回復が大幅に簡素化され、ウォレットの利用可能性が向上します。
パスワード機能:BIP39で規定されているパスワード機能は秘密鍵の回復を難しくし、シードフレーズを通じて他の人が秘密鍵を回復するのを難しくします。 BIP39パスワードが設定されると、シードフレーズ+パスワードを使ってウォレットを復元する必要があります。
クロスウォレット互換性:BIP39はオープンスタンダードであるため、ウォレットベンダー間の互換性が高いため、あるウォレットから別のウォレットへシードフレーズをインポートできるため、ユーザーにとって非常に便利です。
BIP39はビットコインウォレットにおいて非常に重要な標準であり、シードフレーズを通じて複雑な秘密鍵管理の問題を簡素化し、ユーザーがビットコインを使いやすくします。

用語集参考文献:ハイパーリンクのログインが見えます。
BIP-39の.NET実装コードについて:ハイパーリンクのログインが見えます。

BIP44

BIP44、正式名称はビットコイン改善提案44、中国語名はマルチ通貨・マルチアカウント仕様で、ビットコイン向けの提案です。

BIP39およびBIP32パスで生成されたシードに基づき、BIP44は決定性ウォレットの論理階層を定義し、さらに5層の木構造パスも定義しています。 BIP44は複数の通貨と複数のアカウントを作成し管理し、それぞれが独自の受信および変更アドレスを持つことを可能にします。

この仕様に従い、HD Walletはシードに基づく多様なウォレットシステムを生成できます。つまり、秘密鍵シードを使って異なる通貨のアカウントやアドレスを生成・管理できます。

BIP44で定義された経路構造は以下の通りです:m / 目的 / coin_type / 会計 / 変化 / address_index:

目的:BIP44では目的は常に44フィートに設定されています。
コインタイプ:このレイヤーは異なるデジタル通貨を区別するために使われます。例えば、ビットコインは0、テストネットビットコインは1、イーサリアムは60などです。 コインの全リストはこちらです。
口座:資金管理を良くするために別々の口座アドレスを持つこと。 このレイヤーにより、ユーザーは同じソフトウェア上で複数の別々のアカウントを作成・管理できるため、台帳が混在するのではなく透明な状態にできます。
変更:変更アドレスと受信アドレスを区別するために使われます。 通常、0は外部アドレス、1は変更アドレスを表します
アドレスインデックス:生成されたn番目のアドレスを特定します。
BIP44を使う利点は、シードとBIP44のパス定義を念頭に置いて、どのBIP44準拠ウォレットでも管理すべきコインやアドレスを生成・復元できることです。

C#はHDウォレットを生成します

まず、プロジェクトは以下のコードでNethereum.HdWalletライブラリを導入します。


以下に示すように:



オンラインのニーモニックコード変換:ハイパーリンクのログインが見えます。
源:ハイパーリンクのログインが見えます。

復習:

.NET/C# Nethereum [ソースコード付き]を基に ETH ウォレットアカウントと認証パスワードを作成
https://www.itsvse.com/thread-9520-1-1.html

イーサリアム(ETH)ウォレット「アドレス、パスワード、秘密鍵、記憶法句、キーストア」
https://www.itsvse.com/thread-4525-1-1.html

ブロックチェーンにおける暗号通貨の背後にあるsecp256k1アルゴリズム
https://www.itsvse.com/thread-10987-1-1.html

参考:

ハイパーリンクのログインが見えます。
ハイパーリンクのログインが見えます。
ハイパーリンクのログインが見えます。

(終わり)




先の:.NET/C# アリババクラウドはヘッダーにV4署名アルゴリズムを含んでいます
次に:モジュールスクリプトの読み込みに失敗しました:JavaScriptのモジュールスクリプトを期待していました
 地主| 2025年9月28日 08:54:18に投稿 |
 地主| 2025年9月28日 13:14:14に投稿 |
base58の符号化と復号(はい。)チェックデジットを自動的に追加します
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com