monero/src
jeffro256 b0bf49a65a
blockchain_db: add k-anonymity to txid fetching
Read more about k-anonymity [here](https://en.wikipedia.org/wiki/K-anonymity). We implement this feature in the monero daemon for transactions
by providing a "Txid Template", which is simply a txid with all but `num_matching_bits` bits zeroed out, and the number `num_matching_bits`. We add an operation to `BlockchainLMDB` called
`get_txids_loose` which takes a txid template and returns all txids in the database (chain and mempool) that satisfy that template. Thus, a client can
ask about a specific transaction from a daemon without revealing the exact transaction they are inquiring about. The client can control the statistical
chance that other TXIDs (besides the one in question) match the txid template sent to the daemon up to a power of 2. For example, if a client sets their `num_matching_bits`
to 5, then statistically any txid has a 1/(2^5) chance to match. With `num_matching_bits`=10, there is a 1/(2^10) chance, so on and so forth.

Co-authored-by: ACK-J <60232273+ACK-J@users.noreply.github.com>
2023-08-01 17:25:25 -05:00
..
blockchain_db blockchain_db: add k-anonymity to txid fetching 2023-08-01 17:25:25 -05:00
blockchain_utilities serialization: remove unused function dump_json 2023-04-25 11:39:55 -05:00
blocks Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
checkpoints Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
common Merge pull request #8919 2023-07-06 21:41:12 -05:00
crypto add crypto/generators for direct access to canonical fixed generators 2023-06-28 09:52:27 -05:00
cryptonote_basic blockchain_db: add k-anonymity to txid fetching 2023-08-01 17:25:25 -05:00
cryptonote_core Merge pull request #8850 2023-07-06 21:30:09 -05:00
cryptonote_protocol Merge pull request #8862 2023-06-27 11:44:58 -05:00
daemon Merge pull request #8848 2023-06-27 11:39:33 -05:00
daemonizer Merge pull request #8772 2023-06-27 11:31:27 -05:00
debug_utilities Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
device Merge pull request #8698 2023-04-25 11:12:56 -04:00
device_trezor Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
gen_multisig Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
gen_ssl_cert core_rpc_server: new file: rpc_ssl.fingerprint 2023-07-02 19:38:51 -05:00
hardforks Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
lmdb Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
mnemonics Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
multisig Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
net Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
p2p Merge pull request #8789 2023-04-25 11:22:50 -04:00
ringct Merge pull request #8698 2023-04-25 11:12:56 -04:00
rpc blockchain_db: add k-anonymity to txid fetching 2023-08-01 17:25:25 -05:00
serialization Add CLSAG serialization to ZMQ code 2023-06-10 11:55:48 -04:00
simplewallet wallet: remove CLI code for non default ring sizes 2023-06-27 20:18:21 +02:00
wallet Merge pull request #8904 2023-07-06 21:37:58 -05:00
CMakeLists.txt Copyright: Update to 2023 2023-01-16 13:00:18 +01:00
cryptonote_config.h Merge pull request #8698 2023-04-25 11:12:56 -04:00
version.cpp.in version: bump master version number 2022-08-09 03:37:27 +02:00
version.h wallet, rpc: add a release field to get_version 2019-08-26 19:28:25 +00:00