nl:: PairingCode
摘要
列舉 |
|
---|---|
@353
|
列舉 |
@354
|
列舉 |
@355
|
列舉 |
@356{
|
列舉 |
函式 |
|
---|---|
GeneratePairingCode(uint8_t pairingCodeLen, char *outBuf)
|
產生隨機配對碼。
|
IntToPairingCode(uint64_t val, uint8_t pairingCodeLen, char *outBuf)
|
將整數值編碼為 Weave 配對碼。
|
IntToPairingCodeChar(int val)
|
char
將 0..31 範圍內的整數值轉換為對應的 Weave 配對碼字元。
|
IsValidPairingCodeChar(char ch)
|
bool
如果提供的字元是有效的 Weave 配對碼字元,則傳回 true。
|
KryptoniteDeviceIdToPairingCode(uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize)
|
根據 Kryptonite 裝置 ID 產生 Kryptonite 配對碼字串。
|
KryptonitePairingCodeToDeviceId(const char *pairingCode, uint64_t & deviceId)
|
傳回以 Kryptonite 配對碼編碼的裝置 ID。
|
NevisDeviceIdToPairingCode(uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize)
|
根據 Nevis 裝置 ID 產生 Nevis 配對碼字串。
|
NevisPairingCodeToDeviceId(const char *pairingCode, uint64_t & deviceId)
|
傳回以 Nevis 配對碼編碼的裝置 ID。
|
NormalizePairingCode(char *pairingCode, size_t & pairingCodeLen)
|
void
將配對碼字串中的字元正規化。
|
PairingCodeCharToInt(char ch)
|
int
將 Weave 配對碼字元轉換成介於 0..31 之間的整數值。
|
PairingCodeToInt(const char *pairingCode, size_t pairingCodeLen, uint64_t & val)
|
將 Weave 配對碼解碼為整數值。
|
VerifyPairingCode(const char *pairingCode, size_t pairingCodeLen)
|
驗證 Weave 配對碼和檢查字元。
|
列舉
@353
@353
@354
@354
@355
@355
@356
@356
屬性 | |
---|---|
kBitsPerCharacter
|
單一配對碼字元中編碼的位元數。 |
kKryptonitePairingCodeLength
|
Kryptonite 的配對碼長度。 |
kPairingCodeLenMin
|
配對碼長度下限。 |
kStandardPairingCodeLength
|
大多數 Nest 產品的配對碼長度。 |
函式
GeneratePairingCode
WEAVE_ERROR GeneratePairingCode( uint8_t pairingCodeLen, char *outBuf )
產生隨機配對碼。
這個函式會產生隨機的 Weave 配對程式碼字串,以指定長度為 . 值,並編碼成大端數字的 Base-32 數字,以及結尾的 Verhoeff 檢查字元。產生的字串含有 pairingCodeLen 參數指定的固定長度。為符合這個長度,該字串會在左側加上 0。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回值 |
|
IntToPairingCode
WEAVE_ERROR IntToPairingCode( uint64_t val, uint8_t pairingCodeLen, char *outBuf )
將整數值編碼為 Weave 配對碼。
函式會產生 Weave 配對碼字串,其中包含提供的無正負號整數值,並編碼為底數底 32 數字,加上結尾的 Verhoeff 檢查字元。產生的字串含有 pairingCodeLen 參數指定的固定長度。為符合這個長度,該字串會在左側加上 0。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
IntToPairingCodeChar
char IntToPairingCodeChar( int val )
將 0..31 範圍內的整數值轉換為對應的 Weave 配對碼字元。
請注意,這個函式一律會產生大寫字元。
詳細說明 | |||
---|---|---|---|
參數 |
|
||
傳回 |
對應至指定整數值的配對碼字元,如果整數值超出範圍,則為 0。
|
IsValidPairingCodeChar
bool IsValidPairingCodeChar( char ch )
如果提供的字元是有效的 Weave 配對碼字元,則傳回 true。
請注意,這個函式不區分大小寫。
詳細說明 | |||
---|---|---|---|
參數 |
|
||
傳回 |
如果提供的字元是有效的 Weave 配對碼字元,則為 True。
|
KryptoniteDeviceIdToPairingCode
WEAVE_ERROR KryptoniteDeviceIdToPairingCode( uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize )
根據 Kryptonite 裝置 ID 產生 Kryptonite 配對碼字串。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
KryptonitePairingCodeToDeviceId
WEAVE_ERROR KryptonitePairingCodeToDeviceId( const char *pairingCode, uint64_t & deviceId )
傳回以 Kryptonite 配對碼編碼的裝置 ID。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回值 |
|
NevisDeviceIdToPairingCode
WEAVE_ERROR NevisDeviceIdToPairingCode( uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize )
根據 Nevis 裝置 ID 產生 Nevis 配對碼字串。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
NevisPairingCodeToDeviceId
WEAVE_ERROR NevisPairingCodeToDeviceId( const char *pairingCode, uint64_t & deviceId )
傳回以 Nevis 配對碼編碼的裝置 ID。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回值 |
|
NormalizePairingCode
void NormalizePairingCode( char *pairingCode, size_t & pairingCodeLen )
將配對碼字串中的字元正規化。
這個函式會將所有字母字元轉換為大寫,將無效字元「I」、「O」、「Q」和「Z」分別對應至「1」、「0」、「0」和「2」,並移除特定字串中所有其他非配對編碼字元。
輸入字串不一定要終止 NULL,但如果輸出是 NULL,也會終止。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
PairingCodeCharToInt
int PairingCodeCharToInt( char ch )
將 Weave 配對碼字元轉換成介於 0..31 之間的整數值。
請注意,這個函式不區分大小寫。
詳細說明 | |||
---|---|---|---|
參數 |
|
||
傳回 |
與指定配對碼字元對應的整數值;如果 ch 不是有效的字元,則為 -1。
|
PairingCodeToInt
WEAVE_ERROR PairingCodeToInt( const char *pairingCode, size_t pairingCodeLen, uint64_t & val )
將 Weave 配對碼解碼為整數值。
此函式會將 Weave 配對碼字串的初始字元剖析為 Base-32 數字,然後傳回結果值做為無正負號整數。只要解碼的整數不超過 uint64_t,輸入字串長度可以是 >= 2 的任何長度。
系統不會嘗試驗證 Verhoeff 檢查字元 (請參閱 VerifyPairingCode())。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
VerifyPairingCode
WEAVE_ERROR VerifyPairingCode( const char *pairingCode, size_t pairingCodeLen )
驗證 Weave 配對碼和檢查字元。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回值 |
|