---
title: "WalletConnectとは?"
description: "このオープンソースプロトコルを使ってウォレットに接続する"
---

# WalletConnectとは?

WalletConnectは、シングルインテグレーションのオープンソースプロトコルです。開発者は[WalletConnect](https://www.alchemy.com/dapps/walletconnect)を使うことで、300以上のウォレットのユーザーが自分の作った分散型アプリケーションにログインできるようにできます。これらの[アプリ](https://www.alchemy.com/dapps/top/defi-dapps)は[Ethereum](https://www.alchemy.com/ethereum)のような分散型ネットワーク上でホストされています。

この記事では、WalletConnectがエコシステムで果たす重要な役割、このプロトコルの技術的な詳細、そしてアプリの使い方について説明します。

## WalletConnectでウォレットに接続する理由

かつてEthereumの開発者は、ウォレットユーザーがアプリケーションにログインできるように、[Web3のクリプトウォレット](https://www.alchemy.com/overviews/web3-wallets)ごとに個別のインテグレーションを作成していました。しかしこれによって[Ethereumエコシステム](https://www.alchemy.com/dapps/ecosystem/ethereum)は[MetaMask](https://www.alchemy.com/dapps/metamask)に集中することになりました。開発者はユーザー数の少ないニッチなウォレット向けにインテグレーションをコーディングすることに消極的だったため、新しいウォレットの初期採用者が不利益を被っていたのです。

WalletConnectは、単一のインテグレーションのコストで300種類以上のウォレットにアクセスできるようにすることで、この状況を変えました。現在では3000以上のアプリがログイン方法としてWalletConnectを提供しており、その中には[Uniswap](https://www.alchemy.com/dapps/uniswap)、[OpenSea](https://www.alchemy.com/dapps/rarible)、[Rarible](https://www.alchemy.com/dapps/rarible)など、エコシステムの中でも特に大きなアプリが含まれています。

WalletConnectは、開発者があらゆる種類のウォレットのユーザーにアプリを開放することを容易にすることで、ウォレットのデザインと機能における創造性の爆発的な広がりを可能にしました。このプロトコルは、権力の分散と新しいユーザー体験の実現という暗号通貨の理念を象徴しています。

## WalletConnectはどのチェーンをサポートしていますか？

WalletConnectは、Ethereum、Cosmos、Polkadot、Near、Solana、Celo、[Binance](https://www.alchemy.com/dapps/binance) Smart Chainをはじめとする幅広いチェーンをサポートしています。互換性のあるブロックチェーンの完全なリストについては、WalletConnectのドキュメントを参照してください。

## WalletConnectと互換性のあるウォレットは？

WalletConnectは、さまざまなプラットフォーム上の300種類以上のウォレットと互換性があります。互換性のある代表的なウォレットには以下のようなものがあります。

- Metamask
- [‍](https://metamask.io)Rainbow
- [‍](https://rainbow.me)Crypto.com DeFi Wallet
- Argent Wallet
- [‍](https://www.argent.xyz)Gnosis Safe MultiSig Wallet
- Trust Wallet
- Ledger
- Coinbase Wallet

## WalletConnectの使い方

このセクションでは、WalletConnectを使ってウォレットを分散型アプリケーション（dApp）に接続する手順を詳しく説明します。ここに記載されている手順に従うことで、WalletConnectと互換性のあるあらゆるdAppとウォレットの間で問題なく接続を確立し、dAppとやり取りできるようになります。

### 1. WalletConnectでdAppに接続する

WalletConnectと互換性のあるdAppに移動します。このチュートリアルでは、分散型金融アプリケーションであるUniswapと、ウォレットとして[Rainbow](https://www.alchemy.com/dapps/rainbow-wallet)を例として使用します。ただし、この手順はWalletConnectと互換性のあるどのdAppとウォレットにも当てはまります。まず「Connect Wallet」ボタンをクリックしてください。

<ImageBlock
  src="https://media.alchemy.com/1703859192-connect-dapp-with-walletconnect.png"
  alt="Connect Walletボタンが表示されたUniswapのインターフェース"
  width={533}
  height={479}
/>

### 2. WalletConnectを選択する

次に、表示された選択肢の中から**WalletConnect**を選びます。画面にQRコードが表示されます。WalletConnectはデフォルトでは、ユーザーがモバイルウォレットでログインすることを想定しています。ただしデスクトップウォレットを使用している場合は、「Desktop」のラベルをクリックしてください。

<ImageBlock
  src="https://media.alchemy.com/1703859227-select-walletconnect.png"
  alt="ウォレット選択モーダル：QRコードを表示するためにWalletConnectを選択する"
  width={507}
  height={639}
/>

### 3. モバイルウォレットでQRコードをスキャンする

スマートフォンを取り出し、モバイルウォレットアプリケーションを開きます。多くのウォレットには、下の画像の右側に示されているような、中が空洞の四角のアイコンがあります。このアイコンをタップするとカメラが起動し、QRコードをスキャンできます。このアイコンが見つからない場合は、設定メニューから「QRコードをスキャン」というオプションを探してください。

<ImageBlock
  src="https://media.alchemy.com/1703859255-scan-qr-mobile-wallet.png"
  alt="WalletConnectのQRコードをスキャンするためのモバイルウォレットのQRスキャナーアイコン"
  width={828}
  height={204}
/>

### 4. 接続を許可する

QRコードをスキャンすると、dAppがウォレットへの接続許可を求めてきます。これは、ユーザー自身がウォレットを管理していること、そしてdAppがそのウォレットへのアクセスを許可されていることを確認するための標準的なセキュリティ対策です。モバイルウォレットの画面の指示に従って、接続を確認する必要があります。接続が確立されると、ウォレットを使ってdAppとやり取りできるようになります。

<ImageBlock
  src="https://media.alchemy.com/1703859285-permission-to-connect.jpeg"
  alt="dAppへの接続許可を求めるモバイルウォレットのプロンプト"
  width={771}
  height={1600}
/>

### 5. dAppへのログインに成功する

おめでとうございます。これでウォレットを通じてdAppへのログインに成功しました。ウォレットを使ってdAppとやり取りし、トレード、ステーキング、資金の送金といったさまざまな操作を行えるようになります。ウォレットの使用やアプリとのやり取りを行う際は、資金の安全を守るため、常にセキュリティのベストプラクティスに従うようにしてください。

## WalletConnectは安全ですか？

WalletConnectは安全に使用できます。アプリとウォレットの間でやり取りされる情報は、この2者のみが所持する鍵によって対称暗号化されます。

この鍵はdAppからウォレットへ直接送信されます。ユーザーがQRコードをスキャンする場合でも、デスクトップウォレットでディープリンクを選ぶ場合でも、仲介者は存在しません。

公開ブリッジサーバーが両者間の情報のやり取りを処理しますが、このサーバーは情報を復号するために必要な鍵を受け取ることはありません。さらに、開発者は自前でブリッジサーバーをホストすることで、完全な保護を実現することもできます。

この設計の優れた点は、WalletConnectがdAppへのログインにシードフレーズやリカバリーフレーズを必要としないことです。以下は、ブリッジサーバーを介したdAppとウォレット間の情報の流れを示す図です。

<ImageBlock
  src="https://media.alchemy.com/1703859322-dapp-and-wallet-info-flow.png"
  alt="WalletConnectのブリッジサーバーを介したdAppとウォレット間の暗号化された情報の流れの図"
  width={987}
  height={694}
/>

QRコードの中には、以下に示すWalletConnectのURIスキームが含まれており、その下に各変数の意味を説明する表があります。

<ImageBlock
  src="https://media.alchemy.com/1703859589-walletconnect-uri.png"
  alt="WalletConnectのURIスキーム"
  width={1200}
  height={74}
/>

<EmbeddedTable
  table={{
    columns: [
      { key: "1", width: 200, title: "Required parts", dataType: "object" },
      { key: "2", width: 200, title: "Notes", dataType: "object" },
    ],
    data: [
      {
        "1": { title: "<p>wc:</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Wallet Connect protocol defined in <a href='#'>EIP-1328</a></p>", tooltip: "", icon: "" },
        id: 0,
      },
      {
        "1": { title: "<p>topic</p>", tooltip: "", icon: "" },
        "2": { title: "<p>String</p>", tooltip: "", icon: "" },
        id: 1,
      },
      {
        "1": { title: "<p>version</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Number (eg. 1.9.0)</p>", tooltip: "", icon: "" },
        id: 2,
      },
      {
        "1": { title: "<p>bridge</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Bridge URI (URL Encoded)</p>", tooltip: "", icon: "" },
        id: 3,
      },
      {
        "1": { title: "<p>key</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Symmetric key hex string</p>", tooltip: "", icon: "" },
        id: 4,
      },
    ],
  }}
/>

## WalletConnectのコードベース

WalletConnectのコードベースは[WalletConnect Github](https://github.com/WalletConnect)で確認できます。

## WalletConnectの実装方法

WalletConnectの実装に関する最新の手順については、公式ドキュメントを参照してください。

## WalletConnectの代替手段と競合

WalletConnectに直接の競合は存在しません。WalletConnectとMetaMaskを比較すること自体が誤った二項対立であり、実際にはMetaMaskもモバイルウォレットのログイン方法としてWalletConnectを利用しています。

## まとめ

WalletConnectと同様に、私たちAlchemyも、製品を通じて開発者の作業を楽にすることでエコシステムを前進させています。

開発者がノードの自己ホスティングをやめて[Alchemy Supernode](https://www.alchemy.com/supernode?a=fe67d21174)に切り替えると、ノード管理において最も広く使われているAPIを活用できるようになります。Supernodeは強力な分析ツールと開発者向けツールのスイートを提供しており、デバッグ作業を高速化し、重要なリクエストに対してシンプルなAPI呼び出しを行うことができます。

1000億ドル以上のトランザクションを支え、[OpenSea](https://www.alchemy.com/dapps/opensea)や[NBA Top Shot](https://www.alchemy.com/dapps/nba-top-shot)といった人気アプリを支えている製品スイートを、[Alchemy.com](https://www.alchemy.com?a=fe67d21174)でぜひご覧ください。

さらに詳しく知りたい方は、[API3がAlchemyをどのように活用しているか](https://www.alchemy.com/blog/api3-x-alchemy)をご覧ください。DAOダッシュボードでの**WalletConnect**インテグレーションの実現など、さまざまな活用方法が紹介されています。
