秘密鍵がオフラインのときに、オンラインのトランザクションに署名するには?
重要なポイント: |
— 暗号資産(仮想通貨)は、オンラインに存在しており、ブロックチェーンのトランザクションはインターネット上で実行されます。 — ハードウェアウォレットは、秘密鍵をインターネットから切り離し、ハッカーがアクセスできるオンライン環境から遠ざけるように設計されています。 では、なぜオンライン取引の署名が可能なのでしょうか? — Ledgerは、秘密鍵をオフラインに保ちながら、システムを使用してトランザクションを個別の段階で承認します。 |
Ledgerハードウェアウォレットをお持ちの場合、Ledgerハードウェアウォレットは秘密鍵をオフラインで生成して保管していることをご存知だと思います。 では、ハードウェアウォレットを使用するメリットとは? その答えは、「ハードウェアウォレットがインターネットに一切接続されない」という点です。
一方で、ブロックチェーンはインターネット接続により実行され続けます。 Web3アプリはすべて、インターネット接続に依存しています。 トランザクションをネットワークにブロードキャスト(一斉送信)するには、インターネット接続が必要です。
一見すると、このプロセスのすべてのステップがインターネット接続に依存しているように見えます。 「ハードウェアウォレットが常にオフラインの場合、これらのオンラインdAppやマーケットプレイスとどのようにやり取りするの?」と、疑問に思われるかもしれません。また、ハードウェアウォレットはどのようにトランザクションをブロックチェーンに送信するのでしょうか?
ご安心ください。この記事では、Ledgerデバイス内でトランザクションがどのように行われるのか、また、Ledgerを使って、どのように鍵を公開することなくオンラインプラットフォームとやりとりできるのかについて、正確にご説明します。 さっそく見ていきましょう。
秘密鍵がオフラインのときに、オンライントランザクションに署名するには?
簡単に言うと、Ledgerデバイスのトランザクションプロセスは、「オフライン」部分と「オンライン」部分のステップに分割されます。 このプロセスにより、秘密鍵は秘密のままになります。
詳しい説明については、Ledgerデバイスの仕組みに関する記事をご覧ください。 ただし、基本的に、Ledgerデバイスはトランザクションの署名を処理しますが、トランザクション自体をブロードキャストすることはできません。 代わりに、別のデバイスのインターネット接続に依存します。そのデバイスは、LedgerのコンパニオンアプリであるLedger Liveのホストを担当します。
Ledger Live経由でトランザクションを開始するのは、このインターネットに接続されたデバイスです。 そこから、Ledger Liveはデバイスに接続して、トランザクション情報を送信できます。
トランザクションに署名すると、そのプロセスはセキュアエレメント(SE)内で行われます。セキュアエレメント(SE)は、物理デバイス内の改ざん防止コンピューターチップです。 これが、トランザクションの最も重要な部分です。なぜなら、トランザクションに署名する前に、ハッカーがトランザクションを改ざんする可能性があるからです。 しかし、Ledgerデバイスのセキュアエレメント(SE)チップを使用すると、署名プロセスがハッカーの手の届かないところにあるのでご安心です。
そこから、デバイスはUSBケーブル経由で、すでに署名済みのトランザクションをインターネットに接続されたデバイスに送信します。 トランザクションはすでに署名されているため、インターネットに接続されたデバイスがマルウェアに感染している場合でも、トランザクションを改ざんすることはできません。
この時点で、トランザクションはラップトップまたはスマートフォンのウォレットのインターフェースに送り返され、自信を持ってブロックチェーンにブロードキャストできます。
どっちみちインターネットに接続されたデバイスが必要でも、コンピューターやスマートフォンでトランザクションに署名してはいけない理由とは?
答えは簡単です。それは、マルウェアです。 インターネットに接続されたデバイス上で暗号資産ウォレット(通常はホットウォレットと呼ばれるウォレット)を直接使用すると、マルウェアなどのオンラインの脅威に対して脆弱になります。
マルウェアにはさまざまな形式があります。例えば、シードフレーズや秘密鍵を発見することを目的とする場合もあれば、ラップトップやスマートフォンの画面を操作して、悪意のあるトランザクションに署名するように仕向けたりする可能性もあります。 マルウェアは物理的に、お使いのコンピューターにインストールされる可能性もありますが、リモートハッキングの方がはるかに蔓延しています。
残念ながら、ホットウォレット(スマートフォンやラップトップに直接インストールする暗号資産ウォレット)は、この種の脅威に対して非常に脆弱です。 要するに、インターネットに接続されたあなたのデバイスにアクセスしたハッカーは、すぐにあなたの秘密鍵を見つけ、あなたのウォレットを空にすることができます。 これは、ホットウォレットが秘密鍵を保管する場所(ホストデバイスに直接保管されるか、場合によってはブラウザのデータストアに保管される場合もあります)に起因します。 単純に、ハッカーが秘密鍵を見つけて悪用するのはとても簡単です。
警告するつもりはありませんが、大量の暗号資産にホットウォレットを使用するのは、詐欺師への無防備な招待状のようなものです。
インターネットに接続されたデバイスとLedgerデバイスが連動
Web3プラットフォーム、アプリケーション、およびサービスとやり取りするには、インターネット接続が必要です。 ただし、鍵を安全に保つには、鍵をオフラインに保つのが不可欠です。 これら2つの事実は、互いに逆作用する可能性があります。 当然のことながら、分散型アプリを操作したい場合は、オンラインウォレットの利便性が魅力的に感じるかもしれません。
しかし、資金が安全でなければ、暗号資産を所有する意味などありませんよね? セキュリティは、暗号資産空間とのやり取りにおいて最も重要でありながら、見落とされがちな部分の1つです。
Ledgerは、セルフカストディ(自己保管・自己管理)を簡単にできるようにすることに専念しています。そのため、Ledgerウォレットをご使用いただくと、オフラインでトランザクションに署名できるのと同時に、Ledger Liveを介した、暗号資産アプリとサービスのシンプルかつ拡張的なエコシステムをご提供できます。 つまり、Ledgerをご利用いただくと、セキュリティおよび使いやすさ、真の所有権という両方の長所が得られます。
セルフカストディができないなら、暗号資産をやる意味などあるのでしょうか?