Since `decryptWithoutVerification` and `decryptAndVerifySignature` are basically the same code at this point, can you change them to use a shared helper function and the only difference being whether the verify/public key are used?