findmy.util.crypto#
Pure-python NIST P-224 Elliptic Curve cryptography. Used for some Apple algorithms.
Attributes#
Functions#
|
Encrypt password using PBKDF2-HMAC. |
|
Decrypt SPD data using SRP session key. |
|
Single pass of X9.63 KDF with SHA1. |
|
Convert bytes in big-endian format to int. |
|
Derive a primary or secondary key used by an accessory. |
Module Contents#
- findmy.util.crypto.P224_N = 26959946667150639794667015087019625940457807714424391721682722368061#
- findmy.util.crypto.encrypt_password(password: str, salt: bytes, iterations: int, protocol: str) bytes #
Encrypt password using PBKDF2-HMAC.
- findmy.util.crypto.decrypt_spd_aes_cbc(session_key: bytes, data: bytes) bytes #
Decrypt SPD data using SRP session key.
- findmy.util.crypto.x963_kdf(value: bytes, si: bytes, length: int) bytes #
Single pass of X9.63 KDF with SHA1.
- findmy.util.crypto.bytes_to_int(value: bytes) int #
Convert bytes in big-endian format to int.
- findmy.util.crypto.derive_ps_key(privkey: bytes, sk: bytes) bytes #
Derive a primary or secondary key used by an accessory.
- Parameters:
privkey – Private key generated during pairing
sk – Current secret key for this time period. Use SKN to derive the primary key, SKS for secondary.