mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-02-23 04:52:01 +00:00
feat(core): update generation of the CPace pregenerator (edit padding, add one zero byte after handshake hash)
[no changelog]
This commit is contained in:
parent
878d03f236
commit
42d52633d0
@ -3,7 +3,7 @@ from trezor.crypto.curve import curve25519
|
|||||||
from trezor.crypto.hashlib import sha512
|
from trezor.crypto.hashlib import sha512
|
||||||
|
|
||||||
_PREFIX = b"\x08\x43\x50\x61\x63\x65\x32\x35\x35\x06"
|
_PREFIX = b"\x08\x43\x50\x61\x63\x65\x32\x35\x35\x06"
|
||||||
_PADDING = b"\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20"
|
_PADDING = b"\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20"
|
||||||
|
|
||||||
|
|
||||||
class Cpace:
|
class Cpace:
|
||||||
@ -26,6 +26,7 @@ class Cpace:
|
|||||||
sha_ctx.update(code_code_entry)
|
sha_ctx.update(code_code_entry)
|
||||||
sha_ctx.update(_PADDING)
|
sha_ctx.update(_PADDING)
|
||||||
sha_ctx.update(self.handshake_hash)
|
sha_ctx.update(self.handshake_hash)
|
||||||
|
sha_ctx.update(b"\x00")
|
||||||
pregenerator = sha_ctx.digest()[:32]
|
pregenerator = sha_ctx.digest()[:32]
|
||||||
generator = elligator2.map_to_curve25519(pregenerator)
|
generator = elligator2.map_to_curve25519(pregenerator)
|
||||||
self.trezor_private_key = random.bytes(32)
|
self.trezor_private_key = random.bytes(32)
|
||||||
|
Loading…
Reference in New Issue
Block a user