Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
NFTを取り巻く技術要素とAWS利活用 / Technology and AWS of NFT
Search
Ryo Manzoku
May 26, 2022
Technology
0
900
NFTを取り巻く技術要素とAWS利活用 / Technology and AWS of NFT
2022/05/26
AWS Summit Online
Ryo Manzoku
May 26, 2022
Tweet
Share
More Decks by Ryo Manzoku
See All by Ryo Manzoku
ブロックチェーンゲーム開発におけるチェーンの選び方 / How to select a blockchain for BCG
rmanzoku
0
530
NFTを中心とした新しいゲームの形 / The new approach of gaming with NFT
rmanzoku
0
400
NFTへの招待 / Invitation to NFT
rmanzoku
0
1.5k
Stringをどうにかする / Managing Solidity String
rmanzoku
0
1.2k
ブロックチェーン時代の認証 / Authentication in the Blockchain Era
rmanzoku
8
3k
ERC-721をかぞえて / Enumerate ERC-721
rmanzoku
3
8k
MCH+ Hackathon #1
rmanzoku
0
290
AWS上で動く世界No.1ブロックチェーンゲーム / No1 Blockchain Game on AWS
rmanzoku
1
2.9k
ブロックチェーンゲームMyCryptoHeroesの作り方 / Architecture of My Crypto Heroes
rmanzoku
2
4.7k
Other Decks in Technology
See All in Technology
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
100
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
アジャイルチームがらしさを発揮するための目標づくり / Making the goal and enabling the team
kakehashi
3
140
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
760
飲食店データの分析事例とそれを支えるデータ基盤
kimujun
0
160
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.9k
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
890
AI前提のサービス運用ってなんだろう?
ryuichi1208
8
1.4k
心が動くエンジニアリング ── 私が夢中になる理由
16bitidol
0
100
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
Practical Orchestrator
shlominoach
186
10k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Rails Girls Zürich Keynote
gr2m
94
13k
Building Adaptive Systems
keathley
38
2.3k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Faster Mobile Websites
deanohume
305
30k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
What's new in Ruby 2.0
geeforr
343
31k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Transcript
© 2022 double jump.tokyo inc. All Rights Reserved NFTを取り巻く技術要素と AWS利活⽤
2022/05/26 AWS Summit Online double jump.tokyo株式会社 CTO Ryo Manzoku @rmanzoku
© 2022 double jump.tokyo inc. All Rights Reserved はじめに ˔
資料及び⼝頭で話す内容は弊社で培ったノウハウを含むものでありますが、背 景など全て伝え切れるものではありません。実際のビジネス等に活かす場合は 法的な確認が必要な場合があります。 ˔ 本発表で事例にあげる暗号資産、NFT等の購⼊を推奨するものではありません。 ˔ 特に⾔及のなくブロックチェーンと⾔った場合、Ethereumを前提とします。 ˔ 本発表は、2022年3⽉時点収録されたものであり、公開時の市場状況と乖離し ている可能性があります。
© 2022 double jump.tokyo inc. All Rights Reserved
© 2022 double jump.tokyo inc. All Rights Reserved double jump.tokyo株式会社
˔ 2018年4⽉創業 ˔ ブロックチェーンゲームの開発、運営 NFTの設計、発⾏、販売 ˔ Re-building the future of gaming with blockchain technology!
© 2022 double jump.tokyo inc. All Rights Reserved Re-building the
future of gaming with blockchain technology!
© 2022 double jump.tokyo inc. All Rights Reserved NFT事業⽀援 「NFTPLUS」
˔ ゲーム、エンターテイメントコンテンツを中⼼に NFTのプロデュース、制作、コンサルティング 共同事業開発 ©2021 SQUARE ENIX CO., LTD. All Rights Reserved. Powered by double jump.tokyo Inc. ©2021 Tezuka Productions, All Rights Reserved. Produced by double jump.tokyo Inc. Copyright Souun Office Produced by double jump.tokyo
© 2022 double jump.tokyo inc. All Rights Reserved ˔ ⾃社開発タイトル運営を含むブロックチェーンゲーム事業
˔ ブロックチェーンゲーム開発⽀援国内外含め、7タイトルを⽀援中 ブロックチェーンゲーム։ൃɺӡӦ ⽇本発、世界No1を記録したブロックチェーンゲーム 現在、MCH社へ運営を移管。分散コミュニティの形成を⽬指す 2018年11⽉リリース リアルタイム対戦を楽しむポーカーライクなマインドカードゲーム 2021年5⽉リリース MyCryptoHeroesエンジン x ブレイブフロンティアIP Alim社と共同開発 2020年1⽉リリース
© 2022 double jump.tokyo inc. All Rights Reserved NFT発⾏や暗号資産の送⾦、スマートコントラクトのデプロイなど、NFT/Web3領域の 事業をスムーズかつ効果的に⾏うための製品を揃えたビジネスツールセット
ビジネス向けNFT管理サービス「N Suite」
© 2022 double jump.tokyo inc. All Rights Reserved NFT、知ってますか︖
© 2022 double jump.tokyo inc. All Rights Reserved NFTの特徴 1.
所有の証明 2. 譲渡およびトレース 3. 作成者(本物)の証明 4. コンテンツの参照先を記録 デジタルアセットの新たな価値を与える
© 2022 double jump.tokyo inc. All Rights Reserved NFTとは︖ ˔
Non-Fungible Tokenはブロックチェーン上で構築できる代替不可能な トークンのこと 暗号資産 = 通貨を表すトークン NFT = モノや権利の所有を表すトークン ˔ 2017年から概念が提唱され、2018年、2019年にゲームとしてのユースケ ースを確⽴。2020年後半より、アートやエンタメ分野での注⽬が集まる。 ˔ ⽇本法律上の暗号資産ではないため⽐較的ビジネスがしやすい領域 ˔ イーサリアム上の代表的なNFT規格としてERC721がある ˓ ERC721を中⼼に解説
© 2022 double jump.tokyo inc. All Rights Reserved ⽐較的ビジネスがしやすいとは︖ ˔
NFTにビジネス上、法律上の定義はなく、その特性を持って判断される ˔ よくある例 ˓ 決済⼿段等の経済的機能がある ⇨ 暗号資産として扱うべき ˓ 暗号資産交換業 / 税務会計処理の困難さ ˓ 収益配分があるNFTを販売する ⇨ ⾦商法のルールで扱うべき ˓ 集団投資スキーム持分 ˓ ガチャでNFTを販売だ︕ ⇨ 刑法賭博罪のリスク ˔ 実際のビジネス、企画に応じて法的な確認が必要な場合があります。
© 2022 double jump.tokyo inc. All Rights Reserved スマートコントラクト ˔
暗号資産/仮想通貨で有名なビットコインではなく、スマートコントラクト のあるイーサリアムがNFTにおいての主役 ˔ スマートコントラクトとは、ブロックチェーン上に作成した任意のプログ ラムを⾔い、NFTもスマートコントラクトとして実装される ˔ スマートコントラクトでは、ブロックチェーン上に状態とログを残すこと ができる
© 2022 double jump.tokyo inc. All Rights Reserved ブロックチェーン上で所有を表す 0xA
0xB 0xC 1 2 3 ブロックチェーン上に、Token IDと所有者であるアカウントアドレスが保存さ れている =ブロックチェーンによる所有の証明 Token ID Owner Account
© 2022 double jump.tokyo inc. All Rights Reserved 所有を書き換えることで譲渡を表現 0xA
0xF 0xC 1 2 3 Token IDに対する所有者を書き換えることで「譲渡」を表現する。またブロッ クチェーン上に書き換えの履歴を残す =デジタルアセットの「譲渡」とそのトレース Token ID Owner Account
© 2022 double jump.tokyo inc. All Rights Reserved 発⾏者の制限および履歴 0xA
0xB 0xC 1 2 3 新たなToken IDに対して、所有者を割り当てることを発⾏とする。そのトラン ザクションの実⾏者は改竄困難である。 =発⾏者が⾃明であることで本物の証明が可能 Token ID Owner Account 0xD 4 0xF Mint
© 2022 double jump.tokyo inc. All Rights Reserved コンテンツの参照先を保存 Token
IDに紐づくデータ(メタデータ)の格納先をブロックチェーン上から取 得できる。メタデータからコンテンツ(画像/⾳声/動画など)が参照可能。 =ブロックチェーンからコンテンツを参照可能 1 Token ID https://example.com/1.json TokenURI コンテンツ
© 2022 double jump.tokyo inc. All Rights Reserved 技術的には単純なNFTがなぜ注⽬されるのか NFTが何を変えているのか
© 2022 double jump.tokyo inc. All Rights Reserved NFTが変えるもの(コンテンツ視点) ˔
コピー可能で価値を付けづらかったデジタルアセットが唯⼀性、トレーサ ビリティを得たことで現実世界と同じような価値を認めることができるよ うになった ˓ コピー可能であっても「本物」をブロックチェーンが保証してくれる ˔ Beeple The First 5000 Daysは クリスティーズでオークション 6900万ドルもの値がついた https://onlineonly.christies.com/s/beeple-first-5000-days/beeple-b- 1981-1/112924
© 2022 double jump.tokyo inc. All Rights Reserved NFTが変えるもの(ビジネス視点) ˔
コンテンツ、アートをインターネットを通してグローバルに展開可能 ˔ 個⼈アーティストが暗号資産を通してマネタイズ可能になった ˓ Zombie Zooのような例も ˔ デジタルアセットの唯⼀性があることで⼆次流通が可能に ˓ ⼆次流通⼿数料を発⾏者へ分配も可能 ˓ マネタイズの⼿法の⼀つとして⼆次流通も視野に ˙ 安価に販売して保有者コミュニティを盛り上げることで⼆次流通収益が期待できる ˔ 購⼊者へリーチする⼿段があるため、データの活⽤、リテンション、広告 の⼿法が変わる
© 2022 double jump.tokyo inc. All Rights Reserved NFTが変えるもの(サービス視点) ˔
NFTを介することでコンテンツへのアクセス⽅法が標準化、統⼀化 ˓ NFTは媒介としてのメディア、コンテンツのHub ˔ 2022年に⼊ってメタバース分野で注⽬、⾔及される要因の⼀つ 従来はコンテンツをサービス ごとに把握 or 保存 サービスA サービスB サービスC コンテンツX コンテンツY コンテンツZ NFTによってコンテンツへの アクセスが標準化、統⼀化 サービスA サービスB サービスC コンテンツX コンテンツY コンテンツZ
© 2022 double jump.tokyo inc. All Rights Reserved NFTをビジネスで 扱うには
© 2022 double jump.tokyo inc. All Rights Reserved ウォレット ˔
暗号資産の送⾦、ブロックチェーン上へのトランザクションの 実⾏を担うコンポーネント ˔ PCブラウザの拡張機能やモバイルアプリとして提供される ˔ MetaMaskが有名 ˔ いくつかの役割に分類できる ˓ 秘密鍵の管理 ˓ Webサイトからのトランザクションデータを署名 ˓ ブロックチェーン(RPC エンドポイント)との接続
© 2022 double jump.tokyo inc. All Rights Reserved ブロックチェーンへのトランザクション 汎⽤的なトランザクション
複雑なトランザクション 送⾦/送付リクエスト 署名 RPCへ送信 画⾯操作 トランザクショ ンデータ ウォレット RPCへ送信 ブロックチェーン ブロックチェーン ウォレット ユーザー ユーザー
© 2022 double jump.tokyo inc. All Rights Reserved ウォレットの要素を分解 1.
秘密鍵の管理 a. チーム内での共有の難しさ 2. トランザクションへの署名処理 a. トランザクションデータの準備とそのデータを仕様に基づき署名する 3. ブロックチェーンノードの管理 a. ノードRPCの接続管理 b. 複数のブロックチェーンを利⽤するマルチチェーンは当たり前の時代に
© 2022 double jump.tokyo inc. All Rights Reserved ブロックチェーン⽂脈での秘密鍵とは ˔
電⼦署名(DSA)を⾏うための秘匿すべき鍵 ˔ 署名メッセージと署名から秘密鍵の対となる公開鍵を得られる ˔ ブロックチェーン上のアカウント、アドレスは公開鍵のハッシュ値である ことが多い ˔ 楕円曲線DSA(ECDSA)の曲線secp256k1が⽐較的利⽤される ˔ 実態としては巨⼤な数字 ˔ ⼀度共有した場合、永遠に共有を取り消すことはできない ˓ ビジネスにおいて退職などを考慮できない
© 2022 double jump.tokyo inc. All Rights Reserved 秘密鍵/暗号資産管理のビジネス上の課題 ˔
秘密鍵管理の属⼈化 ˓ 複数⼈での共有が困難 ˔ 処理実⾏者の証跡、記録が困難 ˓ 複数⼈で鍵を共有した場合、誰が実⾏したのか︖ ˔ NFT等、誤配布等の防⽌ ˓ 専⽤のUIでも作らない限り、実⾏するトランザクションが正しいかの確認が難しい ˔ セキュリティ要件と内部統制 ˓ 暗号資産の送⾦、利⽤が承認なく実⾏可能 ˔ ハードウェアウォレットの管理 ˓ 秘密鍵のエクスポートが可能な場合、業務遂⾏に物理的な制約
© 2022 double jump.tokyo inc. All Rights Reserved ブロックチェーンノード ˔
ブロックチェーンネットワークに接続し、トランザクションを受け付けて くれる/処理してくれるサーバ ˔ ⾃前で構築することも可能 ˔ INFURA, Alchemyなど事業者も少なくない ˔ AWSでも提供されている(後述)
© 2022 double jump.tokyo inc. All Rights Reserved NFTをビジネスで扱うための課題 ˔
秘密鍵の共有が困難であり属⼈化 ˔ 承認フローが存在しない ˓ 実⾏者の証跡がない ˓ 暗号資産の送⾦、利⽤が承認なく実⾏可能 ˓ 実⾏トランザクションの意図が記録されない ˔ ブロックチェーンノードを選択、管理 ˓ サービス要件やコストを加味してブロックチェーンノードを選択する必要があ る
© 2022 double jump.tokyo inc. All Rights Reserved AWSの活⽤
© 2022 double jump.tokyo inc. All Rights Reserved AWS Key
Management Service (KMS) ˔ イーサリアムで使われるECDSA secp256k1曲線の秘密鍵に対応 ˔ 作成した秘密鍵⾃体はAWSアカウント管理者であっても取り出し不可能 ˔ 暗号処理である「署名」だけをAPIとして提供 ˓ トランザクションに必要なのは「署名」 ˔ 署名リクエストはAWSの機能で管理可能 ˓ AWS Identity and Access Management (IAM) でアクセス制御 ˓ AWS CloudTrailでのロギング ˔ トランザクションデータへの署名は⾃⾝で実装する必要あり ˓ KMSとの接続を⾏うOSSライブラリを検討 送⾦/送付リクエスト 署名 RPCへ送信 ブロックチェーン ユーザー
© 2022 double jump.tokyo inc. All Rights Reserved Amazon Managed
Blockchain (AMB) ˔ ブロックチェーンノードのマネージドサーバを提供 ˓ ⾃前で構築する⼿間が不要 ˔ パブリックネットワークへの接続をサポート ˓ 現在はイーサリアムに対応 ˔ 他ノードサービスと⽐べ、リクエストの制限が少ないことがメリット ˔ RPCへのリクエストには、AWS Credentialを使った署名処理が必要
© 2022 double jump.tokyo inc. All Rights Reserved ブロックチェーンノードゲートウェイ ˔
API Gateway+AWS Lambdaを使ったブロックチェーンノードゲート ウェイを構築 ˓ CredentialのSign処理をAWS Lambdaで実⾏ ˓ ロギング、キャッシュ等 ˓ バックエンドに複数のノードサーバを準備しフェイルオーバー ˔ イーサリアムノードへの接続Amazon Managed Blockchain(AMB)を 利⽤ ˓ AWS Lambdaで署名処理を実装 ˔ 実際にサービスを⾏う場合はAMB⾮対応のネットワークなども利⽤する ˔ 複数プロジェクトで共通利⽤できる
© 2022 double jump.tokyo inc. All Rights Reserved Blockchain Node
Gateway ・Proxy JSON RPC request ・Caching ・Logging Other Node Ethereum Other network Other Node Other network Service
© 2022 double jump.tokyo inc. All Rights Reserved NFTをビジネスで扱うための課題 ˔
秘密鍵の共有が困難であり属⼈化 ⇨ AWS KMSで解決 ˔ 承認フローが存在しない ⇨ ︖ ˓ 実⾏者の証跡がない ˓ 暗号資産の送⾦、利⽤が承認なく実⾏可能 ˓ 実⾏トランザクションの意図が記録されない ˔ ブロックチェーンノードを選択、管理 ⇨ AMBで解決
© 2022 double jump.tokyo inc. All Rights Reserved
© 2022 double jump.tokyo inc. All Rights Reserved N Suiteにビジネス向けNFT管理サービス
˔ AWS KMSで作成された鍵を使うブラウザ拡張 N Wallet ˓ 秘密鍵を使ったオペレーションをクラウド化 ˔ トランザクションの承認ワークフロー ˔ スマートコントラクトのデプロイ ˔ トランザクションの記録 AWS KMSを使ったチームでの鍵管理に加え ビジネス上必要となる承認ワークフローをご提供
© 2022 double jump.tokyo inc. All Rights Reserved まとめ ˔
NFTの特徴、技術的な要素 ˔ NFTがビジネスに与えるインパクト ˔ NFTをビジネスで扱うためのウォレットとその課題 ˔ AWSを利⽤した課題への対応 ˔ N Suiteご紹介 NFT事業やブロックチェーンゲームの開発⽀援も⾏なっており、 関連するビジネスのお⼿伝いをしています。