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
LNDのgRPC/RESTインターフェース
Search
shigeyuki azuchi
December 24, 2021
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
LNDのgRPC/RESTインターフェース
GBECの解説動画の資料です。
https://goblockchain.network/2021/12/lnd_grpc-rest_interface/
shigeyuki azuchi
December 24, 2021
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
Hyper Tree
azuchi
0
16
FORS
azuchi
0
29
クラスターmempool
azuchi
0
41
W-OTS+
azuchi
0
46
Shorのアルゴリズム
azuchi
0
67
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
54
Fiat-Shamir変換と注意点
azuchi
0
250
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
66
BIP-374 離散対数の等価性証明
azuchi
0
82
Other Decks in Technology
See All in Technology
Amazon S3 Tablesに全部任せてみた結果——コンパクション/スナップショット管理は本当に手放せるか
shigeruoda
0
330
AI-DLCって実際どう? 〜聞きたいこと全部聞いてみる〜
news_it_enj
0
210
When Does a Local Qwen Start to Break
morshoto
0
160
Jetpack Compose で挑む新聞紙面UI ─ 複合ジェスチャー・ポリゴン記事領域・適応的ページ構成という3つの壁/droidkaigi2026
nikkei_engineer_recruiting
0
180
APIセキュリティを組織で実現するには~注力する点と設計・実装に入れたい対策~
riiimparm
3
930
なぜSRE・セキュリティは評価されないのか?守りの組織を事業成長エンジンに変えた実践
cscengineer
PRO
2
2.1k
プロダクト思考 × 基盤思考を AIで実現する Compound Engineering
tkc66buzz
1
240
DGX Sparkを2台使って いろいろ動かす話
sonoda_mj
1
120
Claude Codeの体系的な理解と知識のフック
oikon48
10
6.6k
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
330
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
0
930
【視聴者参加型!】AWSセキュリティアンチパターンクイズ
syoshie
0
210
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
390
Navigating Team Friction
lara
192
16k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Navigating Weather and Climate Data
rabernat
0
510
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
410
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
400
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
Transcript
LNDのgRPC/RESTインターフェース
1 LNDのgRPC/RESTインターフェース LNDではノード操作が可能なAPIが提供されている • gRPC API https://api.lightning.community/#lnd-grpc-api-reference •
REST API https://api.lightning.community/#lnd-rest-api-reference ※ gRPCを使うとLNDとアプリの双方向の通信が可能になり便利
2 macaroon LNDへの接続にあたって、アクセス権の認証をするための仕組みが macaroon • cookieみたいなもので、LNDはmacaroonが正しい鍵で署名されていることを検証 • cookieと同様、TLSなどの安全なチャネルを介して送信する必要がある
• macaroonの委譲や、より限定したバージョンの作成も可能 admin.macaroon readonly.macaroon invoice.macaroon すべてのgRPCの読み取り/書き込み権限を付与 (lncliで使われている) すべてのgRPCの読み取り専用のアクセス権を付与 (アプリのモニタリング用途など) インボイス関連のgRPCの読み取り/書き込み権限を付与
3 macaroonを使ったアクセス リクエストヘッダーにmacaroonをセットしてアクセス Grpc-Metadata-macaroon: <macaroonのHEX値> • curlで実行する場合
# curl --header "Grpc-Metadata-macaroon: $(xxd -ps -u -c 1000 <macaroonファイルのパス>)" https://umbrel.local:8080/v1/getinfo ※ xxdコマンドはファイルをHEXダンプするコマンド ◦ オレオレ証明書の場合は、--cacertオプションでLNDのtls.certを指定 --cacert <tls.certのパス>
4 gRPCインターフェース *.protoファイルをダウンロードして各言語用にコンパイルすればコードが生成され利用可能に。 https://github.com/lightningnetwork/lnd/tree/master/lnrpc 各言語でライブラリとして提供されているケースも:
LNDのHTLCイベントをキャプチャするツール: https://github.com/azuchi/lnd-tool require 'lnrpc' lnd = Lnrpc::Client.new({ credentials_path: '/path/to/tls.cert, macaroon_path: '/path/to/admin.macaroon', address: 'host:port' }) lnd.router.subscribe_htlc_events.each do |event| puts event end