aboutsummaryrefslogtreecommitdiff
path: root/src/script/sign.cpp
diff options
context:
space:
mode:
authorAntoine Poinsot <darosior@protonmail.com>2022-07-20 12:42:08 +0200
committerAntoine Poinsot <darosior@protonmail.com>2022-08-11 15:43:40 +0200
commitb16f93caddcd3254eaf3dc43e09adf2142a9c40a (patch)
tree675b615337627dead3cde665e3bb3e951e54565f /src/script/sign.cpp
parentc232ef20c0fd2e3b55355e52684091cad3af5247 (diff)
downloadbitcoin-b16f93caddcd3254eaf3dc43e09adf2142a9c40a.tar.xz
script/sign: remove needless IsSolvable() utility
It was used back when we didn't have a concept of descriptor. Now we can check for solvability using descriptors.
Diffstat (limited to 'src/script/sign.cpp')
-rw-r--r--src/script/sign.cpp19
1 files changed, 0 insertions, 19 deletions
diff --git a/src/script/sign.cpp b/src/script/sign.cpp
index 3b8071d9d1..a63b042ccc 100644
--- a/src/script/sign.cpp
+++ b/src/script/sign.cpp
@@ -627,25 +627,6 @@ public:
const BaseSignatureCreator& DUMMY_SIGNATURE_CREATOR = DummySignatureCreator(32, 32);
const BaseSignatureCreator& DUMMY_MAXIMUM_SIGNATURE_CREATOR = DummySignatureCreator(33, 32);
-bool IsSolvable(const SigningProvider& provider, const CScript& script)
-{
- // This check is to make sure that the script we created can actually be solved for and signed by us
- // if we were to have the private keys. This is just to make sure that the script is valid and that,
- // if found in a transaction, we would still accept and relay that transaction. In particular,
- // it will reject witness outputs that require signing with an uncompressed public key.
- SignatureData sigs;
- // Make sure that STANDARD_SCRIPT_VERIFY_FLAGS includes SCRIPT_VERIFY_WITNESS_PUBKEYTYPE, the most
- // important property this function is designed to test for.
- static_assert(STANDARD_SCRIPT_VERIFY_FLAGS & SCRIPT_VERIFY_WITNESS_PUBKEYTYPE, "IsSolvable requires standard script flags to include WITNESS_PUBKEYTYPE");
- if (ProduceSignature(provider, DUMMY_SIGNATURE_CREATOR, script, sigs)) {
- // VerifyScript check is just defensive, and should never fail.
- bool verified = VerifyScript(sigs.scriptSig, script, &sigs.scriptWitness, STANDARD_SCRIPT_VERIFY_FLAGS, DUMMY_CHECKER);
- assert(verified);
- return true;
- }
- return false;
-}
-
bool IsSegWitOutput(const SigningProvider& provider, const CScript& script)
{
int version;