diff --git a/core/src/trezor/crypto/slip39.py b/core/src/trezor/crypto/slip39.py index b3eb215ab..9f6d2d359 100644 --- a/core/src/trezor/crypto/slip39.py +++ b/core/src/trezor/crypto/slip39.py @@ -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, diff --git a/tests/device_tests/test_msg_resetdevice_shamir.py b/tests/device_tests/test_msg_resetdevice_shamir.py index 017c31df0..bf18cfca0 100644 --- a/tests/device_tests/test_msg_resetdevice_shamir.py +++ b/tests/device_tests/test_msg_resetdevice_shamir.py @@ -152,14 +152,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(