blockchain: reject invalid pubkeys from v4

This commit is contained in:
moneromooo-monero 2016-11-28 22:32:13 +00:00
parent c36cb54340
commit 8f6ec90c83
No known key found for this signature in database
GPG key ID: 686F07454D6CEFC3

View file

@ -2231,6 +2231,19 @@ bool Blockchain::check_tx_outputs(const transaction& tx, tx_verification_context
} }
} }
// from v4, forbid invalid pubkeys
if (m_hardfork->get_current_version() >= 4) {
for (const auto &o: tx.vout) {
if (o.target.type() == typeid(txout_to_key)) {
const txout_to_key& out_to_key = boost::get<txout_to_key>(o.target);
if (!crypto::check_key(out_to_key.key)) {
tvc.m_invalid_output = true;
return false;
}
}
}
}
return true; return true;
} }
//------------------------------------------------------------------ //------------------------------------------------------------------