dieroll wallet: truncate seed to correct length
This commit is contained in:
parent
f1e7cbb7a0
commit
d46eeef998
3 changed files with 12 additions and 1 deletions
|
|
@ -1019,6 +1019,7 @@ class DieRollSeedFile(SeedSourceUnenc):
|
|||
fmt_codes = 'b6d','die','dieroll',
|
||||
desc = 'base6d die roll seed data'
|
||||
ext = 'b6d'
|
||||
conv_cls = baseconv
|
||||
|
||||
def _format(self):
|
||||
d = baseconv.frombytes(self.seed.data,'b6d',pad='seed',tostr=True) + '\n'
|
||||
|
|
@ -1026,7 +1027,10 @@ class DieRollSeedFile(SeedSourceUnenc):
|
|||
|
||||
def _deformat(self):
|
||||
d = self.fmt_data.translate(dict((ord(ws),None) for ws in '\t\n '))
|
||||
seed_bytes = baseconv.tobytes(d,'b6d',pad='seed')
|
||||
|
||||
# truncate seed to correct length, discarding high bits
|
||||
seed_len = self.conv_cls.seedlen_map_rev['b6d'][len(d)]
|
||||
seed_bytes = baseconv.tobytes(d,'b6d',pad='seed')[-seed_len:]
|
||||
|
||||
self.seed = Seed(seed_bytes)
|
||||
self.ssdata.hexseed = seed_bytes.hex()
|
||||
|
|
|
|||
2
test/ref/overflow128.b6d
Normal file
2
test/ref/overflow128.b6d
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
55555 44444 33333 22222 11111
|
||||
55555 44444 33333 22222 11111
|
||||
|
|
@ -129,6 +129,7 @@ class TestSuiteRef(TestSuiteBase,TestSuiteShared):
|
|||
# ('txcreate8', 'transaction creation (8)'),
|
||||
('ref_tx_chk', 'signing saved reference tx file'),
|
||||
('ref_brain_chk_spc3', 'saved brainwallet (non-standard spacing)'),
|
||||
('ref_dieroll_chk_overflow','saved dieroll wallet with extra entropy bits'),
|
||||
('ref_tool_decrypt', 'decryption of saved MMGen-encrypted file'),
|
||||
)
|
||||
|
||||
|
|
@ -265,6 +266,10 @@ class TestSuiteRef(TestSuiteBase,TestSuiteShared):
|
|||
def ref_brain_chk_spc3(self):
|
||||
return self.ref_brain_chk(bw_file=ref_bw_file_spc)
|
||||
|
||||
def ref_dieroll_chk_overflow(self):
|
||||
wf = joinpath(ref_dir,'overflow128.b6d')
|
||||
return self.walletchk(wf,None,sid='8EC6D4A2')
|
||||
|
||||
def ref_tool_decrypt(self):
|
||||
f = joinpath(ref_dir,ref_enc_fn)
|
||||
disable_debug()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue