Blind node id • ecnrypted_blob Blinded node B • Blind node id • ecnrypted_blob Blinded node C • Blind node id • ecnrypted_blob Blinded node D • Blind node id • ecnrypted_data 1. Introduction Pointから自分までの経路を選択
2. ブラインドに使用する一次鍵を生成
3. ブラインドルートの各ノードに対し、
Blind node idとencrypted_dataを作成
Blind node idは、受信者とノードの共有シークレットと
ノードの公開鍵から計算される
B(i) = HMAC256(“blind_node_id”, ss(i)) * Pi
(共有シークレットは一次鍵と node idから導出)
encrypted_dataには
a. 支払いを転送するノードの short channel id
b. 支払いのコンテキストを表すデータ
などが含まれる。
4. ブラインドデータと、最初の一次鍵、 Introduction Pointを
送信者に送信する。
E0 = e0 * G
Blind Route E0 = e0 * G
Blind Route ※ Blind node idの秘密鍵を知るのはブラインドノードのみ
※ encrypted_blobは共有シークレットから導出した鍵で暗号化される