Commit 3ddac04
committed
Verify that an HTLC's PaymentContext is authentic
When receiving a payment over a BlindedPaymentPath, a PaymentContext is
included but was not authenticated. The previous commit adds an HMAC of
the PaymentContext to the payment::ReceiveTlvs and the nonce used to
create the HMAC. This commit pipes this data through to ChannelManager
in order to verify the PaymentContext's authenticity. This prevents a
malicious actor from for forging it.1 parent d708afc commit 3ddac04
File tree
6 files changed
+77
-17
lines changed- lightning/src
- blinded_path
- ln
6 files changed
+77
-17
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
638 | 638 | | |
639 | 639 | | |
640 | 640 | | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
641 | 644 | | |
642 | 645 | | |
643 | 646 | | |
644 | 647 | | |
645 | 648 | | |
| 649 | + | |
646 | 650 | | |
647 | 651 | | |
648 | 652 | | |
| |||
691 | 695 | | |
692 | 696 | | |
693 | 697 | | |
| 698 | + | |
694 | 699 | | |
695 | 700 | | |
696 | 701 | | |
| |||
710 | 715 | | |
711 | 716 | | |
712 | 717 | | |
| 718 | + | |
713 | 719 | | |
714 | 720 | | |
715 | 721 | | |
| |||
766 | 772 | | |
767 | 773 | | |
768 | 774 | | |
| 775 | + | |
769 | 776 | | |
770 | 777 | | |
771 | 778 | | |
| |||
819 | 826 | | |
820 | 827 | | |
821 | 828 | | |
| 829 | + | |
822 | 830 | | |
823 | 831 | | |
824 | 832 | | |
| |||
876 | 884 | | |
877 | 885 | | |
878 | 886 | | |
| 887 | + | |
879 | 888 | | |
880 | 889 | | |
881 | 890 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
10 | 11 | | |
| 12 | + | |
11 | 13 | | |
12 | 14 | | |
13 | 15 | | |
| |||
17 | 19 | | |
18 | 20 | | |
19 | 21 | | |
20 | | - | |
| 22 | + | |
21 | 23 | | |
22 | 24 | | |
| 25 | + | |
23 | 26 | | |
24 | 27 | | |
25 | 28 | | |
26 | 29 | | |
27 | 30 | | |
28 | 31 | | |
29 | 32 | | |
| 33 | + | |
30 | 34 | | |
31 | 35 | | |
32 | 36 | | |
| |||
69 | 73 | | |
70 | 74 | | |
71 | 75 | | |
| 76 | + | |
| 77 | + | |
72 | 78 | | |
73 | 79 | | |
74 | 80 | | |
75 | 81 | | |
76 | 82 | | |
77 | 83 | | |
78 | 84 | | |
79 | | - | |
| 85 | + | |
| 86 | + | |
80 | 87 | | |
| 88 | + | |
81 | 89 | | |
82 | 90 | | |
83 | 91 | | |
| |||
86 | 94 | | |
87 | 95 | | |
88 | 96 | | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
89 | 106 | | |
90 | 107 | | |
91 | 108 | | |
| |||
116 | 133 | | |
117 | 134 | | |
118 | 135 | | |
| 136 | + | |
119 | 137 | | |
120 | 138 | | |
121 | 139 | | |
122 | 140 | | |
123 | 141 | | |
124 | 142 | | |
125 | | - | |
| 143 | + | |
| 144 | + | |
126 | 145 | | |
127 | 146 | | |
128 | 147 | | |
| |||
160 | 179 | | |
161 | 180 | | |
162 | 181 | | |
| 182 | + | |
163 | 183 | | |
164 | 184 | | |
165 | 185 | | |
166 | 186 | | |
167 | 187 | | |
168 | 188 | | |
169 | | - | |
| 189 | + | |
| 190 | + | |
170 | 191 | | |
171 | 192 | | |
172 | 193 | | |
| |||
302 | 323 | | |
303 | 324 | | |
304 | 325 | | |
305 | | - | |
| 326 | + | |
306 | 327 | | |
307 | 328 | | |
308 | 329 | | |
| |||
1375 | 1396 | | |
1376 | 1397 | | |
1377 | 1398 | | |
| 1399 | + | |
1378 | 1400 | | |
1379 | 1401 | | |
1380 | 1402 | | |
1381 | 1403 | | |
1382 | 1404 | | |
1383 | 1405 | | |
1384 | | - | |
| 1406 | + | |
| 1407 | + | |
1385 | 1408 | | |
1386 | 1409 | | |
1387 | 1410 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
198 | 198 | | |
199 | 199 | | |
200 | 200 | | |
| 201 | + | |
| 202 | + | |
201 | 203 | | |
202 | 204 | | |
203 | 205 | | |
| |||
5995 | 5997 | | |
5996 | 5998 | | |
5997 | 5999 | | |
5998 | | - | |
| 6000 | + | |
5999 | 6001 | | |
6000 | 6002 | | |
6001 | 6003 | | |
6002 | 6004 | | |
6003 | | - | |
| 6005 | + | |
6004 | 6006 | | |
6005 | 6007 | | |
6006 | 6008 | | |
6007 | 6009 | | |
6008 | 6010 | | |
6009 | 6011 | | |
6010 | | - | |
| 6012 | + | |
6011 | 6013 | | |
6012 | 6014 | | |
6013 | 6015 | | |
| |||
6020 | 6022 | | |
6021 | 6023 | | |
6022 | 6024 | | |
6023 | | - | |
| 6025 | + | |
6024 | 6026 | | |
6025 | 6027 | | |
6026 | 6028 | | |
| |||
6205 | 6207 | | |
6206 | 6208 | | |
6207 | 6209 | | |
| 6210 | + | |
| 6211 | + | |
| 6212 | + | |
| 6213 | + | |
| 6214 | + | |
| 6215 | + | |
| 6216 | + | |
| 6217 | + | |
| 6218 | + | |
| 6219 | + | |
6208 | 6220 | | |
6209 | 6221 | | |
6210 | 6222 | | |
| |||
12363 | 12375 | | |
12364 | 12376 | | |
12365 | 12377 | | |
| 12378 | + | |
12366 | 12379 | | |
12367 | 12380 | | |
12368 | 12381 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
22 | 23 | | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| 28 | + | |
27 | 29 | | |
28 | 30 | | |
| 31 | + | |
29 | 32 | | |
30 | 33 | | |
31 | 34 | | |
| |||
157 | 160 | | |
158 | 161 | | |
159 | 162 | | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
160 | 167 | | |
161 | 168 | | |
162 | 169 | | |
163 | 170 | | |
164 | 171 | | |
165 | 172 | | |
166 | | - | |
| 173 | + | |
| 174 | + | |
167 | 175 | | |
168 | 176 | | |
169 | 177 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1745 | 1745 | | |
1746 | 1746 | | |
1747 | 1747 | | |
| 1748 | + | |
| 1749 | + | |
1748 | 1750 | | |
1749 | 1751 | | |
1750 | 1752 | | |
| 1753 | + | |
1751 | 1754 | | |
1752 | 1755 | | |
1753 | 1756 | | |
| |||
1791 | 1794 | | |
1792 | 1795 | | |
1793 | 1796 | | |
| 1797 | + | |
1794 | 1798 | | |
1795 | 1799 | | |
1796 | 1800 | | |
| |||
2908 | 2912 | | |
2909 | 2913 | | |
2910 | 2914 | | |
2911 | | - | |
| 2915 | + | |
2912 | 2916 | | |
2913 | 2917 | | |
2914 | 2918 | | |
| |||
2921 | 2925 | | |
2922 | 2926 | | |
2923 | 2927 | | |
| 2928 | + | |
2924 | 2929 | | |
2925 | 2930 | | |
2926 | 2931 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
135 | 135 | | |
136 | 136 | | |
137 | 137 | | |
138 | | - | |
| 138 | + | |
| 139 | + | |
139 | 140 | | |
140 | 141 | | |
141 | 142 | | |
142 | 143 | | |
143 | 144 | | |
144 | 145 | | |
145 | | - | |
| 146 | + | |
146 | 147 | | |
147 | 148 | | |
148 | 149 | | |
149 | | - | |
| 150 | + | |
150 | 151 | | |
151 | 152 | | |
152 | 153 | | |
| |||
161 | 162 | | |
162 | 163 | | |
163 | 164 | | |
164 | | - | |
| 165 | + | |
165 | 166 | | |
166 | 167 | | |
167 | 168 | | |
| |||
252 | 253 | | |
253 | 254 | | |
254 | 255 | | |
| 256 | + | |
255 | 257 | | |
256 | 258 | | |
257 | 259 | | |
| |||
0 commit comments