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
クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022
Search
odanado
PRO
July 12, 2022
Programming
0
1.2k
クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022
odanado
PRO
July 12, 2022
Tweet
Share
More Decks by odanado
See All by odanado
Vitest Browser Mode への期待 / Vitest Browser Mode
odanado
PRO
3
4.1k
@nestjs/bull の活用について
odanado
PRO
0
1.4k
Vue.observable で状態管理 / vue-observable-state-management
odanado
PRO
4
2k
nuxtjs-axios-error-handling
odanado
PRO
0
350
ブロックチェーンアプリのトランザクションに対するデータ分析 / PyCon-JP-2019
odanado
PRO
0
400
スマートコントラクトに対する既知の攻撃とその対策 / bc.tokyo-21
odanado
PRO
0
230
最近のweb3.js事情 / bc.tokyo-19
odanado
PRO
2
490
YAPC::Tokyo 2019に スタッフ参加してみて / kichijojipm-18
odanado
PRO
1
2.3k
JavaScript + Dockerの知見 / knowledge-of-docker-in-javascript
odanado
PRO
9
54k
Other Decks in Programming
See All in Programming
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
170
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
22
6.2k
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
780
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
210
DroidKnights 2025 - 다양한 스크롤 뷰에서의 영상 재생
gaeun5744
3
300
Is Xcode slowly dying out in 2025?
uetyo
1
170
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
cocet33000
2
580
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
320
ASP.NETアプリケーションのモダナイズ インフラ編
tomokusaba
1
390
XP, Testing and ninja testing
m_seki
2
110
業務自動化をJavaとSeleniumとAWS Lambdaで実現した方法
greenflagproject
1
120
赤裸々に公開。 TSKaigiのオフシーズン
takezoux2
0
140
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Typedesign – Prime Four
hannesfritz
42
2.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
How GitHub (no longer) Works
holman
314
140k
Facilitating Awesome Meetings
lara
54
6.4k
BBQ
matthewcrist
89
9.7k
Designing for Performance
lara
609
69k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Transcript
クラウド KMS の活用 1 TOKYO BLOCKCHAIN TECH MEETUP 2022 @odan3240
自己紹介 • Twitter: @odan3240 • 五反田にある会社でソフトウェアエンジニア(後述) • 最近の興味 ◦
TypeScript ◦ Seaport ◦ EIP-2771: Secure Protocol for Native Meta Transactions ◦ コントラクトウォレット 2
宣伝 • 普段のお仕事で開発しているサービス • ユニキス ガレージ ◦ NFT の生成ができる SaaS
◦ NFT の生成は API もあるので 既存サービスとのインテグレーションも可能 • ユニマ ◦ 生成した NFT を販売するマーケット 3
Web サービス開発における秘密鍵管理 • サービスの要件によっては バックエンドからトランザクション発行が必要 • 秘密鍵管理を環境変数で行った場合の課題
◦ 誰かがこっそり秘密鍵を MetaMask にインポート可能 4
クラウドの KMS • AWS/GCP/Azure などのクラウドサービスには KMS (Key Management Service) というサービスがある
◦ AWS Key Management Service ◦ Cloud KMS ◦ Azure Key Vault • 各 KMS は Ethereum が使用している 楕円曲線暗号の secp256k1 サポートしている 5
クラウドの KMS • クラウドの KMS で秘密鍵管理すると都合が良い ◦ エンジニア含めて秘密鍵自体に誰もアクセスできない
◦ 誰が秘密鍵で署名したかログが残る ▪ API 呼び出しの監査ログは保存されている 6
cloud-cryptographic-wallet • https://github.com/odanado/cloud-cryptographic-walle t • クラウドの KMS にある秘密鍵を web3.js や
ethers から 扱うためのライブラリ 7
cloud-cryptographic-wallet • 対応ライブラリ ◦ web3.js ◦ ethers ◦ hardhat (開発中)
• 対応クラウド ◦ AWS ◦ GCP 8
まとめ • 生の秘密鍵を開発で運用すると セキュリティ的な不安要素がある • 各種クラウドの KMS の利点 ◦ Ethereum
の秘密鍵の形式に対応している ◦ セキュアに秘密鍵を使用できる • cloud-cryptographic-wallet を使用すると クラウドの KMS の秘密鍵で Ethereum 関係のライブラリを利用できる 9