nl:: Weave:: Profiles:: Security:: Passcodes
Không gian tên này bao gồm tất cả giao diện trong thư viện mật mã Weave trong hồ sơ bảo mật Weave.
Tóm tắt
Liệt kê |
|
---|---|
@278{
|
enum Dệt các loại cấu hình mã hoá mật mã. |
@279{
|
enum Dệt các kích thước tham số giao thức mã hoá mật mã. |
Biến |
|
---|---|
kPasscodeEncKeyDiversifier = { 0x1A, 0x65, 0x5D, 0x96 }[]
|
const uint8_t
Công cụ đa dạng hoá khoá dùng cho việc lấy khoá mã hoá mật mã Weave.
|
kPasscodeFingerprintKeyDiversifier = { 0xD1, 0xA1, 0xD9, 0x6C }[]
|
const uint8_t
Công cụ đa dạng hoá khoá dùng cho việc lấy khoá mã hoá mật mã Weave.
|
Hàm |
|
---|---|
DecryptPasscode(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore)
|
Giải mã một mật mã đã mã hoá bằng cơ chế Mã hoá mật mã Nest.
|
DecryptPasscode(const uint8_t *encPasscode, size_t encPasscodeLen, const uint8_t *encKey, const uint8_t *authKey, const uint8_t *fingerprintKey, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen)
|
Giải mã một mật mã đã mã hoá bằng cơ chế Mã hoá mật mã Nest.
|
EncryptPasscode(uint8_t config, uint32_t keyId, uint32_t nonce, const uint8_t *passcode, size_t passcodeLen, uint8_t *encPasscode, size_t encPasscodeBufSize, size_t & encPasscodeLen, GroupKeyStoreBase *groupKeyStore)
|
Mã hoá một mật mã bằng lược đồ Mã hoá mật mã Nest.
|
EncryptPasscode(uint8_t config, uint32_t keyId, uint32_t nonce, const uint8_t *passcode, size_t passcodeLen, const uint8_t *encKey, const uint8_t *authKey, const uint8_t *fingerprintKey, uint8_t *encPasscode, size_t encPasscodeBufSize, size_t & encPasscodeLen)
|
Mã hoá một mật mã bằng lược đồ Mã hoá mật mã Nest.
|
GetEncryptedPasscodeConfig(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config)
|
Lấy loại cấu hình của mật mã đã mã hoá.
|
GetEncryptedPasscodeFingerprint(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen)
|
Lấy giá trị vân tay liên kết với mật mã đã mã hoá.
|
GetEncryptedPasscodeKeyId(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId)
|
Lấy mã của khoá dùng để mã hoá một mật mã đã mã hoá.
|
GetEncryptedPasscodeNonce(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce)
|
Lấy giá trị số chỉ dùng một lần liên kết với mật mã đã mã hoá.
|
IsSupportedPasscodeEncryptionConfig(uint8_t config)
|
bool
Trả về true nếu cấu hình mã hoá mật mã đã cung cấp được API mã hoá/giải mã mật mã hỗ trợ.
|
Cấu trúc |
|
---|---|
nl:: |
Liệt kê
@278
@278
Dệt các loại cấu hình mã hoá mật mã.
Thuộc tính | |
---|---|
kPasscodeConfig1_KeyId
|
Mã khoá giả dùng cho cấu hình mật mã thử nghiệm #1. |
kPasscode_Config1_TEST_ONLY
|
Cấu hình mã hoá mật mã #1 không sử dụng lớp mã hoá và các khoá bí mật để xác thực cũng như mật mã bằng vân tay. Cấu hình này NÊN được sử dụng chỉ cho mục đích THỬ NGHIỆM. |
kPasscode_Config2
|
Cấu hình mã hoá mật mã #2 đang sử dụng mã hoá AES-128-ECB với tính toàn vẹn HMAC-SHA-1 8 byte và dấu vân tay HMAC-SHA-1 8 byte. |
@279
@279
Đan các kích thước tham số giao thức mã hoá mật mã.
Thuộc tính | |
---|---|
kPasscodeAuthenticationKeyLen
|
Độ dài khoá xác thực mật mã (SHA-1). |
kPasscodeAuthenticatorLen
|
Độ dài của trình xác thực mật mã. |
kPasscodeEncKeyDiversifierSize
|
Kích thước đa dạng hoá khoá ứng dụng mã hoá bằng mật mã. |
kPasscodeEncryptionKeyLen
|
Độ dài khoá mã hoá bằng mật mã (AES-128). |
kPasscodeFingerprintKeyDiversifierSize
|
Kích thước đa dạng hoá khoá vân tay dạng mật mã. |
kPasscodeFingerprintKeyLen
|
Độ dài khoá vân tay mật mã (SHA-1). |
kPasscodeFingerprintLen
|
Độ dài vân tay số của mật mã. |
kPasscodeMaxEncryptedLen
|
Độ dài mật mã đã mã hoá tối đa. |
kPasscodeMaxLen
|
Độ dài mật mã tối đa chưa nhập mật mã. |
kPasscodePaddedLen
|
Độ dài mật mã (được đệm vào độ dài khối AES-128). |
kPasscodeTotalDerivedKeyLen
|
Tổng độ dài của khoá mã hoá (mã hoá và tính toàn vẹn). |
Biến
kPasscodeEncKeyDiversifier
const uint8_t kPasscodeEncKeyDiversifier[] = { 0x1A, 0x65, 0x5D, 0x96 }
Công cụ đa dạng hoá khoá dùng để lấy khoá mã hoá mật mã Weave.
Giá trị này biểu thị 4 byte đầu tiên của SHA-1 HASH của "Nest Passcode EK and AK" cụm từ tìm kiếm.
kPasscodeFingerprintKeyDiversifier
const uint8_t kPasscodeFingerprintKeyDiversifier[] = { 0xD1, 0xA1, 0xD9, 0x6C }
Công cụ đa dạng hoá khoá dùng để lấy khoá mã hoá mật mã Weave.
Giá trị này biểu thị 4 byte đầu tiên của SHA-1 HASH của "Nest Passcode EK and AK" cụm từ tìm kiếm.
Hàm
DecryptPasscode
WEAVE_ERROR DecryptPasscode( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore )
Giải mã một mật mã đã mã hoá bằng cơ chế Mã hoá mật mã Nest.
Chi tiết | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||||||
Giá trị trả về |
|
DecryptPasscode
WEAVE_ERROR DecryptPasscode( const uint8_t *encPasscode, size_t encPasscodeLen, const uint8_t *encKey, const uint8_t *authKey, const uint8_t *fingerprintKey, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen )
Giải mã một mật mã đã mã hoá bằng cơ chế Mã hoá mật mã Nest.
Chi tiết | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||||||
Giá trị trả về |
|
EncryptPasscode
WEAVE_ERROR EncryptPasscode( uint8_t config, uint32_t keyId, uint32_t nonce, const uint8_t *passcode, size_t passcodeLen, uint8_t *encPasscode, size_t encPasscodeBufSize, size_t & encPasscodeLen, GroupKeyStoreBase *groupKeyStore )
Mã hoá một mật mã bằng lược đồ Mã hoá mật mã Nest.
Chi tiết | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||||||||
Giá trị trả về |
|
EncryptPasscode
WEAVE_ERROR EncryptPasscode( uint8_t config, uint32_t keyId, uint32_t nonce, const uint8_t *passcode, size_t passcodeLen, const uint8_t *encKey, const uint8_t *authKey, const uint8_t *fingerprintKey, uint8_t *encPasscode, size_t encPasscodeBufSize, size_t & encPasscodeLen )
Mã hoá một mật mã bằng lược đồ Mã hoá mật mã Nest.
Chi tiết | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||||||||||||
Giá trị trả về |
|
GetEncryptedPasscodeConfig
WEAVE_ERROR GetEncryptedPasscodeConfig( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config )
Lấy loại cấu hình của mật mã đã mã hoá.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
GetEncryptedPasscodeFingerprint
WEAVE_ERROR GetEncryptedPasscodeFingerprint( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen )
Lấy giá trị vân tay liên kết với mật mã đã mã hoá.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
GetEncryptedPasscodeKeyId
WEAVE_ERROR GetEncryptedPasscodeKeyId( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId )
Lấy mã của khoá dùng để mã hoá một mật mã đã mã hoá.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
GetEncryptedPasscodeNonce
WEAVE_ERROR GetEncryptedPasscodeNonce( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce )
Lấy giá trị số chỉ dùng một lần liên kết với mật mã đã mã hoá.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
IsSupportedPasscodeEncryptionConfig
bool IsSupportedPasscodeEncryptionConfig( uint8_t config )
Trả về true nếu cấu hình mã hoá mật mã đã cung cấp được API mã hoá/giải mã mật mã hỗ trợ.