mirror of
https://github.com/monero-project/monero.git
synced 2025-12-20 20:05:20 -05:00
cryptonote: sort tx_extra fields
This removes some small amount of fingerprinting entropy. There is no consensus rule to require this since this field is technically free form, and a transaction is free to have custom data in it.
This commit is contained in:
parent
91c7d68b2d
commit
9907ea0694
5 changed files with 177 additions and 1 deletions
|
|
@ -31,6 +31,7 @@
|
|||
#pragma once
|
||||
#include "blobdatatype.h"
|
||||
#include "cryptonote_basic_impl.h"
|
||||
#include "tx_extra.h"
|
||||
#include "account.h"
|
||||
#include "subaddress_index.h"
|
||||
#include "include_base_utils.h"
|
||||
|
|
@ -64,6 +65,7 @@ namespace cryptonote
|
|||
}
|
||||
|
||||
bool parse_tx_extra(const std::vector<uint8_t>& tx_extra, std::vector<tx_extra_field>& tx_extra_fields);
|
||||
bool sort_tx_extra(const std::vector<uint8_t>& tx_extra, std::vector<uint8_t> &sorted_tx_extra, bool allow_partial = false);
|
||||
crypto::public_key get_tx_pub_key_from_extra(const std::vector<uint8_t>& tx_extra, size_t pk_index = 0);
|
||||
crypto::public_key get_tx_pub_key_from_extra(const transaction_prefix& tx, size_t pk_index = 0);
|
||||
crypto::public_key get_tx_pub_key_from_extra(const transaction& tx, size_t pk_index = 0);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue