diff --git a/mocks/trezor/crypto/HDNode.py b/mocks/trezor/crypto/HDNode.py index 5065dd87..dfb28f06 100644 --- a/mocks/trezor/crypto/HDNode.py +++ b/mocks/trezor/crypto/HDNode.py @@ -47,6 +47,12 @@ def chain_code() -> bytes: Returns a chain code of the HD node. ''' +# ../extmod/modtrezorcrypto/modtrezorcrypto-bip32.h +def private_key() -> bytes: + ''' + Returns a private key of the HD node. + ''' + # ../extmod/modtrezorcrypto/modtrezorcrypto-bip32.h def public_key() -> bytes: ''' @@ -54,7 +60,7 @@ def public_key() -> bytes: ''' # ../extmod/modtrezorcrypto/modtrezorcrypto-bip32.h -def private_key() -> bytes: +def address(version: int) -> str: ''' - Returns a private key of the HD node. + Compute a base58-encoded address string from the HD node. ''' diff --git a/mocks/trezor/crypto/curve/curve25519.py b/mocks/trezor/crypto/curve/curve25519.py new file mode 100644 index 00000000..0c77b988 --- /dev/null +++ b/mocks/trezor/crypto/curve/curve25519.py @@ -0,0 +1,19 @@ + +# ../extmod/modtrezorcrypto/modtrezorcrypto-curve25519.h +def generate_secret() -> bytes: + ''' + Generate secret key. + ''' + +# ../extmod/modtrezorcrypto/modtrezorcrypto-curve25519.h +def publickey(secret_key: bytes) -> bytes: + ''' + Computes public key from secret key. + ''' + +# ../extmod/modtrezorcrypto/modtrezorcrypto-curve25519.h +def multiply(secret_key: bytes, public_key: bytes) -> bytes: + ''' + Multiplies point defined by public_key with scalar defined by secret_key + Useful for ECDH + ''' diff --git a/mocks/trezor/crypto/curve/ed25519.py b/mocks/trezor/crypto/curve/ed25519.py index 8d1a596e..4896ecf0 100644 --- a/mocks/trezor/crypto/curve/ed25519.py +++ b/mocks/trezor/crypto/curve/ed25519.py @@ -1,4 +1,10 @@ +# ../extmod/modtrezorcrypto/modtrezorcrypto-ed25519.h +def generate_secret() -> bytes: + ''' + Generate secret key. + ''' + # ../extmod/modtrezorcrypto/modtrezorcrypto-ed25519.h def publickey(secret_key: bytes) -> bytes: ''' diff --git a/mocks/trezor/crypto/curve/nist256p1.py b/mocks/trezor/crypto/curve/nist256p1.py index fe71a895..f4b14138 100644 --- a/mocks/trezor/crypto/curve/nist256p1.py +++ b/mocks/trezor/crypto/curve/nist256p1.py @@ -1,4 +1,10 @@ +# ../extmod/modtrezorcrypto/modtrezorcrypto-nist256p1.h +def generate_secret() -> bytes: + ''' + Generate secret key. + ''' + # ../extmod/modtrezorcrypto/modtrezorcrypto-nist256p1.h def publickey(secret_key: bytes, compressed: bool=True) -> bytes: ''' @@ -17,3 +23,10 @@ def verify(public_key: bytes, signature: bytes, message: bytes) -> bool: Uses public key to verify the signature of the message Returns True on success. ''' + +# ../extmod/modtrezorcrypto/modtrezorcrypto-nist256p1.h +def multiply(secret_key: bytes, public_key: bytes) -> bytes: + ''' + Multiplies point defined by public_key with scalar defined by secret_key + Useful for ECDH + ''' diff --git a/mocks/trezor/crypto/curve/secp256k1.py b/mocks/trezor/crypto/curve/secp256k1.py index d520e1d6..ab23fecf 100644 --- a/mocks/trezor/crypto/curve/secp256k1.py +++ b/mocks/trezor/crypto/curve/secp256k1.py @@ -1,4 +1,10 @@ +# ../extmod/modtrezorcrypto/modtrezorcrypto-secp256k1.h +def generate_secret() -> bytes: + ''' + Generate secret key. + ''' + # ../extmod/modtrezorcrypto/modtrezorcrypto-secp256k1.h def publickey(secret_key: bytes, compressed: bool=True) -> bytes: ''' @@ -17,3 +23,10 @@ def verify(public_key: bytes, signature: bytes, message: bytes) -> bool: Uses public key to verify the signature of the message Returns True on success. ''' + +# ../extmod/modtrezorcrypto/modtrezorcrypto-secp256k1.h +def multiply(secret_key: bytes, public_key: bytes) -> bytes: + ''' + Multiplies point defined by public_key with scalar defined by secret_key + Useful for ECDH + '''