クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022 - Speaker Deck
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.1k
クラウド 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
3.5k
@nestjs/bull の活用について
odanado
PRO
0
1.3k
Vue.observable で状態管理 / vue-observable-state-management
odanado
PRO
4
2k
nuxtjs-axios-error-handling
odanado
PRO
0
320
ブロックチェーンアプリのトランザクションに対するデータ分析 / PyCon-JP-2019
odanado
PRO
0
360
スマートコントラクトに対する既知の攻撃とその対策 / bc.tokyo-21
odanado
PRO
0
210
最近のweb3.js事情 / bc.tokyo-19
odanado
PRO
2
460
YAPC::Tokyo 2019に スタッフ参加してみて / kichijojipm-18
odanado
PRO
1
2.2k
JavaScript + Dockerの知見 / knowledge-of-docker-in-javascript
odanado
PRO
9
54k
Other Decks in Programming
See All in Programming
“あなた” の開発を支援する AI エージェント Bedrock Engineer / introducing-bedrock-engineer
gawa
11
1.8k
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
4.3k
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
630
AHC041解説
terryu16
0
590
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
Conform を推す - Advocating for Conform
mizoguchicoji
3
670
SpringBoot3.4の構造化ログ #kanjava
irof
2
960
動作確認やテストで漏れがちな観点3選
starfish719
6
1k
ISUCON14公式反省会LT: 社内ISUCONの話
astj
PRO
0
180
Pulsar2 を雰囲気で使ってみよう
anoken
0
230
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
670
WebDriver BiDiとは何なのか
yotahada3
1
130
Featured
See All Featured
The Invisible Side of Design
smashingmag
299
50k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
YesSQL, Process and Tooling at Scale
rocio
171
14k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Side Projects
sachag
452
42k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
GitHub's CSS Performance
jonrohan
1030
460k
Scaling GitHub
holman
459
140k
Become a Pro
speakerdeck
PRO
26
5.1k
Raft: Consensus for Rubyists
vanstee
137
6.8k
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