Browse Source

Change error for invalid joinsplit signature for consistency.

pull/145/head
Sean Bowe 8 years ago
parent
commit
e8af0028eb
  1. 6
      src/main.cpp
  2. 2
      src/test/transaction_tests.cpp

6
src/main.cpp

@ -989,7 +989,7 @@ bool CheckTransaction(const CTransaction& tx, CValidationState &state)
uint256 dataToBeSigned = SignatureHash(scriptCode, tx, NOT_AN_INPUT, SIGHASH_ALL);
if (dataToBeSigned == one) {
return state.DoS(100, error("CheckTransaction(): error computing signature hash"),
REJECT_INVALID, "error-computing-signature-hash");
REJECT_INVALID, "error-computing-signature-hash");
}
if (crypto_sign_verify_detached(&tx.joinSplitSig[0],
@ -997,12 +997,12 @@ bool CheckTransaction(const CTransaction& tx, CValidationState &state)
tx.joinSplitPubKey.begin()
) != 0) {
return state.DoS(100, error("CheckTransaction(): invalid joinsplit signature"),
REJECT_INVALID, "invalid-joinsplit-signature");
REJECT_INVALID, "bad-txns-invalid-joinsplit-signature");
}
if (crypto_sign_check_S_lt_l(&tx.joinSplitSig[32]) != 0) {
return state.DoS(100, error("CheckTransaction(): non-canonical ed25519 signature"),
REJECT_INVALID, "non-canonical-ed25519-signature");
REJECT_INVALID, "non-canonical-ed25519-signature");
}
if (state.PerformPourVerification()) {

2
src/test/transaction_tests.cpp

@ -402,7 +402,7 @@ BOOST_AUTO_TEST_CASE(test_simple_pour_invalidity)
pourtx->serials[1] = GetRandHash();
BOOST_CHECK(!CheckTransaction(newTx, state));
BOOST_CHECK(state.GetRejectReason() == "invalid-joinsplit-signature");
BOOST_CHECK(state.GetRejectReason() == "bad-txns-invalid-joinsplit-signature");
// TODO: #966.
static const uint256 one(uint256S("0000000000000000000000000000000000000000000000000000000000000001"));

Loading…
Cancel
Save