Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Web3.0到来前夜のログイン認証

Toshiya
July 17, 2021

 Web3.0到来前夜のログイン認証

Web3.0の世界が目指すログイン認証について、JSを使った実装方法、普及中のサービスについての紹介を含め、ブロックチェーンの発展とともに語りたい。

Toshiya

July 17, 2021
Tweet

Other Decks in Technology

Transcript

  1. Web3.0とは - Webの歴史 - Web1.0: データを読むことができる (簡単なホームページなど ) - Web2.0:

    データを読み書きできる (SNS) - Web2.0の問題点 - 単一障害点による不正アクセスのリスク
 - 特定の企業によるユーザのプライバシー情報の一元管理
 - Web3.0の登場 : デジタル世界の民主化 - 管理主体が介在することなく、自分自身が自らのデジタル IDを保有・管理 - 分散的なサービス運用による単一障害点の回避 resource: https://www.creativevillage.ne.jp/69756, https://lastrust.io/2020/06/05/whatis-did-web3/
  2. Web3.0の推進者: Blockchain 分散型ネットワークを構成する複数のコンピューターに、暗号技術を組み合わせ、取引情報などのデータを同期して 記録する手法 - コンセンサス
 - 一部のコンピューターで取引データを改ざんしても、他のコンピューターとの多数決によって正しい取引データが選ばれるた め、記録の改ざんや不正取引を防げる -

    ハッシュ
 - ブロックと呼ばれるデータの単位を生成し、時系列に沿ってチェーンのようにつないでいくことによりデー タベースとなる - ピア・トゥー・ピア(P2P:Peer to Peer)
 - 公開鍵暗号などの暗号化技術
 resource: https://www.coindeskjapan.com/keywords/blockchain/ “「分散型コンセンサス」と呼ばれるもので、ネットワーク上の信頼されていない多くの参加者が一貫性と信頼を確立する能力の ことです” by マーク・アンドリーセン(Webブラウザ NCSA MosaicやNetscape Navigatorの開発者)
  3. - ヴィタリック・ブテリン氏等によって開発されたプラットフォームの名称 - 暗号通貨はEther(イーサ) - Proof of Workによりマイニングによる通貨発行とセキュリティの担保 - Bitcoinに次ぐ総資産

    特徴 スマートコントラクト - Ethereum Blockchain上にプログラムをデプロイすることで、設定した要件を自動的に実行する - eg. アリスがボブに100Ether送ったとすると、その内5%の5Etherを松本にも送る - eg. Startbahnでは、アート作品の証明書とその所有者をプログラム上で紐付ける dApps 構築のプラットフォーム - 分散型アプリケーション(英 : Decentralized Applications、略称: dApps )を構築するための開発環境を提供するプラットフォーム - 企業や政府、銀行などの中央管理者がいなくても稼働するアプリケーション - 前四半期に約1.5兆ドルの取引を決済しており、これは Visaの決済量の50%に相当 Ethereum(イーサリアム) Blockchain resource: https://bitflyer.com/ja-jp/ethereum
  4. 分散型アプリケーション(Dapps): NFT NFT(Non Fungible Token) - 2020年に空前の大ブームとなる - デジタルアートと所有者の関係性を明 確にすると期待

    - 技術: Ethereum blockchainのスマート コントラクト上でトークンと呼ばれるID を生成し、ユーザIDと作品情報などを マッピングする https://opensea.io/ https://rarible.com/ https://nbatopshot.com/ 初ツイートのNFTが
 約3億1640万円)で
 落札された
  5. DeFi(Decentralized Finance) - 世界中の誰もが、銀行や証券会社を使わずに、簡単にダウンロードできる仮想通貨Walletを使って、ブロック チェーンベースの資産を貸し借りしたり、送ったり、取引したりすることができます。 https://uniswap.org/ https://compound.finance/ 基本性質 - パーミッションレス:

    民族、性別、年齢、資産、政治的立場などに関係なく、世界中の誰にでも平等にサービス を提供することができる - 透明性: いつでもどこでも誰でも監査可能である 分散型アプリケーション(Dapps): DeFi Resource: https://note.com/yas_crypto/n/n273b80d781b3
  6. Ethereumで所有者を証明するためのID - EOA(Externally Owned Account) - 個人のID - 20bytesの16進数: 例:

    0x1aa76a48dda5f106a96704359212237609e0b9c8 - 元になる秘密鍵は256bitesの16進数: 例: f8f8a2f43c8376ccb0871305060d7b27b0554d2cc72bccf41b2705608452f315 - 仮想通貨(Ether)やNFTとの紐付きも全てEOA単位で行われる - 絶対に秘密鍵は渡してはダメ https://etherscan.io/
  7. Javascript Libraryの紹介 Name Weekly Downloads Last publish URL ethereumjs-util 558,668

    3 months ago https://www.npmjs.com/package/ethereumjs-util ethers 252,887 9 hours ago https://www.npmjs.com/package/ethers web3 262,579 2 days ago https://www.npmjs.com/package/web3 NPM 情報
  8. web上でEOA管理を楽にしてくれるサービス達 Name Login Method Private Key Storage Private Key Available

    at npm Weekly Downloads npm Last publish Telegram user Twitter user U R L Torus Oauth providers Nodes in p2p network Browser (Torus domain iframe) 12,763 17 days ago 305 8649 https://w ww.npmj s.com/pa ckage/@ toruslabs /torus-em bed (Email or phone number) & password AWS(HSMs, KMS, Incognito) Browser (Fortmatic domain iframe) 18,396 a year ago 865 4360 https://www. npmjs.com/ package/fort matic Email & password HSM HSM 1,453 2 months ago - 10.1K https://www. npmjs.com/ package/bits ki Email & password N/A Browser (Portis domain iframe) 18,800 5 days ago 812 3333 https://www. npmjs.com/ package/@ portis/web3 27,July,2021
  9. リソース 「Web3.0は何を変える?Webの歴史から振り返る」 ; https://www.creativevillage.ne.jp/69756 「Web3.0とDIDとは」: https://lastrust.io/2020/06/05/whatis-did-web3/ 「ブロックチェーン(blockchain)の基礎知識」: https://www.coindeskjapan.com/keywords/blockchain/ 「イーサリアム(Ethereum)とは?」: https://bitflyer.com/ja-jp/ethereum

    「ethereumbook」: https://github.com/ethereumbook/ethereumbook 「One-click Login with Blockchain: A MetaMask Tutorial」: https://www.toptal.com/ethereum/one-click-login-flows-a-metamask-tutorial 「TORUS documentation Overview」: https://docs.tor.us/key-infrastructure/role-of-torus-nodes/overview 「TORUS documentation Installation: https://docs.tor.us/wallet/api-reference/installation