Commit Graph

4277 Commits

Author SHA1 Message Date
SomberNight
1fc0b1378d calc short_channel_id after funding locked 2018-07-13 16:43:24 +02:00
Janus
a9cfa65f64 lnbase: initial 'payment to remote' attempt 2018-07-13 16:43:24 +02:00
Janus
3d3fe9976c lnbase: formatting, remove imports 2018-07-13 16:43:24 +02:00
Janus
39df2a50b7 lnbase: verify commitment tx'es again 2018-07-13 16:43:24 +02:00
Janus
783209e951 lnbase: infinite amount of incoming payments 2018-07-13 16:43:24 +02:00
Janus
6c96f3a646 lnbase: two payments working, temporarily disable sig check 2018-07-13 16:43:24 +02:00
Janus
39000763ba lnbase: store remote revocation store, don't store all remote revocation points, verify ctn numbers in reestablish 2018-07-13 16:43:24 +02:00
Janus
fe40f0a275 lnbase: add RevocationStore test, remove unnecessary lnd helper functions 2018-07-13 16:43:24 +02:00
Janus
15f5d6d603 lnbase: compact commitment secret storage 2018-07-13 16:43:24 +02:00
Janus
a509852b36 lnbase: no negative commitment number nonsense 2018-07-13 16:43:24 +02:00
Janus
69f5adea2f lnbase: move channel commitment number increment to function 2018-07-13 16:43:24 +02:00
Janus
a33d74420a lnbase: receive repeated payments 2018-07-13 16:43:24 +02:00
Janus
1643cac047 tests: don't use default lightning_peers in online test 2018-07-13 16:43:24 +02:00
Janus
bd7762186c lnbase: channel reestablishment working 2018-07-13 16:43:24 +02:00
SomberNight
109d672bdb bolt-04: implement processing of onion packets 2018-07-13 16:43:24 +02:00
SomberNight
a3e1e5dd47 minor clean-up of prev. util.xor_bytes 2018-07-13 16:43:24 +02:00
SomberNight
2570fd12f8 implement bolt-04 onion packet construction 2018-07-13 16:43:24 +02:00
Janus
b94f93f8b9 lnbase: save channel details in wallet, enable running online test with reestablishment_mode 2018-07-13 16:43:24 +02:00
Janus
0e9f4c4120 lnbase: move waiting for funding_locked to new function, make function for signing and sig conversion 2018-07-13 16:43:24 +02:00
Janus
1d821cb2c6 lnbase: make function for building htlc_tx depending on if it is for_us/we_receive 2018-07-13 16:43:24 +02:00
Janus
572d01d0c5 lnbase: verify their htlc signature 2018-07-13 16:43:24 +02:00
ThomasV
063c9b2e28 lnbase: standardize to_bytes calls 2018-07-13 16:43:24 +02:00
Janus
50f3c0dd00 lnbase: fix custom local to_self_delay, use node privkey derived from timestamp in online test 2018-07-13 16:43:24 +02:00
Janus
177df75d87 test_lnbase_online: pass password=None to channel_establishment_flow 2018-07-13 16:43:24 +02:00
Janus
73870d0457 lnbase: avoid copying variables, insert newlines 2018-07-13 16:43:24 +02:00
ThomasV
5ebc328ae6 lnbase: derive keys from wallet keystore 2018-07-13 16:43:24 +02:00
Janus
ff7a73ce19 lnbase: avoid local variables, remote useless comments, name basepoints as such 2018-07-13 16:43:24 +02:00
Janus
0a46b1c335 lnbase: set new field in Transaction instead of returning a tuple in make_commitment 2018-07-13 16:43:24 +02:00
Janus
67c5a8ba16 lnbase: set to_self_delay back to 144, defer cltv_expiry problem 2018-07-13 16:43:24 +02:00
Janus
e4434d530d lnbase: use correct delay 2018-07-13 16:43:24 +02:00
Janus
28a6a3c1da lnbase: avoid code duplication, return htlc outpoint dict in make_commitment 2018-07-13 16:43:24 +02:00
Janus
188588936a lnbase: simplify commitment transaction building with open channel 2018-07-13 16:43:24 +02:00
Janus
9a6646c780 lnbase: organize channel data 2018-07-13 16:43:24 +02:00
Janus
07624960e5 lnbase: allow passing KeypairGenerator to channel_establishment_flow, fix derive_privkey 2018-07-13 16:43:24 +02:00
Janus
b433fb24bd lnbase: receiving invoice payment works 2018-07-13 16:43:24 +02:00
Janus
dc5e3e9cfa lnbase: commitment_signed, revoke_and_ack now accepted without errors 2018-07-13 16:43:24 +02:00
SomberNight
0a55216045 bitcoin.py: SCRIPT-related clean-up. transaction.py: construct_witness 2018-07-13 16:43:24 +02:00
Janus
e77c5b3c30 lnbase: fix their new commitment transaction (htlc tx construction still incorrect) 2018-07-13 16:43:24 +02:00
ThomasV
38f3db3712 lnbase: fix bug in message parsing 2018-07-13 16:43:24 +02:00
ThomasV
ab715438c6 follow up b5eb7dd7683f24f03c80ab8f612658b5f3966eb1 2018-07-13 16:43:24 +02:00
Janus
fdef6d5987 lnbase: attempt at making htlc_signature to send (currently remote fails due to wrong num_htlcs in commitment_signed) 2018-07-13 16:43:24 +02:00
ThomasV
612f6958fe simplification 2018-07-13 16:43:24 +02:00
Janus
3b79d58237 lnbase: add TODO explaining how to verify htlc_signature given to us 2018-07-13 16:43:24 +02:00
Janus
12457dea3d lnbase: verification of new local commitment working 2018-07-13 16:43:24 +02:00
Janus
0d1a9f6e6c lnbase: derive next keys when making updated local commitment transaction 2018-07-13 16:43:24 +02:00
Janus
bef837de85 lnbase: try to receive payment, work on commitment tx with htlcs 2018-07-13 16:43:24 +02:00
Janus
0564d93379 lnbase: handle commitment transaction update (receive funds, not working yet) 2018-07-13 16:43:24 +02:00
Janus
c21d2159db simnet/testnet support in bolt11, set max-htlc-value-in-flight 2018-07-13 16:43:24 +02:00
SomberNight
c1fbd55dfe transaction.py: sign_txin. allow override for get_preimage_script.
test_commitment_tx_with_all_five_HTLCs_untrimmed_minimum_feerate now passes
2018-07-13 16:43:24 +02:00
ThomasV
e7e3558fba redundant: you subscribed only to 'updated' 2018-07-13 16:43:24 +02:00
ThomasV
eb6be6d77d follow-up prev commit 2018-07-13 16:43:24 +02:00
ThomasV
52b94035d9 lnbase: verify remote signature 2018-07-13 16:43:24 +02:00
SomberNight
e34d6d0885 channel_establishment_flow: use get_per_commitment_secret_from_seed 2018-07-13 16:43:24 +02:00
Janus
0d40f06fcc lnbase: improve htlc_tx generation (only localsig wrong) 2018-07-13 16:43:24 +02:00
SomberNight
f3d9474c06 get_per_commitment_secret_from_seed: small clean-up 2018-07-13 16:43:24 +02:00
Janus
ba265da02a fix derive_secret 2018-07-13 16:43:24 +02:00
SomberNight
3a5e3f19db get_per_commitment_secret_from_seed (not working yet) 2018-07-13 16:43:24 +02:00
Janus
e0d28e3f6e lnbase: avoid race while waiting for funding_locked, wait for un-reversed hash 2018-07-13 16:43:24 +02:00
Janus
af8374b02e complete bolt11 port to ecdsa instead of secp256k1 2018-07-13 16:43:24 +02:00
SomberNight
527712df48 channel_establishment_flow: wait for confirmations of funding txn 2018-07-13 16:43:24 +02:00
ThomasV
82146871eb add processing flow for funding_locked 2018-07-13 16:43:24 +02:00
ThomasV
64c8c74445 lnbase: fix parameters to make_commitment in htlc test 2018-07-13 16:43:24 +02:00
SomberNight
1bd4b5e73e transaction.py: shortcut witness/scriptSig serialisation 2018-07-13 16:43:24 +02:00
Janus
c6e621a910 lnbase: add some comments 2018-07-13 16:43:24 +02:00
Janus
bb9938c52e lightning-hub: update rpc stubs, do not ignore them in gitignore 2018-07-13 16:43:24 +02:00
ThomasV
836fae809c lnbase: fix initial commitment transaction 2018-07-13 16:43:24 +02:00
SomberNight
e7bae0fe5d refactor storage of channels, path finding 2018-07-13 16:43:24 +02:00
Janus
e6b22e9d56 avoid duplicating bech32 module 2018-07-13 16:43:24 +02:00
Janus
c5a9b2d19a lnbase: more work on make_htlc_tx 2018-07-13 16:43:24 +02:00
Janus
80c8ea15e0 lnbase: make_htlc_tx 2018-07-13 16:43:24 +02:00
ThomasV
f4c7702c0a fix: use remote_per_commitment_point 2018-07-13 16:43:24 +02:00
ThomasV
205cd259fd lnbase: derive blinded pubkey 2018-07-13 16:43:24 +02:00
ThomasV
0c8a6e535e lnbase: fix variable name 2018-07-13 16:43:24 +02:00
ThomasV
3b3732e82d lnbase: add privkey derivation 2018-07-13 16:43:24 +02:00
ThomasV
b9633896da add test for key derivation 2018-07-13 16:43:24 +02:00
ThomasV
d5db39ce27 lnbase: key derivation (WIP) 2018-07-13 16:43:24 +02:00
Janus
66d139b515 lnbase: test signing of first htlc test case 2018-07-13 16:43:24 +02:00
Janus
53ddc373d5 lnbase: make_received_htlc 2018-07-13 16:43:24 +02:00
ThomasV
0edba56315 fix hash in make_offered_htlc 2018-07-13 16:43:24 +02:00
ThomasV
a14b54dbe5 cleanup lnbase tests 2018-07-13 16:43:24 +02:00
Janus
d6145d0685 lightning-hub: remove path hack, use relative imports 2018-07-13 16:43:24 +02:00
SomberNight
9796ef264e naive route finding 2018-07-13 16:43:24 +02:00
Janus
d3d23066e9 lnbase: offered htlc script construction 2018-07-13 16:43:24 +02:00
ThomasV
02d272d790 use acceptable variable names 2018-07-13 16:43:24 +02:00
ThomasV
1ded2fd7b2 lightning: separate testing from main code 2018-07-13 16:43:24 +02:00
ThomasV
5a3cbc0907 lightning: store network view 2018-07-13 16:43:24 +02:00
ThomasV
85e6708b44 lnbase: parse ipv6, fix transport bug 2018-07-13 16:43:24 +02:00
ThomasV
1d6527c2ec lnbase: fix read_message, reduce verbosity 2018-07-13 16:43:24 +02:00
ThomasV
e6c3b27605 lnbase: implement key rotation, request initial sync in localfeatures 2018-07-13 16:43:24 +02:00
ThomasV
dcd4ea23db lnbase: verify signature in node_announcement 2018-07-13 16:43:24 +02:00
SomberNight
47ed815882 bitcoin.py: implement add_number_to_script. fix CSV arg in make_commitment. 2018-07-13 16:43:24 +02:00
ThomasV
13cb82a203 lnbase: fix test 2018-07-13 16:43:24 +02:00
SomberNight
905998e87a implement script_num_to_hex. fix encoding of argument for CSV in make_commitment 2018-07-13 16:43:24 +02:00
SomberNight
f1017b9ed7 fixes for make_commitment, but still incorrect destination address (csv arg?) 2018-07-13 16:43:24 +02:00
ThomasV
1d319ff22f lnbase: fix tx amounts 2018-07-13 16:43:24 +02:00
Janus
63e345910e lightning-hub: include ln relative to current directory 2018-07-13 16:43:24 +02:00
Janus
446b5c9f45 lnbase_test: add first commitment tx with 5 htlcs test 2018-07-13 16:43:24 +02:00
ThomasV
005f6165fa lnbase: fix locktime and nsequence 2018-07-13 16:43:24 +02:00
Janus
a543ec27fb lnbase_test: insert remote_signature and compare fields independently 2018-07-13 16:43:24 +02:00
ThomasV
5aba0b9538 lnbase: create unit test for commitment tx 2018-07-13 16:43:24 +02:00