Commit Graph

71 Commits

Author SHA1 Message Date
Some Random Crypto Guy 2dd6208a80 added mechanism to forcibly stop miner when crossing Carrot HF boundary, and allow mining to be restarted 2025-07-31 10:39:34 +01:00
akildemir 9ba621b3ae post carrot stake tx support (#32)
* add support for stake txs and payouts post-carrot

* fixes on the stake return payments

* complete post-carrot stake txs

* rename protocol_tx_data to protocol_tx_data_t
2025-07-23 14:58:11 +01:00
Some Random Crypto Guy f2e69594a7 fixed migration of mining from CN to Carrot, including stopping miners from using wrong address pre- and post-Carrot HF 2025-07-22 11:51:21 +01:00
Some Random Crypto Guy 7b39504050 fixed carrot syncing of mainnet 2025-07-21 19:33:17 +01:00
Some Random Crypto Guy aa02928620 fixed keys for pre+post Carrot mining rewards 2025-07-04 16:03:57 +01:00
Some Random Crypto Guy b7cc8e8100 fixed Carrot mining; added support for dedicated Carrot wallet addresses with SC1 prefix 2025-07-03 23:08:24 +01:00
akildemir ae02dcbe9a post-carrot tx scanning bug fixes 2025-06-20 11:40:46 +03:00
akildemir 87ceee6c2d fully integrate carrot keys into wallet2 2025-06-17 15:40:12 +03:00
Some Random Crypto Guy 41e3e85159 fixed missing references to new RCT type RCTTypeSalviumOne 2025-06-17 13:27:02 +01:00
akildemir a289de023a completed first successful tx from old keys to old keys post carrot fork 2025-06-12 16:32:16 +03:00
Some Random Crypto Guy ea19899914 moved the Carrot account functionality from cryptonote_basic to carrot_impl 2025-06-04 15:21:07 +01:00
Some Random Crypto Guy 7fe9ee0990 updated RCT functions to support SalviumOne and T-CLSAG use 2025-06-04 13:05:20 +01:00
Some Random Crypto Guy b07d2ce901 added Carrot keys to account_keys etc 2025-06-03 16:32:22 +01:00
Some Random Crypto Guy 53db771c35 removed serialisation of unlock_time for txout_to_carrot_v1 output type 2025-05-19 12:17:00 +01:00
Some Random Crypto Guy 60b3f22376 fixed field ordering to allow GCC to compile; removed unlock_time field from CARROT/SPARC TX outputs 2025-05-19 11:13:01 +01:00
akildemir 18ec1c331b make scanning pre-carrot and carrot coinbase txs work 2025-05-14 16:02:35 +03:00
Some Random Crypto Guy 87be655738 restored the missing params from generate_key_image_helper() calls; fixed linux build with missing vector include 2025-05-13 14:08:47 +01:00
jeffro256 c607f23a60 upstream: add is_out_to_acc_precomp span overload 2025-05-12 11:46:47 +03:00
jeffro256 4eecccee04 carrot_impl: add consensus rule for unique output pubkeys in tx
Required by Carrot to mitigate burning bugs, described in section 4.3 of the Carrot spec:
https://github.com/jeffro256/carrot/blob/master/carrot.md#43-transaction-model

Also remove 0-out check in `check_output_types()`, which I added in and technically constitutes a retroactive network split.

Co-authored-by: j-berman <justinberman@protonmail.com>
2025-05-07 15:53:44 +03:00
jeffro256 4eb13de957 upstream: is_coinbase() for prefix 2025-05-07 15:35:52 +03:00
akildemir a6733fcf2b carrot_impl compilation 2025-05-07 13:52:52 +03:00
jeffro256 44e70b4765 carrot_impl 3/27/25 [WIP] 2025-05-06 15:38:34 +03:00
akildemir a7753897b2 only sum SAL1 in tx outs 2025-04-02 16:58:05 +03:00
akildemir 0f97ec9ea7 fix unit-tests 2025-03-31 10:49:39 +03:00
j-berman f087b3807b wallet: background sync with just the view key
- When background syncing, the wallet wipes the spend key
from memory and processes all new transactions. The wallet saves
all receives, spends, and "plausible" spends of receives the
wallet does not know key images for.
- When background sync disabled, the wallet processes all
background synced txs and then clears the background sync cache.
- Adding "plausible" spends to the background sync cache ensures
that the wallet does not need to query the daemon to see if any
received outputs were spent while background sync was enabled.
This would harm privacy especially for users of 3rd party daemons.
- To enable the feature in the CLI wallet, the user can set
background-sync to reuse-wallet-password or
custom-background-password and the wallet automatically syncs in
the background when the wallet locks, then processes all
background synced txs when the wallet is unlocked.
- The custom-background-password option enables the user to
open a distinct background wallet that only has a view key saved
and can be opened/closed/synced separately from the main wallet.
When the main wallet opens, it processes the background wallet's
cache.
- To enable the feature in the RPC wallet, there is a new
`/setup_background_sync` endpoint.
- HW, multsig and view-only wallets cannot background sync.
2025-03-17 11:27:36 +00:00
Some Random Crypto Guy 420824005e updates to allow building of all platforms using 'make depends' 2025-03-14 05:24:56 +00:00
Some Random Crypto Guy 9baeb750ac interim checkin of the rebased code 2025-03-13 17:57:28 +00:00
Some Random Crypto Guy 5971f39e7a added 2nd phase of audit; bumped version 2025-02-19 17:49:38 +00:00
Some Random Crypto Guy a7c1ba652b interim checkin of changes for audit; bumped version number 2025-01-29 15:39:08 +00:00
Some Random Crypto Guy dd23331df9 switched to single spend authority proof - the dummy proofs don't work as intended, so dropping them 2024-12-16 09:16:34 +00:00
Some Random Crypto Guy 7d2025bc19 interim checkin 2024-12-16 07:48:16 +00:00
Some Random Crypto Guy a01422a5e0 partial working serialisation 2024-12-15 22:28:14 +00:00
Some Random Crypto Guy b87c243da1 fixed unit tests; fixed core tests; fixed performance tests; added fix to prevent change in block reward split (thanks Akil); added prelim code for spend authority proof - not complete / working 2024-12-15 11:09:46 +00:00
Some Random Crypto Guy e45643e157 increased max TX size from HF2; bumped version number 2024-10-30 14:31:27 +00:00
Some Random Crypto Guy 204c6fc778 fixed issue with migration to new difficulty algorithm; bumped version 2024-10-18 12:37:59 +01:00
Some Random Crypto Guy 884db2b499 solved issue of STAKE TXs paying out without view_tags; bumped version 2024-10-14 10:55:57 +01:00
Some Random Crypto Guy d1eed6e9ff interim commit - NOT TESTED 2024-09-14 11:06:23 +01:00
Some Random Crypto Guy 30a2931067 fixed copy/paste glitch on previous 2024-09-09 12:01:15 +01:00
Some Random Crypto Guy 1c73dd0c9f switch to LWMA difficulty algorithm for HF2+ 2024-09-08 19:54:12 +01:00
Some Random Crypto Guy 847db19867 various fixes for show_transfers, locked_transfer command, blocking of invalid TXs 2024-07-02 21:00:29 +01:00
Some Random Crypto Guy 0663a5ead7 fixed support for XMRIG mining RandomX; updated genesis_tx for testnet to support RandomX; bumped version 2024-06-28 13:32:01 +01:00
Some Random Crypto Guy 7ad904a9ae fixed output type checking for all HF versions; bumped TESTNET version; bumped version 2024-06-24 17:02:19 +01:00
Some Random Crypto Guy 6404d34e33 added K-anonymity helper functions 2024-06-18 23:47:00 +01:00
Some Random Crypto Guy 6d695e0005 Mac ARM64 builds working with depends 2024-06-17 11:52:11 +01:00
Some Random Crypto Guy 584890ab25 fixed up some missing copyright messages; added unlock_time validation for protocol_tx outputs 2024-06-10 14:54:57 +01:00
Some Random Crypto Guy e69437ca6a added more secure verification of protocol_tx outputs; bumped version number 2024-06-07 17:02:13 +01:00
Some Random Crypto Guy d39c20bb2d rebase to 0.18.3.3 completed 2024-06-05 14:03:44 +01:00
Some Random Crypto Guy e23423c16d partial fix to the detection of return payments - ECDH is an issue again, but reversion to using F point should resolve this and complete the implementation 2024-05-27 10:38:44 +01:00
Some Random Crypto Guy 9a37188885 fixed issue with Hardfork 2; removed PRs from HardFork 1 as unnecessary / slowing the chain down 2024-05-16 10:58:02 +01:00
Some Random Crypto Guy ae28c7a900 implementation of yield_info function 2024-05-14 14:23:31 +01:00