nl:: Weave:: โปรไฟล์:: ความปลอดภัย:: รหัสผ่าน
เนมสเปซนี้รวมอินเทอร์เฟซทั้งหมดภายใน Weave สําหรับไลบรารีรหัสผ่าน Weave ภายในโปรไฟล์การรักษาความปลอดภัย Weave
สรุป
การแจกแจง |
|
---|---|
@278{
|
enum สานประเภทการกําหนดค่าการเข้ารหัสรหัสผ่าน |
@279{
|
enum แก้ไขขนาดพารามิเตอร์ของโปรโตคอลการเข้ารหัสรหัสผ่าน |
ตัวแปร |
|
---|---|
kPasscodeEncKeyDiversifier = { 0x1A, 0x65, 0x5D, 0x96 }[]
|
const uint8_t
เครื่องมือเปลี่ยนคีย์ที่ใช้สําหรับการรับคีย์การเข้ารหัสของรหัสผ่าน Weave
|
kPasscodeFingerprintKeyDiversifier = { 0xD1, 0xA1, 0xD9, 0x6C }[]
|
const uint8_t
เครื่องมือเปลี่ยนคีย์ที่ใช้สําหรับการรับคีย์การเข้ารหัสของรหัสผ่าน Weave
|
ฟังก์ชัน |
|
---|---|
DecryptPasscode(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore)
|
ถอดรหัสรหัสผ่านที่เข้ารหัสโดยใช้รูปแบบการเข้ารหัสของ Nest Passcode
|
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)
|
ถอดรหัสรหัสผ่านที่เข้ารหัสโดยใช้รูปแบบการเข้ารหัสของ Nest Passcode
|
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)
|
เข้ารหัสรหัสผ่านโดยใช้รูปแบบการเข้ารหัสรหัสผ่าน 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)
|
เข้ารหัสรหัสผ่านโดยใช้รูปแบบการเข้ารหัสรหัสผ่าน Nest
|
GetEncryptedPasscodeConfig(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config)
|
รับประเภทการกําหนดค่าของรหัสผ่านที่เข้ารหัส
|
GetEncryptedPasscodeFingerprint(const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen)
|
รับค่าลายนิ้วมือที่เชื่อมโยงกับรหัสผ่านที่เข้ารหัส
|
GetEncryptedPasscodeKeyId(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId)
|
รับรหัสของรหัสที่ใช้เข้ารหัสรหัสผ่านที่เข้ารหัส
|
GetEncryptedPasscodeNonce(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce)
|
รับค่า cece ที่เชื่อมโยงกับรหัสผ่านที่เข้ารหัส
|
IsSupportedPasscodeEncryptionConfig(uint8_t config)
|
bool
ส่งคืนค่า True หาก API การเข้ารหัส/การถอดรหัสรหัสผ่านรองรับการกําหนดค่าการเข้ารหัสรหัสผ่านที่ระบุ
|
โครงสร้าง |
|
---|---|
nl:: |
การแจกแจง
278
@278
สานประเภทการกําหนดค่าการเข้ารหัสรหัสผ่าน
พร็อพเพอร์ตี้ | |
---|---|
kPasscodeConfig1_KeyId
|
รหัสคีย์จําลองที่ใช้สําหรับการกําหนดค่ารหัสผ่านทดสอบ #1 |
kPasscode_Config1_TEST_ONLY
|
การกําหนดค่าการเข้ารหัสรหัสผ่านที่ 1 ไม่ได้ใช้การเข้ารหัสและคีย์ลับในการตรวจสอบสิทธิ์และรหัสผ่านของลายนิ้วมือ การกําหนดค่านี้ควรใช้เพื่อการทดสอบเท่านั้น |
kPasscode_Config2
|
การกําหนดค่าการเข้ารหัสรหัสผ่าน #2 ใช้การเข้ารหัส AES-128-ECB ที่มีความสมบูรณ์ของ HMAC-SHA-1 8 ไบต์และลายนิ้วมือ HMAC-SHA-1 8 ไบต์ |
279
@279
แก้ไขขนาดพารามิเตอร์ของโปรโตคอลการเข้ารหัสรหัสผ่าน
พร็อพเพอร์ตี้ | |
---|---|
kPasscodeAuthenticationKeyLen
|
ความยาวของคีย์การตรวจสอบสิทธิ์รหัสผ่าน (SHA-1) |
kPasscodeAuthenticatorLen
|
ความยาวของ Authenticator ของรหัสผ่าน |
kPasscodeEncKeyDiversifierSize
|
ขนาดเครื่องมือสร้างคีย์คีย์การเข้ารหัสรหัสผ่าน |
kPasscodeEncryptionKeyLen
|
ความยาวของการเข้ารหัสรหัสผ่าน (AES-128) |
kPasscodeFingerprintKeyDiversifierSize
|
ขนาดของโปรแกรมสํารวจคีย์ลายนิ้วมือสําหรับรหัสผ่าน |
kPasscodeFingerprintKeyLen
|
ความยาวของคีย์รหัสผ่าน (SHA-1) ของรหัสผ่าน |
kPasscodeFingerprintLen
|
ความยาวของลายนิ้วมือสําหรับรหัสผ่าน |
kPasscodeMaxEncryptedLen
|
ความยาวสูงสุดของรหัสผ่านที่เข้ารหัส |
kPasscodeMaxLen
|
ความยาวสูงสุดของรหัสผ่านที่ไม่เข้ารหัส |
kPasscodePaddedLen
|
ความยาวของรหัสผ่าน (เสริมด้วยความยาวบล็อก AES-128) |
kPasscodeTotalDerivedKeyLen
|
ความยาวของคีย์รวม (การเข้ารหัสและ AMP และความสมบูรณ์) |
ตัวแปร
คีย์ kPasscodeEncKeyDiversifier
const uint8_t kPasscodeEncKeyDiversifier[] = { 0x1A, 0x65, 0x5D, 0x96 }
เครื่องมือเปลี่ยนคีย์ที่ใช้สําหรับการรับคีย์การเข้ารหัสของรหัสผ่าน Weave
ค่านี้แสดงถึง 4 ไบต์แรกของ SHA-1 HASH ของ "Nest Passcode EK และ AK"
คีย์ตัวแยกลายนิ้วมือ kPasscode
const uint8_t kPasscodeFingerprintKeyDiversifier[] = { 0xD1, 0xA1, 0xD9, 0x6C }
เครื่องมือเปลี่ยนคีย์ที่ใช้สําหรับการรับคีย์การเข้ารหัสของรหัสผ่าน Weave
ค่านี้แสดงถึง 4 ไบต์แรกของ SHA-1 HASH ของ "Nest Passcode EK และ AK"
ฟังก์ชัน
ถอดรหัสรหัสผ่าน
WEAVE_ERROR DecryptPasscode( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore )
ถอดรหัสรหัสผ่านที่เข้ารหัสโดยใช้รูปแบบการเข้ารหัสของ Nest Passcode
รายละเอียด | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||||
แสดงผลค่า |
|
ถอดรหัสรหัสผ่าน
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 )
ถอดรหัสรหัสผ่านที่เข้ารหัสโดยใช้รูปแบบการเข้ารหัสของ Nest Passcode
รายละเอียด | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||||
แสดงผลค่า |
|
เข้ารหัสรหัสผ่าน
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 )
เข้ารหัสรหัสผ่านโดยใช้รูปแบบการเข้ารหัสรหัสผ่าน Nest
รายละเอียด | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||||||
แสดงผลค่า |
|
เข้ารหัสรหัสผ่าน
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 )
เข้ารหัสรหัสผ่านโดยใช้รูปแบบการเข้ารหัสรหัสผ่าน Nest
รายละเอียด | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||||||||||
แสดงผลค่า |
|
รับรหัสผ่านที่เข้ารหัส
WEAVE_ERROR GetEncryptedPasscodeConfig( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config )
รับประเภทการกําหนดค่าของรหัสผ่านที่เข้ารหัส
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
ลายนิ้วมือ PassEncryptedPasscode
WEAVE_ERROR GetEncryptedPasscodeFingerprint( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen )
รับค่าลายนิ้วมือที่เชื่อมโยงกับรหัสผ่านที่เข้ารหัส
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
รับรหัสคีย์ที่เข้ารหัส
WEAVE_ERROR GetEncryptedPasscodeKeyId( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId )
รับรหัสของรหัสที่ใช้เข้ารหัสรหัสผ่านที่เข้ารหัส
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
รหัสผ่าน GetEncryptedPasscode
WEAVE_ERROR GetEncryptedPasscodeNonce( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce )
รับค่า cece ที่เชื่อมโยงกับรหัสผ่านที่เข้ารหัส
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
IsSupportedPasscodeEncryptionConfig
bool IsSupportedPasscodeEncryptionConfig( uint8_t config )
ส่งคืนค่า True หาก API การเข้ารหัส/การถอดรหัสรหัสผ่านรองรับการกําหนดค่าการเข้ารหัสรหัสผ่านที่ระบุ