1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-26 09:28:13 +00:00

core/slip39: remove _encrypt

This commit is contained in:
Tomas Susanka 2019-08-12 15:53:23 +02:00
parent cb94454618
commit 53ca61ab00
2 changed files with 2 additions and 16 deletions

View File

@ -208,20 +208,6 @@ def _get_salt(identifier: int) -> bytes:
)
def _encrypt(
master_secret: bytes, passphrase: bytes, iteration_exponent: int, identifier: int
) -> bytes:
l = master_secret[: len(master_secret) // 2]
r = master_secret[len(master_secret) // 2 :]
salt = _get_salt(identifier)
for i in range(_ROUND_COUNT):
(l, r) = (
r,
xor(l, _round_function(i, passphrase, iteration_exponent, salt, r)),
)
return r + l
def decrypt(
identifier: int,
iteration_exponent: int,

View File

@ -155,14 +155,14 @@ class TestMsgResetDeviceT2(TrezorTest):
assert resp.passphrase_protection is False
def validate_mnemonics(mnemonics, threshold, expected_secret):
def validate_mnemonics(mnemonics, threshold, expected_ems):
# We expect these combinations to recreate the secret properly
for test_group in combinations(mnemonics, threshold):
# TODO: HOTFIX, we should fix this properly by modifying and unifying the python-shamir-mnemonic API
ms = shamir.combine_mnemonics(test_group)
identifier, iteration_exponent, _, _, _ = shamir._decode_mnemonics(test_group)
ems = shamir._encrypt(ms, b"", iteration_exponent, identifier)
assert ems == expected_secret
assert ems == expected_ems
# We expect these combinations to raise MnemonicError
for test_group in combinations(mnemonics, threshold - 1):
with pytest.raises(