nl:: Weave:: Profiles:: Security:: Passcodes
이 네임스페이스는 Weave 보안 프로필 내에 있는 Weave 암호 라이브러리에 대한 Weave 내의 모든 인터페이스를 포함합니다.
요약
열거 |
|
---|---|
@278{
|
enum Weave 비밀번호 암호화 구성 유형입니다. |
@279{
|
enum Weave 비밀번호 암호화 프로토콜 매개변수 크기입니다. |
변수 |
|
---|---|
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 비밀번호 암호화 스키마를 사용하여 암호화된 비밀번호를 복호화합니다.
|
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 비밀번호 암호화 스키마를 사용하여 암호화된 비밀번호를 복호화합니다.
|
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)
|
암호화된 비밀번호를 암호화하는 데 사용된 키의 ID를 가져옵니다.
|
GetEncryptedPasscodeNonce(const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce)
|
암호화된 비밀번호와 연결된 nonce 값을 가져옵니다.
|
IsSupportedPasscodeEncryptionConfig(uint8_t config)
|
bool
제공된 비밀번호 암호화 구성이 비밀번호 암호화/복호화 API에서 지원되는 경우 true를 반환합니다.
|
구조체 |
|
---|---|
nl:: |
열거
@278
@278
Weave 비밀번호 암호화 구성 유형입니다.
속성 | |
---|---|
kPasscodeConfig1_KeyId
|
테스트 비밀번호 구성 1에 사용된 더미 키 ID입니다. |
kPasscode_Config1_TEST_ONLY
|
비밀번호 암호화 구성 #1은 지문 비밀번호 인증 시 암호화와 비밀 키를 사용하지 않습니다. 이 구성은 테스트 목적으로만 사용해야 합니다(SHOULD). |
kPasscode_Config2
|
비밀번호 암호화 구성 #2는 8바이트 HMAC-SHA-1 무결성과 8바이트 HMAC-SHA-1 디지털 지문이 있는 AES-128-ECB 암호화를 사용합니다. |
@279
@279
Weave 비밀번호 암호화 프로토콜 매개변수 크기입니다.
속성 | |
---|---|
kPasscodeAuthenticationKeyLen
|
SHA-1 (비밀번호 인증) 키 길이 |
kPasscodeAuthenticatorLen
|
비밀번호 인증자 길이 |
kPasscodeEncKeyDiversifierSize
|
비밀번호 암호화 애플리케이션 키 다각화 크기입니다. |
kPasscodeEncryptionKeyLen
|
비밀번호 암호화 (AES-128) 키 길이 |
kPasscodeFingerprintKeyDiversifierSize
|
비밀번호 지문 키 다양화 크기입니다. |
kPasscodeFingerprintKeyLen
|
비밀번호 지문 (SHA-1) 키 길이 |
kPasscodeFingerprintLen
|
비밀번호 지문 길이 |
kPasscodeMaxEncryptedLen
|
암호화된 비밀번호 최대 길이 |
kPasscodeMaxLen
|
암호화되지 않은 최대 비밀번호 길이입니다. |
kPasscodePaddedLen
|
비밀번호 길이 (AES-128 블록 길이로 패딩됨) |
kPasscodeTotalDerivedKeyLen
|
비밀번호 총 (암호화 및 무결성) 키 길이 |
변수
kPasscodeEncKeyDiversifier
const uint8_t kPasscodeEncKeyDiversifier[] = { 0x1A, 0x65, 0x5D, 0x96 }
Weave 비밀번호 암호화 키 파생에 사용되는 키 다이버입니다.
이 값은 'Nest Passcode EK and AK'의 SHA-1 HASH의 처음 4바이트를 나타냅니다. 있습니다.
kPasscodeFingerprintKeyDiversifier
const uint8_t kPasscodeFingerprintKeyDiversifier[] = { 0xD1, 0xA1, 0xD9, 0x6C }
Weave 비밀번호 암호화 키 파생에 사용되는 키 다이버입니다.
이 값은 'Nest Passcode EK and AK'의 SHA-1 HASH의 처음 4바이트를 나타냅니다. 있습니다.
함수
DecryptPasscode
WEAVE_ERROR DecryptPasscode( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *passcodeBuf, size_t passcodeBufSize, size_t & passcodeLen, GroupKeyStoreBase *groupKeyStore )
Nest 비밀번호 암호화 스키마를 사용하여 암호화된 비밀번호를 복호화합니다.
세부정보 | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||||||||
반환 값 |
|
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 )
Nest 비밀번호 암호화 스키마를 사용하여 암호화된 비밀번호를 복호화합니다.
세부정보 | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||||||||
반환 값 |
|
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 )
Nest 비밀번호 암호화 스키마를 사용하여 비밀번호를 암호화합니다.
세부정보 | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||||||||||
반환 값 |
|
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 )
Nest 비밀번호 암호화 스키마를 사용하여 비밀번호를 암호화합니다.
세부정보 | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||||||||||||||
반환 값 |
|
GetEncryptedPasscodeConfig
WEAVE_ERROR GetEncryptedPasscodeConfig( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t & config )
암호화된 비밀번호의 구성 유형을 가져옵니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
GetEncryptedPasscodeFingerprint
WEAVE_ERROR GetEncryptedPasscodeFingerprint( const uint8_t *encPasscode, size_t encPasscodeLen, uint8_t *fingerprintBuf, size_t fingerprintBufSize, size_t & fingerprintLen )
암호화된 비밀번호와 연결된 지문 값을 가져옵니다.
세부정보 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
GetEncryptedPasscodeKeyId
WEAVE_ERROR GetEncryptedPasscodeKeyId( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & keyId )
암호화된 비밀번호를 암호화하는 데 사용된 키의 ID를 가져옵니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
GetEncryptedPasscodeNonce
WEAVE_ERROR GetEncryptedPasscodeNonce( const uint8_t *encPasscode, size_t encPasscodeLen, uint32_t & nonce )
암호화된 비밀번호와 연결된 nonce 값을 가져옵니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
IsSupportedPasscodeEncryptionConfig
bool IsSupportedPasscodeEncryptionConfig( uint8_t config )
제공된 비밀번호 암호화 구성이 비밀번호 암호화/복호화 API에서 지원되는 경우 true를 반환합니다.