Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Changing React application structure to handle concurrency * Changing React application structure to handle concurrency * Changing React application structure to handle concurrency * add token server * fixes * Remove thunks * Improve backup transactions database and view * Improve GUI * Fix some warnings * Fix some warnings * Improve update function * Improve GUI * Remove DB transaction to avoid race condition * config * config * add token server * Update tokens.md * Update Token struct * Add WASM packages * Improve UI * Change react-app config file * chore: add changes to get locofy-ui working * chore: add key to wizard * chore: add deposit process ui * chore: add token ui logic * chore: huge locofy ai changes, remove old code as wasn't scalable, learned new locofy formats * chore: fix up icons * chore: hook token info card and deposit page * chore: update token card UI * chore: add more validation to deposit process, and modal windows * chore: update deposit pages * add expiry time * fix * fix * chore: finish the tab ui logic * chore: add changes to deposit, hook up live methods to the deposit process, add loading spinners and validation * add key check * fix serialisation * chore: add token insertion into wallet object, various other changes, wasm error in deposit 2 * chore: fix wallet load code * chore: add back in validation for wizard page 2, cleanup the main header panel ui * chore: refactor, add a logged in wallet hook, add validation to wallet page 1 * chore: show seed key in wizard states * chore: fix error if coins / activities is null * Modify Token struct * chore: fix error message ordering in wizard page * chore: move order of destructure variable in main page * chore: fix coin item, display some info to user about their statecoin * chore: add changes to main header panel, add up btc values * chore: fix deposit addresses * chore: change to testnet server, add withdraw ui components * chore: fix more withdrawal logic, fix bug in deposit 3 page * chore: do not show withdrawn coins * chore: add send page and logic * chore: fix receive page * chore: fix activities table * chore: fix some navigation errors and settings page errors * Add Settings property to wallet * chore: add password encrypted db wallets, add error message handling for it, remove certain coins from UI * chore: add backup from file/load into db * chore: add changes to main load wallet * chore: get latest password * chore: change settings page * chore: remove manage transactions from settings page as will be in modal * chore: add settings ui hooked with redux state and notifications * chore: add the reloading of wallets within load wallet page * chore: remove debugging, add check on wizard for encrypted wallets instead of live wallets * chore: fix loading from backup file to include backup tx * chore: add more responsive main bar page, and add modal ui * chore: fix coin modal and help page * chore: remove amount * chore: downgrade sql * chore: enable debug mode * chore: replace icon of app * chore: huge fix for resources in wallet * chore: add build * chore: add dev branch * chore: fix clearnet config issues, start a build * chore: change actions * chore: remove mainnet * chore: remove mainnet * chore: change github actions * chore: change app icon * chore: change app icon * chore: remove unused files * version: update to 0.1.1 * DB file path * Update atomic_transfer.md * Update atomic_transfer.md typo * Update atomic_transfer.md Fixed typo * Update atomic_transfer.md * Update protocol.md * Update transfer_sender_sequence.md * Update transfer_receiver_sequence.md * Update transfer_sender_sequence.md * Update transfer_receiver_sequence.md * Update protocol.md * Add ChaCha20-Poly1305 encryption scheme This commit adds ChaCha20-Poly1305 algorithm to be used to encrypt any enclave data instead of using the SGX built-in functions. This way, the data can be decrypted on another machine as long the same encryption key be used. SGX functions are still used to seal and unseal the encryption key. * Add password to add-mnemonic call * Add Dockerfiles to SGX SIM mode * Add docker files to the server * Update protocol.md * Update README.md * Update deposit_sequence.md * Update transfer_sender_sequence.md * Update transfer_receiver_sequence.md * Add docker files to the enclave - HW mode * Remove r2 and blind commitments * Change HRP to 'ml' and 'tml' * Add address validation and remove standalone rust client * Update WASM and rename lib * Update atomic_transfer.md * Update atomic_transfer.md * Add UniFFI * Re-add nodejs client * Add kotlin client * Use TransferReceiverPostResponsePayload * Add Atomic transfer * Use statechain_info to verify transfers * Add automatic seed generation and replication * Update react-app package.json * Increase the maximum amount of time to spend waiting for a connection to 30s * Allow coin to be withdrawn if in IN_TRANSFER status * Fix minor errors regarding IN_TRANSFER status * Update Kotlin client * fix: server config with env for mercury & token server * feat: add docker build for github actions * feat: add dev branch to yaml * fix: token server port * fix: expose port in dockerfile for token-server * fix: move Rocket.toml from sub folder to parent folder * fix: add tls feature to sqlx * fix: route for endpoint /info * feat: add explorer * feat: add keylist cronjob * fix: version for docker images in ci/cd * fix: add dev2 branch to ci/cd * fix: import error with token server * fix: mercury server start cmd * fix: start cmd for mercury server * debug: mercury server dockerfile * fix: config for mercury and token server * fix: mercury server dockerfile * fix: dockerfile for mercury server * Fix the mainnet address conversion * Add address reuse functionality * Create rust client lib * Create nodejs client lib * Update ECIES package and restructure project folders * Add a new test file that uses the nodejs lib * Fix docker error preventing Mercury server from starting * Move signature validation from rust client lib to Mercury lib * Refactor `clients/libs/rust/src/transfer_receiver.rs`. No change in behavior * Use `validateSignatureScheme` in `clients/libs/nodejs/transfer_receive.js` * Use `validateSignatureScheme` in `clients/apps/kotlin/TransferReceive.kt` * Add web client lib * Add `max_fee_rate` setting to rust lib * Add `max_fee_rate` setting to nodejs lib * Create client_guide.md * Add `max_fee_rate` setting to web lib * Update client_guide.md * Update client_guide.md * Update client_guide.md * Add `max_fee_rate` setting to Kotlin client * Add multiple enclave support * Remove outdated react-app * Handle fee rate < 0 in broadcast command * Feat/fee unit * Add integration tests on regtest mode ------- Co-authored-by: DhananjayPurohit <[email protected]> * Add Lightning Latch atomic transfer * Improve transfer message verification * Add basic Rust integration tests * Add `batchtimeout` to `/info/config` * fix: directory for Rocket.toml * feat: add tests for coin expiry * fix: add test for transfer-sender that make coin expired by sending * fix: assertion for broadcast tx * fix: add dev3 for integration tests * Add TB02 - Transfer Address Reuse * Add TM01 - Sender Double Spends * chore: remove dev3 branch from integration tests * Add TA01 - 'signSecond not called' and return the pubnonce if the challenge is null * Refactor transfer-receive to make it non-blocking * Refactor transfer-receive in nodeJS library to make it non-blocking * Adjust tests to the new transferReceive function * Add web lib tests * Fix minor error in nodeJS transfer-receive * Add lightning latch functions to the nodeJS client * Add Rust lightning latch test * Add nodeJs lightning latch test * Feat/tests for atomic swap (#72) --------- Co-authored-by: S. Santos <[email protected]> * Add lightning latch functions to web client * Improve nodeJS API parameters * Change fee rate to f64 instead of u64 * fix: ci build on main branch only (#78) * Handle multiple deposit transactions * Add multiple deposit support to the nodeJS client * Update test_basic_workflow2 to support duplicated deposits * Update web client to support multiple deposits * Automate web client testing * Add Vitest to web client tests * Update Dockerfile (#81) * Update Dockerfile * Create Rocket2.toml * Update Dockerfile * Revert "Update Dockerfile (#81)" (#83) This reverts commit e37b627. * Add GET `/transfer/paymenthash/<batch_id>` * Add payment hash verification to nodeJS client * Fix/dockerfile token server (#85) * fix: token server dockerfile * fix: build release for token server * fix: upgrade sqlx version * Add payment hash verification to web client * Add log crate to the server * fix: The pre-image is now only revealed if the transfer is unlocked. * Set getrandom version * Add rust-toolchain file to wasm project * feat: add LND containers for testing (#77) * feat: add LND containers for testing * fix: lightning latch test run on actions * fix: install mocha * fix: wallet names * feat: add test to get preimage before batch unlock * feat: add test for sender recover coin after batch timeout * fix: increase test timeout * feat: wallet creation on lnd nodes * feat: wallet creation on lnd nodes * fix: wallet creation on start of lnd * fix: wallet unlock flag * debug: lnd node logs * fix: add sleep for lnd to sync with latest block * fix: upgrade lnd version * fix: zmq flags in bitcoind config * fix: port for node second to listen * feat: add script to open channel * feat: add fn to generate invoice * fix: test failure * feat: add test to steal hold invoice amount * fix: await for hold invoice payment * fix: import error * fix: upgrade docker image version in actions * fix: install docker compose * fix: container name * fix: network name * fix: add assertion for invoice payment failure * feat: add test for sender sends coin without batch_id * feat: add fn for invoice verification against payment hash * feat: add test for invoice verification fix: walletname for invoice verification test fix: payment hash for invoice verification test * feat: setup web client tests on actions * feat: setup esplora for actions fix: esplora and node server for web client fix: host for node server for web client fix: dir for node server for web client fix: volume for esplora and node server fix: node server volume fix: explora volume mount fix: bitcoin cli commands for esplora fix: host for node server debug: esplora and node server requests debug: host for esplora debug: containers fix: node server exit debug: node server logs fix: node server restart debug: esplora logs fix: restart policy for esplora debug: node server start command fix: add npm install before node start fix: install and start cmd for node server * feat: add dockerfile for node server fix: dir with node server build fix: dockerfile for node server fix: setup script for web client tests fix: step for script execution for web client fix: add npm install in script for web client debug: post request for node server fix: post request for node server * feat: add wallet creation for esplora fix: order for running script for web client fix: add step to generate block on esplora fix: host for esplora debug: get request for esplora fix: permission error fix: permission issue for data_bitcoin_regtest folder fix: web client tests order * feat: add test for atomic swap for web client * feat: add test for coin steal in atomic swap for web client * feat: add test for lightning latch * feat: add test for invoice for lightning latch * Fix/dockerfile token server (#85) * fix: token server dockerfile * fix: build release for token server * fix: upgrade sqlx version * Add payment hash verification to web client * Add log crate to the server * fix: The pre-image is now only revealed if the transfer is unlocked. * fix: import error * feat: add endpoints for invoice ops on node server fix: invoice generation from node server * feat: add test for invoice handling for lightning latch fix: import error fix: verifyInvoice fn fix: add bolt11 as package fix: bolt11 import error * feat: add endpoint for decode invoice fix: invoice from post request fix: invoice payment hash debug: invoice decode fix: payment hash in invoice generation debug: invoice verification fix: extract hash from decoded invoice fix: long running test due to hold invoice fix: payment hashes fix: web client tests running order fix: verify invoice test * refactor: verify invoice test --------- Co-authored-by: S. Santos <[email protected]> * Update Cargo.toml * fix: upgrade sqlx version * Update sqlx and toolchain * Change transaction sequence to 0 * Receiver now compares the backup transaction locktime with the current block height * Validate backup transaction signatures using SIGHASH_ALL * Validate transaction version * Validate transaction output size * Add blockheight in web library receive functionality * Receiver constructs backup transactions for verification * Add tx and locktime checks * Version number * Update Cargo.toml * Add server version number to /info/config * feat: add tnc to token (#89) * feat: add tnc to token * feat: add endpoint for tnc acceptance * fix: token init for tnc acceptance * fix: dir for tnc.html * Update tnc.html (#92) * chore: remove nodejs tests * Update tnc.html --------- Co-authored-by: Tom Trevethan <[email protected]> * Connection string secret as separate ENV. * Change the PubKeyInfo struct to show creation date * feat: add tnc to explorer page (#99) * feat: add tnc to explorer page * feat: add server version to explorer page * version number --------- Co-authored-by: S. Santos <[email protected]> Co-authored-by: Thomas Trevethan <[email protected]> Co-authored-by: rk16449 <[email protected]> Co-authored-by: rk16449 <[email protected]> Co-authored-by: Nicholas Gregory <[email protected]> Co-authored-by: DhananjayPurohit <[email protected]> Co-authored-by: S. Santos <[email protected]>
- Loading branch information