public override Script GenerateScriptSig(Script scriptPubKey, IKeyRepository keyRepo, ISigner signer) { var offer = SolverScriptBuilder.ExtractOfferScriptParameters(scriptPubKey); var key = keyRepo.FindKey(offer.FulfillKey.ScriptPubKey) ?? keyRepo.FindKey(offer.RedeemKey.ScriptPubKey); if (key == null) { return(null); } var sig = signer.Sign(key); return(new Script(Op.GetPushOp(sig.ToBytes()))); }
public override int EstimateScriptSigSize(Script scriptPubKey) { var offer = SolverScriptBuilder.ExtractOfferScriptParameters(scriptPubKey); return(DummySignature.ToBytes().Length + offer.Hashes.Length * (int)SolutionKey.KeySize); }
public override bool CanGenerateScriptSig(Script scriptPubKey) { return(SolverScriptBuilder.ExtractOfferScriptParameters(scriptPubKey) != null); }