Merge pull request #10148

7b53197 Cleaner validation (faster and saner) (j-berman)
This commit is contained in:
luigi1111 2025-10-07 15:23:52 -04:00
commit de73139f42
No known key found for this signature in database
GPG Key ID: F4ACA0183641E010
2 changed files with 2 additions and 15 deletions

View File

@ -3009,21 +3009,6 @@ bool Blockchain::check_tx_outputs(const transaction& tx, tx_verification_context
} }
} }
// from v4, forbid invalid pubkeys
if (hf_version >= 4) {
for (const auto &o: tx.vout) {
crypto::public_key output_public_key;
if (!get_output_public_key(o, output_public_key)) {
tvc.m_invalid_output = true;
return false;
}
if (!crypto::check_key(output_public_key)) {
tvc.m_invalid_output = true;
return false;
}
}
}
// from v8, allow bulletproofs // from v8, allow bulletproofs
if (hf_version < 8) { if (hf_version < 8) {
if (tx.version >= 2) { if (tx.version >= 2) {

View File

@ -1041,6 +1041,8 @@ namespace cryptonote
for(const auto& in: tx.vin) for(const auto& in: tx.vin)
{ {
CHECKED_GET_SPECIFIC_VARIANT(in, const txin_to_key, tokey_in, false); CHECKED_GET_SPECIFIC_VARIANT(in, const txin_to_key, tokey_in, false);
if (rct::ki2rct(tokey_in.k_image) == rct::identity())
return false;
if (!(rct::scalarmultKey(rct::ki2rct(tokey_in.k_image), rct::curveOrder()) == rct::identity())) if (!(rct::scalarmultKey(rct::ki2rct(tokey_in.k_image), rct::curveOrder()) == rct::identity()))
return false; return false;
} }