ElementsProject / ElementsProject/peerswap

Maker ignores premium set in SwapInAgreement message

Open
#151 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
128
Forks
84
Avg merge
3h 1m
Merged PRs (30d)
1

Description

I'm doing integration testing between PeerSwap CLN commit d1d88e456f9b631264f03bb82aa8044e36aad46f and Eclair Swap Plugin SNAPSHOT 49823db. This testing was done with regtest.

Setup: Alice = Eclair node, Carol = CLN node

Repo:
- Carol requests swap with Alice:
``` bash
% carol-clightning-cli peerswap-swap-in 100001 $SCID_AC btc true
{
"id": "a4cdf6c2d771c3a0dbfcda0ed96b54cf3c6fa5f2c419772af8e80a62ed359354",
"created_at": 1667829916,
"asset": "btc",
"type": "swap-in",
"role": "sender",
"state": "State_SwapInSender_SendTxBroadcastedMessage",
"initiator_node_id": "02dc9302720a5a6f3269bf2c71443a03e42d860294bf8d3200824b6cc649db5cff",
"peer_node_id": "0378c9bb94dd3fd44902fdafbd4dc3fd7d97162b09a9fe424e066b462838555cbf",
"amount": 100001,
"channel_id": "9471x1x0",
"opening_tx_id": "7666c19197ebd0ed089a4803edf8018f4314fe2789a940251a2393a08b125be2",
"lnd_chan_id": 10413474626732032
}
```

- Negotiation proceeds to point where Alice validates the OpeningTx and fails because the output amount is 100001, even though Alice requested a premium of 22237 sats, which is computed by Alice as `feeRatePerKw * claimByInvoiceTxWeight / 1000` .

- The opening tx sent by CLN was:
```bash 020000000001025ffba43eba3d53bad1b270e3df5370f6f06803e07ea41f6788dbe3fe4270866c0000000000fdffffffefbf3d1dd72de6fe20495931d707e4f75754c30baa7834a2a760645c232e51c00000000000fdffffff0211f0000000000000160014cb3de0e289cf99e9697067e3c59539e369d86cc4a18601000000000022002052d317fc35907954aae8c225a2f9ec6957a2da61cb1d584eac8ecf03592d807c0247304402201ea1b1f96aa020f1e0edfec76b649837dc03d47783e2b0689b8fd248032b7295022034fe920ae639505e3cb075aa35b3911bfcf71db3befc2eaced0b3ffbcde30cb40121026bda48ab1f68d596989232286401b5510e1a42917b1af55b0a25fed9aae618c902473044022028f3bf7117103412f6e67627668dee4e28521e75709c466a563765100d382ba502204d7714226c01e9477ab3afc5fd67cb0365f5eec7896b671c692406127088a4ac0121036788e045fbb5fad1b413ecf1dc92ddc9046184a63f6ed723278bfd664ae99fd6d5260000
{
"txid": "7666c19197ebd0ed089a4803edf8018f4314fe2789a940251a2393a08b125be2",
"hash": "ecc13ce77fc520ca3b376c465f744167a7b4920896b99b2bd0afa6c016c2dcb5",
"version": 2,
"size": 382,
"vsize": 220,
"weight": 880,
"locktime": 9941,
"vin": [
{
"txid": "6c867042fee3db88671fa47ee00368f0f67053dfe370b2d1ba533dba3ea4fb5f",
"vout": 0,
"scriptSig": {
"asm": "",
"hex": ""
},
"txinwitness": [
"304402201ea1b1f96aa020f1e0edfec76b649837dc03d47783e2b0689b8fd248032b7295022034fe920ae639505e3cb075aa35b3911bfcf71db3befc2eaced0b3ffbcde30cb401",
"026bda48ab1f68d596989232286401b5510e1a42917b1af55b0a25fed9aae618c9"
],
"sequence": 4294967293
},
{
"txid": "c0512e235c6460a7a23478aa0bc35457f7e407d731594920fee62dd71d3dbfef",
"vout": 0,
"scriptSig": {
"asm": "",
"hex": ""
},
"txinwitness": [
"3044022028f3bf7117103412f6e67627668dee4e28521e75709c466a563765100d382ba502204d7714226c01e9477ab3afc5fd67cb0365f5eec7896b671c692406127088a4ac01",
"036788e045fbb5fad1b413ecf1dc92ddc9046184a63f6ed723278bfd664ae99fd6"
],
"sequence": 4294967293
}
],
"vout": [
{
"value": 0.00061457,
"n": 0,
"scriptPubKey": {
"asm": "0 cb3de0e289cf99e9697067e3c59539e369d86cc4",
"desc": "addr(bcrt1qev77pc5fe7v7j6tsvl3ut9feud5asmxyjlnaj5)#fhsgywq8",
"hex": "0014cb3de0e289cf99e9697067e3c59539e369d86cc4",
"address": "bcrt1qev77pc5fe7v7j6tsvl3ut9feud5asmxyjlnaj5",
"type": "witness_v0_keyhash"
}
},
{
"value": 0.00100001,
"n": 1,
"scriptPubKey": {
"asm": "0 52d317fc35907954aae8c225a2f9ec6957a2da61cb1d584eac8ecf03592d807c",
"desc": "addr(bcrt1q2tf30lp4jpu4f2hgcgj6970vd9t69knpevw4sn4v3m8sxkfdsp7qgkq236)#ddqx30u0",
"hex": "002052d317fc35907954aae8c225a2f9ec6957a2da61cb1d584eac8ecf03592d807c",
"address": "bcrt1q2tf30lp4jpu4f2hgcgj6970vd9t69knpevw4sn4v3m8sxkfdsp7qgkq236",
"type": "witness_v0_scripthash"
}
}
]
}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.