Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022
odanado
PRO
July 12, 2022
Programming
0
420
クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022
odanado
PRO
July 12, 2022
Tweet
Share
More Decks by odanado
See All by odanado
@nestjs/bull の活用について
odanado
PRO
0
300
Vue.observable で状態管理 / vue-observable-state-management
odanado
PRO
4
1.4k
nuxtjs-axios-error-handling
odanado
PRO
0
180
ブロックチェーンアプリのトランザクションに対するデータ分析 / PyCon-JP-2019
odanado
PRO
0
250
スマートコントラクトに対する既知の攻撃とその対策 / bc.tokyo-21
odanado
PRO
0
130
最近のweb3.js事情 / bc.tokyo-19
odanado
PRO
2
370
YAPC::Tokyo 2019に スタッフ参加してみて / kichijojipm-18
odanado
PRO
1
1.9k
JavaScript + Dockerの知見 / knowledge-of-docker-in-javascript
odanado
PRO
9
52k
nuxt-i18nを使ったWebサイトの多言語化 / i18n-of-web-site-using-nuxt-i18n
odanado
PRO
1
5.6k
Other Decks in Programming
See All in Programming
社会人 20 年目エンジニア、発信で技術学びなおしてる話
e99h2121
1
140
Rによる大規模データの処理
s_uryu
2
630
xarray-Datatree: Hierarchical Data Structures for Multi-Model Science
tomnicholas
0
210
ECS Service Connectでマイクロサービスを繋いでみた
xblood
0
530
ipa-medit: Memory search and patch tool for IPA without Jailbreaking/ipa-medit-bh2022-europe
tkmru
0
130
Most Valuable Bug(?) ~インシデント未遂から得た学び~
tatsumiakahori
0
150
Micro Frontends with Module Federation @MicroFrontend Summit 2023
manfredsteyer
PRO
0
510
Gradle build: The time is now
nonews
1
450
フロントエンドで 良いコードを書くために
t_keshi
3
1.6k
Cloudflare Workersと状態管理
chimame
3
480
はてなリモートインターンシップ2022 Web API 講義資料
hatena
0
150
10年以上続くプロダクトの フロントエンド刷新プロジェクトのふりかえり
yotahada3
2
320
Featured
See All Featured
Scaling GitHub
holman
453
140k
Pencils Down: Stop Designing & Start Developing
hursman
114
10k
Why Our Code Smells
bkeepers
PRO
326
55k
Art, The Web, and Tiny UX
lynnandtonic
284
18k
The Mythical Team-Month
searls
210
40k
Designing the Hi-DPI Web
ddemaree
273
32k
Put a Button on it: Removing Barriers to Going Fast.
kastner
56
2.5k
Building Applications with DynamoDB
mza
85
5k
The MySQL Ecosystem @ GitHub 2015
samlambert
240
11k
WebSockets: Embracing the real-time Web
robhawkes
58
6k
Making Projects Easy
brettharned
102
4.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
224
50k
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