mirror of
https://github.com/RoboSats/taptrade-core.git
synced 2025-07-29 14:11:39 +00:00
added roadmap of PTLC's
This commit is contained in:
3
docs/TapTrade_obs/.obsidian/appearance.json
vendored
3
docs/TapTrade_obs/.obsidian/appearance.json
vendored
@ -1,3 +1,4 @@
|
||||
{
|
||||
"accentColor": ""
|
||||
"accentColor": "",
|
||||
"theme": "obsidian"
|
||||
}
|
7
docs/TapTrade_obs/.obsidian/workspace.json
vendored
7
docs/TapTrade_obs/.obsidian/workspace.json
vendored
@ -15,9 +15,9 @@
|
||||
"state": {
|
||||
"file": "Research/Trade Pipelines/new concepts/concept pipeline 1.canvas",
|
||||
"viewState": {
|
||||
"x": 551.6595614843341,
|
||||
"y": 507.31796200242957,
|
||||
"zoom": -0.5733723958333332
|
||||
"x": 1740.5027037159439,
|
||||
"y": 81.67024816929342,
|
||||
"zoom": -0.5999999999999999
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -151,6 +151,7 @@
|
||||
},
|
||||
"active": "bdb9fd88a01a8909",
|
||||
"lastOpenFiles": [
|
||||
"Pasted image 20240605185325.png",
|
||||
"Research/Trade Pipelines/new concepts/concept locking script 1.canvas",
|
||||
"Research/Trade Pipelines/new concepts/concept pipeline 1.canvas",
|
||||
"Research/Trade Pipelines/current trade flow.canvas",
|
||||
|
BIN
docs/TapTrade_obs/Pasted image 20240605185325.png
Normal file
BIN
docs/TapTrade_obs/Pasted image 20240605185325.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 436 KiB |
@ -21,12 +21,30 @@
|
||||
{"id":"9a5c83be6a5d2b73","type":"text","text":"[Making Transaction invalid after certain blockheight - Stackexchange](https://bitcoin.stackexchange.com/questions/123021/make-signed-transaction-invalid-after-specified-time/123029#123029)","x":580,"y":91,"width":340,"height":100},
|
||||
{"id":"b500fab6ba26abf1","type":"text","text":"Maker","x":-710,"y":1210,"width":250,"height":60},
|
||||
{"id":"9b054e655a321517","type":"text","text":"PSBT of contract\nMaker adds escrow input sig\n\nMaker only gets PSBT without the Sig of the Taker, so he can't maliciously hold the tx and publish it at a later point in time.","x":-345,"y":980,"width":295,"height":210},
|
||||
{"id":"345fbda43e40d028","type":"text","text":"Research/use PTLC","x":580,"y":31,"width":250,"height":60,"color":"2"},
|
||||
{"id":"345fbda43e40d028","type":"text","text":"Research/use PTLC","x":580,"y":41,"width":250,"height":50,"color":"2"},
|
||||
{"id":"7916e1f2236a38b6","type":"text","text":"Look into DLC negotiation procedure\nhttps://github.com/discreetlogcontracts/dlcspecs/blob/9cd9148938c616690c79d99ec6f330e213c246c5/Protocol.md","x":5,"y":500,"width":515,"height":140,"color":"4"},
|
||||
{"id":"5e3c3c0695787e9a","type":"text","text":"User (Tor)Browser (Wasm)","x":-720,"y":-69,"width":305,"height":60,"color":"3"},
|
||||
{"id":"483fbdbcc5ea8501","type":"text","text":"I think there could be an advanced mode / external wallet mode where this could be done directly from an external Wallet e.g. Hardware wallet with Sparrow. But it would require lot of copy pasting (signed txs, psbts, addresses). Also there is secret state needed to be saved for MuSig2, this could be downloaded as file or stored encrypted on the coordinator. \n\nFor easy use there would need to be a wallet in RoboSats (BDK) but UI wise this would be either a challenge or a privacy reduction (if you use the same wallet but different Robot). It's also possible to limit the Wallet to one robot so the user must withdraw the sats after the trade (can't import wallet into robosats, only export). I think wallet could also be stored encrypted on coordinator or exported as file/seed.","x":55,"y":-549,"width":660,"height":338},
|
||||
{"id":"f3b7288289dc8954","type":"text","text":"Backend","x":195,"y":-172,"width":250,"height":60,"color":"3"},
|
||||
{"id":"93c73227c82f1a81","type":"text","text":"**Coordinator**\n\nwatches Mempool and Chain, could publish the bond TX. Essentially just to prevent orderbook spam / for skin in the game.\n\n*SIGHASH_ALL | ANYONECANPAY* could make it possible for the coordinator to add inputs up to the height of the bond to push the TX fees without losing capital itself. \nAlso out of band mining would cause a cost for the Maker so there is always a price to being unreliable. \n\nThe Maker could be required to use Inputs at least the value of the trade amount to proof that he owns enough sats to fulfill the trade. Maybe lock the time to invalidate the bond after a certain amount of time.","x":80,"y":-98,"width":500,"height":418}
|
||||
{"id":"93c73227c82f1a81","type":"text","text":"**Coordinator**\n\nwatches Mempool and Chain, could publish the bond TX. Essentially just to prevent orderbook spam / for skin in the game.\n\n*SIGHASH_ALL | ANYONECANPAY* could make it possible for the coordinator to add inputs up to the height of the bond to push the TX fees without losing capital itself. \nAlso out of band mining would cause a cost for the Maker so there is always a price to being unreliable. \n\nThe Maker could be required to use Inputs at least the value of the trade amount to proof that he owns enough sats to fulfill the trade. Maybe lock the time to invalidate the bond after a certain amount of time.","x":80,"y":-98,"width":500,"height":418},
|
||||
{"id":"fdb1893d5a33ab28","type":"text","text":"In Lightning Network","x":960,"y":-211,"width":250,"height":50,"color":"2"},
|
||||
{"id":"5277cd694b86bb6b","type":"text","text":"Alice wants to pay Carol through Bob","x":1380,"y":-211,"width":280,"height":50},
|
||||
{"id":"85b66c760332f3fd","type":"file","file":"Pasted image 20240605185325.png","x":1210,"y":-48,"width":620,"height":548},
|
||||
{"id":"c893eae93673779c","type":"text","text":"LOCK PHASE","x":1860,"y":201,"width":120,"height":50},
|
||||
{"id":"3df70b3ca936442d","type":"text","text":"Maker generates a, b","x":2140,"y":216,"width":240,"height":50},
|
||||
{"id":"13186938fe4262ea","type":"text","text":"Maker locks fund fund with Adaptor Signature with B","x":2500,"y":201,"width":260,"height":79},
|
||||
{"id":"be75b68180f61ad9","type":"text","text":"Maker offers net lightning channel secret \"b\"","x":2900,"y":201,"width":260,"height":79},
|
||||
{"id":"6af43fed8e34e23d","type":"text","text":"This continues till the final node in the lightning channel offers secret to Robosats","x":3300,"y":181,"width":280,"height":120},
|
||||
{"id":"fcc7765243fc3246","type":"text","text":"Maker reveals timelock hash and claims back his penalty","x":3060,"y":714,"width":300,"height":65},
|
||||
{"id":"50d4e3ecf700274e","type":"text","text":"? sends (a+b) to Robosats and it claims the penalty","x":3060,"y":435,"width":300,"height":65},
|
||||
{"id":"d6de59256cbb3712","x":2920,"y":500,"width":110,"height":50,"type":"text","text":"YES"},
|
||||
{"id":"d9c194fdd3f4c963","type":"text","text":"NO","x":2920,"y":664,"width":110,"height":50},
|
||||
{"id":"119047b4def84c19","type":"text","text":"Maker sends (a+b) to ?","x":2120,"y":569,"width":240,"height":50},
|
||||
{"id":"4db362c6f7e5620f","type":"text","text":"TRIGGER = Maker doesn't respond/ anything else","x":2555,"y":554,"width":290,"height":80},
|
||||
{"id":"5f822a5a69af894a","type":"text","text":"UNLOCK PHASE","x":1860,"y":554,"width":160,"height":50},
|
||||
{"id":"c8b7d0bc62b28e03","type":"text","text":"Robosats generates z","x":2140,"y":-73,"width":240,"height":50},
|
||||
{"id":"a53320bd938fc27c","type":"text","text":"Sends invoice to Maker","x":2460,"y":-73,"width":240,"height":50},
|
||||
{"id":"918eb7ddcf4cfa5f","type":"text","text":"SETUP PHASE","x":1860,"y":-73,"width":120,"height":50}
|
||||
],
|
||||
"edges":[
|
||||
{"id":"77d1ff9130716b53","fromNode":"dba9c662192cf5bb","fromSide":"right","toNode":"93c73227c82f1a81","toSide":"left"},
|
||||
@ -35,6 +53,17 @@
|
||||
{"id":"bd911b47450ec601","fromNode":"bdce49ceea829893","fromSide":"right","toNode":"90704c232582cd52","toSide":"left"},
|
||||
{"id":"1f8f7366b09492f1","fromNode":"90704c232582cd52","fromSide":"left","toNode":"b500fab6ba26abf1","toSide":"right"},
|
||||
{"id":"d61c23261f820a35","fromNode":"b500fab6ba26abf1","fromSide":"right","toNode":"de1642ddfdfed1df","toSide":"left","label":"signed psbt"},
|
||||
{"id":"e4df63e127b5b52a","fromNode":"51e650a981068490","fromSide":"left","toNode":"de1642ddfdfed1df","toSide":"right"}
|
||||
{"id":"e4df63e127b5b52a","fromNode":"51e650a981068490","fromSide":"left","toNode":"de1642ddfdfed1df","toSide":"right"},
|
||||
{"id":"d96e2c3ce03c2c2c","fromNode":"345fbda43e40d028","fromSide":"right","toNode":"fdb1893d5a33ab28","toSide":"left"},
|
||||
{"id":"faa64d998859087c","fromNode":"fdb1893d5a33ab28","fromSide":"right","toNode":"5277cd694b86bb6b","toSide":"left"},
|
||||
{"id":"eb5e7ef359d64c1d","fromNode":"c8b7d0bc62b28e03","fromSide":"right","toNode":"a53320bd938fc27c","toSide":"left"},
|
||||
{"id":"f5f5f89f53d30cdb","fromNode":"a53320bd938fc27c","fromSide":"bottom","toNode":"3df70b3ca936442d","toSide":"top"},
|
||||
{"id":"16004aafc5149992","fromNode":"3df70b3ca936442d","fromSide":"right","toNode":"13186938fe4262ea","toSide":"left"},
|
||||
{"id":"fc4a53476554ee6a","fromNode":"13186938fe4262ea","fromSide":"right","toNode":"be75b68180f61ad9","toSide":"left"},
|
||||
{"id":"ebbf0134ce7a0d33","fromNode":"be75b68180f61ad9","fromSide":"right","toNode":"6af43fed8e34e23d","toSide":"left"},
|
||||
{"id":"56e698803b4f73cb","fromNode":"119047b4def84c19","fromSide":"right","toNode":"4db362c6f7e5620f","toSide":"left"},
|
||||
{"id":"c3f0911c3d3ec5ba","fromNode":"4db362c6f7e5620f","fromSide":"right","toNode":"50d4e3ecf700274e","toSide":"left"},
|
||||
{"id":"086c90642df1fa3a","fromNode":"fcc7765243fc3246","fromSide":"left","toNode":"4db362c6f7e5620f","toSide":"right"},
|
||||
{"id":"012400747b7e0d17","fromNode":"6af43fed8e34e23d","fromSide":"bottom","toNode":"119047b4def84c19","toSide":"top"}
|
||||
]
|
||||
}
|
Reference in New Issue
Block a user