def sign(self, secp: Secp256k1, i: int, secret_key: SecretKey): script_sig = bytearray() signature = self.raw_signature(secp, i, secret_key) script_sig.extend(script_write_bytes(len(signature))) script_sig.extend(signature) public_key = secret_key.to_public_key(secp).to_bytearray(secp) script_sig.extend(script_write_bytes(len(public_key))) script_sig.extend(public_key) self.inputs[i].script_sig = script_sig
def from_secret_key(secp: Secp256k1, key: SecretKey): public = key.to_public_key(secp) return Identifier.from_public_key(secp, public)