Enable literal v setting in apply signature

This commit is contained in:
nolash 2021-06-12 21:40:36 +02:00
parent 12c5692367
commit 799452102b
Signed by: lash
GPG Key ID: 21D2E7BB88C2A746
2 changed files with 6 additions and 3 deletions

View File

@ -146,12 +146,15 @@ class EIP155Transaction:
return tx return tx
def apply_signature(self, chain_id, signature): def apply_signature(self, chain_id, signature, literal_v=False):
if len(self.r + self.s) > 0: if len(self.r + self.s) > 0:
raise AttributeError('signature already set') raise AttributeError('signature already set')
if len(signature) < 65: if len(signature) < 65:
raise ValueError('invalid signature length') raise ValueError('invalid signature length')
v = chain_id_to_v(chain_id, signature) if literal_v:
v = signature[64]
else:
v = chain_id_to_v(chain_id, signature)
self.v = int_to_minbytes(v) self.v = int_to_minbytes(v)
self.r = signature[:32] self.r = signature[:32]
self.s = signature[32:64] self.s = signature[32:64]

View File

@ -33,7 +33,7 @@ f.close()
setup( setup(
name="crypto-dev-signer", name="crypto-dev-signer",
version="0.4.14b4", version="0.4.14b5",
description="A signer and keystore daemon and library for cryptocurrency software development", description="A signer and keystore daemon and library for cryptocurrency software development",
author="Louis Holbrook", author="Louis Holbrook",
author_email="dev@holbrook.no", author_email="dev@holbrook.no",