คริปโต - แพลตฟอร์ม
โมดูลนี้มีกระบวนการ Abstraction ของแพลตฟอร์มสำหรับคริปโต
สรุป
การแจกแจง |
|
---|---|
anonymous enum{
|
enum กำหนดการตั้งค่าสถานะการใช้งานหลัก |
otCryptoKeyAlgorithm{
|
enum กำหนดอัลกอริทึมที่สำคัญ |
otCryptoKeyStorage{
|
enum กำหนดประเภทพื้นที่เก็บข้อมูลหลัก |
otCryptoKeyType{
|
enum กำหนดประเภทคีย์ |
Typedef |
|
---|---|
otCryptoContext
|
typedefstruct otCryptoContext
|
otCryptoKey
|
typedefstruct otCryptoKey
|
otCryptoKeyRef
|
typedefuint32_t
ประเภทข้อมูลนี้แสดงถึงข้อมูลอ้างอิงหลัก |
otPlatCryptoEcdsaKeyPair
|
typedefstruct otPlatCryptoEcdsaKeyPair
|
otPlatCryptoEcdsaPublicKey
|
typedefstruct otPlatCryptoEcdsaPublicKey
|
otPlatCryptoEcdsaSignature
|
typedefstruct otPlatCryptoEcdsaSignature
|
otPlatCryptoSha256Hash
|
typedefstruct otPlatCryptoSha256Hash
แสดงแฮช SHA-256 |
ตัวแปร |
|
---|---|
OT_TOOL_PACKED_END
|
ฟังก์ชัน |
|
---|---|
otPlatCryptoAesEncrypt(otCryptoContext *aContext, const uint8_t *aInput, uint8_t *aOutput)
|
เข้ารหัสข้อมูลที่ระบุ
|
otPlatCryptoAesFree(otCryptoContext *aContext)
|
อิสระในบริบทของ AES
|
otPlatCryptoAesInit(otCryptoContext *aContext)
|
เริ่มต้นการดำเนินการ AES
|
otPlatCryptoAesSetKey(otCryptoContext *aContext, const otCryptoKey *aKey)
|
ตั้งค่าคีย์สำหรับการดำเนินการ AES
|
otPlatCryptoDestroyKey(otCryptoKeyRef aKeyRef)
|
ทำลายคีย์ที่จัดเก็บไว้ใน PSA ITS
|
otPlatCryptoEcdsaExportPublicKey(otCryptoKeyRef aKeyRef, otPlatCryptoEcdsaPublicKey *aPublicKey)
|
รับคีย์สาธารณะที่เชื่อมโยงจากการอ้างอิงคีย์ที่ส่งผ่าน
|
otPlatCryptoEcdsaGenerateAndImportKey(otCryptoKeyRef aKeyRef)
|
สร้างและนำเข้าคู่คีย์ ECDSA ใหม่เมื่อการอ้างอิงที่มีการส่งผ่าน
|
otPlatCryptoEcdsaGenerateKey(otPlatCryptoEcdsaKeyPair *aKeyPair)
|
สร้างและเติมบัฟเฟอร์เอาต์พุตด้วยคู่คีย์ ECDSA ใหม่
|
otPlatCryptoEcdsaGetPublicKey(const otPlatCryptoEcdsaKeyPair *aKeyPair, otPlatCryptoEcdsaPublicKey *aPublicKey)
|
รับคีย์สาธารณะที่เกี่ยวข้องจากบริบทการป้อนข้อมูล
|
otPlatCryptoEcdsaSign(const otPlatCryptoEcdsaKeyPair *aKeyPair, const otPlatCryptoSha256Hash *aHash, otPlatCryptoEcdsaSignature *aSignature)
|
คำนวณลายเซ็น ECDSA สำหรับข้อความที่แฮชโดยใช้คีย์ส่วนตัวจากบริบทอินพุต
|
otPlatCryptoEcdsaSignUsingKeyRef(otCryptoKeyRef aKeyRef, const otPlatCryptoSha256Hash *aHash, otPlatCryptoEcdsaSignature *aSignature)
|
คำนวณลายเซ็น ECDSA สำหรับข้อความที่แฮชโดยใช้การอ้างอิงคีย์ที่ส่งผ่าน
|
otPlatCryptoEcdsaVerify(const otPlatCryptoEcdsaPublicKey *aPublicKey, const otPlatCryptoSha256Hash *aHash, const otPlatCryptoEcdsaSignature *aSignature)
|
ใช้คีย์จากบริบทอินพุตเพื่อยืนยันลายเซ็น ECDSA ของข้อความที่แฮช
|
otPlatCryptoEcdsaVerifyUsingKeyRef(otCryptoKeyRef aKeyRef, const otPlatCryptoSha256Hash *aHash, const otPlatCryptoEcdsaSignature *aSignature)
|
ใช้ Keyref เพื่อยืนยันลายเซ็น ECDSA ของข้อความที่แฮช
|
otPlatCryptoExportKey(otCryptoKeyRef aKeyRef, uint8_t *aBuffer, size_t aBufferLen, size_t *aKeyLen)
|
ส่งออกคีย์ที่เก็บไว้ใน PSA ITS
|
otPlatCryptoHasKey(otCryptoKeyRef aKeyRef)
|
bool
ตรวจสอบว่าการอ้างอิงคีย์ที่ส่งมีคีย์ที่เชื่อมโยงใน PSA ITS หรือไม่
|
otPlatCryptoHkdfDeinit(otCryptoContext *aContext)
|
เริ่มต้นบริบท HKDF
|
otPlatCryptoHkdfExpand(otCryptoContext *aContext, const uint8_t *aInfo, uint16_t aInfoLength, uint8_t *aOutputKey, uint16_t aOutputKeyLength)
|
ทำขั้นตอนขยาย HKDF
|
otPlatCryptoHkdfExtract(otCryptoContext *aContext, const uint8_t *aSalt, uint16_t aSaltLength, const otCryptoKey *aInputKey)
|
ดำเนินการตามขั้นตอนแยก HKDF
|
otPlatCryptoHkdfInit(otCryptoContext *aContext)
|
เริ่มต้นบริบท HKDF
|
otPlatCryptoHmacSha256Deinit(otCryptoContext *aContext)
|
ยกเลิกการเริ่มต้นการดำเนินการ HMAC
|
otPlatCryptoHmacSha256Finish(otCryptoContext *aContext, uint8_t *aBuf, size_t aBufLength)
|
ดำเนินการ HMAC ให้เสร็จสมบูรณ์
|
otPlatCryptoHmacSha256Init(otCryptoContext *aContext)
|
เริ่มต้นการดำเนินการ HMAC
|
otPlatCryptoHmacSha256Start(otCryptoContext *aContext, const otCryptoKey *aKey)
|
เริ่มการดำเนินการ HMAC
|
otPlatCryptoHmacSha256Update(otCryptoContext *aContext, const void *aBuf, uint16_t aBufLength)
|
อัปเดตการดำเนินการ HMAC ด้วยอินพุตใหม่
|
otPlatCryptoImportKey(otCryptoKeyRef *aKeyRef, otCryptoKeyType aKeyType, otCryptoKeyAlgorithm aKeyAlgorithm, int aKeyUsage, otCryptoKeyStorage aKeyPersistence, const uint8_t *aKey, size_t aKeyLen)
|
นำเข้าคีย์ไปยัง PSA ITS
|
otPlatCryptoInit(void)
|
void
เริ่มต้นโมดูล Crypto
|
otPlatCryptoPbkdf2GenerateKey(const uint8_t *aPassword, uint16_t aPasswordLen, const uint8_t *aSalt, uint16_t aSaltLen, uint32_t aIterationCounter, uint16_t aKeyLen, uint8_t *aKey)
|
แสดง PKCS#5 PBKDF2 โดยใช้ CMAC (AES-CMAC-PRF-128)
|
otPlatCryptoRandomDeinit(void)
|
void
ยกเลิกการเริ่มต้นเครื่องมือสร้างหมายเลขที่มีการรักษาความปลอดภัยแบบเข้ารหัสลับ (CSPRNG)
|
otPlatCryptoRandomGet(uint8_t *aBuffer, uint16_t aSize)
|
เติมบัฟเฟอร์ที่ระบุด้วยไบต์แบบสุ่มที่มีความปลอดภัยแบบเข้ารหัส
|
otPlatCryptoRandomInit(void)
|
void
เริ่มต้นเครื่องมือสร้างหมายเลขที่มีการรักษาความปลอดภัยแบบเข้ารหัสลับ (CSPRNG)
|
otPlatCryptoSha256Deinit(otCryptoContext *aContext)
|
ยกเลิกการเริ่มต้นการดำเนินการ SHA-256
|
otPlatCryptoSha256Finish(otCryptoContext *aContext, uint8_t *aHash, uint16_t aHashSize)
|
ดำเนินการ SHA-256 ให้เสร็จ
|
otPlatCryptoSha256Init(otCryptoContext *aContext)
|
เริ่มต้นการดำเนินการ SHA-256
|
otPlatCryptoSha256Start(otCryptoContext *aContext)
|
เริ่มการดำเนินการ SHA-256
|
otPlatCryptoSha256Update(otCryptoContext *aContext, const void *aBuf, uint16_t aBufLength)
|
อัปเดตการดำเนินการ SHA-256 ด้วยอินพุตใหม่
|
โครงสร้าง |
|
---|---|
otCryptoContext |
จัดเก็บออบเจ็กต์บริบทสำหรับ API ของแพลตฟอร์ม |
otCryptoKey |
แสดงเนื้อหาคีย์ที่จำเป็นสำหรับการดำเนินการ Crypto |
otPlatCryptoEcdsaKeyPair |
แสดงคู่คีย์ ECDSA (คีย์สาธารณะและคีย์ส่วนตัว) |
otPlatCryptoEcdsaPublicKey |
แสดงคีย์สาธารณะ ECDSA |
otPlatCryptoEcdsaSignature |
แสดงลายเซ็น ECDSA |
otPlatCryptoSha256Hash |
แสดงแฮช SHA-256 |
การแจกแจง
enum ที่ไม่ระบุตัวตน
anonymous enum
กำหนดการตั้งค่าสถานะการใช้งานหลัก
พร็อพเพอร์ตี้ | |
---|---|
OT_CRYPTO_KEY_USAGE_DECRYPT
|
การใช้คีย์: AES ECB |
OT_CRYPTO_KEY_USAGE_ENCRYPT
|
การใช้คีย์: การเข้ารหัส (กำหนดผู้ให้บริการ) |
OT_CRYPTO_KEY_USAGE_EXPORT
|
การใช้คีย์: สามารถส่งออกคีย์ได้ |
OT_CRYPTO_KEY_USAGE_NONE
|
การใช้คีย์: การใช้คีย์ว่างเปล่า |
OT_CRYPTO_KEY_USAGE_SIGN_HASH
|
การใช้คีย์: แฮชป้าย |
OT_CRYPTO_KEY_USAGE_VERIFY_HASH
|
การใช้คีย์: ยืนยันแฮช |
otCryptoKeyAlgorithm
otCryptoKeyAlgorithm
กำหนดอัลกอริทึมที่สำคัญ
พร็อพเพอร์ตี้ | |
---|---|
OT_CRYPTO_KEY_ALG_AES_ECB
|
อัลกอริทึมหลัก: AES ECB |
OT_CRYPTO_KEY_ALG_ECDSA
|
อัลกอริทึมหลัก: ECDSA |
OT_CRYPTO_KEY_ALG_HMAC_SHA_256
|
อัลกอริทึมหลัก: HMAC SHA-256 |
OT_CRYPTO_KEY_ALG_VENDOR
|
อัลกอริทึมหลัก: ผู้ให้บริการกำหนด |
otCryptoKeyStorage
otCryptoKeyStorage
กำหนดประเภทพื้นที่เก็บข้อมูลหลัก
พร็อพเพอร์ตี้ | |
---|---|
OT_CRYPTO_KEY_STORAGE_PERSISTENT
|
ความต่อเนื่องของคีย์: คีย์คงอยู่ตลอด |
OT_CRYPTO_KEY_STORAGE_VOLATILE
|
ความต่อเนื่องหลัก: คีย์มีความผันผวน |
otCryptoKeyType
otCryptoKeyType
กำหนดประเภทคีย์
พร็อพเพอร์ตี้ | |
---|---|
OT_CRYPTO_KEY_TYPE_AES
|
ประเภทคีย์: AES |
OT_CRYPTO_KEY_TYPE_ECDSA
|
ประเภทคีย์: ECDSA |
OT_CRYPTO_KEY_TYPE_HMAC
|
ประเภทคีย์: HMAC |
OT_CRYPTO_KEY_TYPE_RAW
|
ประเภทคีย์: ข้อมูลดิบ |
Typedef
otCryptoContext
struct otCryptoContext otCryptoContext
otCryptoKey
struct otCryptoKey otCryptoKey
otCryptoKeyRef
uint32_t otCryptoKeyRef
ประเภทข้อมูลนี้แสดงถึงข้อมูลอ้างอิงหลัก
otPlatCryptoEcdsaKeyPair
struct otPlatCryptoEcdsaKeyPair otPlatCryptoEcdsaKeyPair
otPlatCryptoEcdsaPublicKey
struct otPlatCryptoEcdsaPublicKey otPlatCryptoEcdsaPublicKey
otPlatCryptoEcdsaSignature
struct otPlatCryptoEcdsaSignature otPlatCryptoEcdsaSignature
ตัวแปร
OT_TOOL_PACKED_END
OT_TOOL_PACKED_BEGIN struct otPlatCryptoSha256Hash OT_TOOL_PACKED_END
ฟังก์ชัน
otPlatCryptoAesEncrypt
otError otPlatCryptoAesEncrypt( otCryptoContext *aContext, const uint8_t *aInput, uint8_t *aOutput )
เข้ารหัสข้อมูลที่ระบุ
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoAesFree
otError otPlatCryptoAesFree( otCryptoContext *aContext )
อิสระในบริบทของ AES
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoAesInit
otError otPlatCryptoAesInit( otCryptoContext *aContext )
เริ่มต้นการดำเนินการ AES
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoAesSetKey
otError otPlatCryptoAesSetKey( otCryptoContext *aContext, const otCryptoKey *aKey )
ตั้งค่าคีย์สำหรับการดำเนินการ AES
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoDestroyKey
otError otPlatCryptoDestroyKey( otCryptoKeyRef aKeyRef )
ทำลายคีย์ที่จัดเก็บไว้ใน PSA ITS
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatCryptoEcdsaExportPublicKey
otError otPlatCryptoEcdsaExportPublicKey( otCryptoKeyRef aKeyRef, otPlatCryptoEcdsaPublicKey *aPublicKey )
รับคีย์สาธารณะที่เชื่อมโยงจากการอ้างอิงคีย์ที่ส่งผ่าน
คีย์สาธารณะจะได้รับการจัดเก็บแตกต่างกันไปขึ้นอยู่กับไลบรารีแบ็กเอนด์คริปโตที่ใช้อยู่ (OPENTHREAD_CONFIG_CRYPTO_LIB)
API นี้ต้องแน่ใจว่าได้ส่งคืนคีย์สาธารณะเป็นการแสดงลำดับไบต์ของจุดเส้นโค้งที่ไม่ได้บีบอัด (RFC 6605 - sec 4)
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoEcdsaGenerateAndImportKey
otError otPlatCryptoEcdsaGenerateAndImportKey( otCryptoKeyRef aKeyRef )
สร้างและนำเข้าคู่คีย์ ECDSA ใหม่เมื่อการอ้างอิงที่มีการส่งผ่าน
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoEcdsaGenerateKey
otError otPlatCryptoEcdsaGenerateKey( otPlatCryptoEcdsaKeyPair *aKeyPair )
สร้างและเติมบัฟเฟอร์เอาต์พุตด้วยคู่คีย์ ECDSA ใหม่
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoEcdsaGetPublicKey
otError otPlatCryptoEcdsaGetPublicKey( const otPlatCryptoEcdsaKeyPair *aKeyPair, otPlatCryptoEcdsaPublicKey *aPublicKey )
รับคีย์สาธารณะที่เกี่ยวข้องจากบริบทการป้อนข้อมูล
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoEcdsaSign
otError otPlatCryptoEcdsaSign( const otPlatCryptoEcdsaKeyPair *aKeyPair, const otPlatCryptoSha256Hash *aHash, otPlatCryptoEcdsaSignature *aSignature )
คำนวณลายเซ็น ECDSA สำหรับข้อความที่แฮชโดยใช้คีย์ส่วนตัวจากบริบทอินพุต
ใช้กระบวนการสร้างลายเซ็นดิจิทัลเชิงกำหนดจาก RFC 6979
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoEcdsaSignUsingKeyRef
otError otPlatCryptoEcdsaSignUsingKeyRef( otCryptoKeyRef aKeyRef, const otPlatCryptoSha256Hash *aHash, otPlatCryptoEcdsaSignature *aSignature )
คำนวณลายเซ็น ECDSA สำหรับข้อความที่แฮชโดยใช้การอ้างอิงคีย์ที่ส่งผ่าน
ใช้กระบวนการสร้างลายเซ็นดิจิทัลเชิงกำหนดจาก RFC 6979
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoEcdsaVerify
otError otPlatCryptoEcdsaVerify( const otPlatCryptoEcdsaPublicKey *aPublicKey, const otPlatCryptoSha256Hash *aHash, const otPlatCryptoEcdsaSignature *aSignature )
ใช้คีย์จากบริบทอินพุตเพื่อยืนยันลายเซ็น ECDSA ของข้อความที่แฮช
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoEcdsaVerifyUsingKeyRef
otError otPlatCryptoEcdsaVerifyUsingKeyRef( otCryptoKeyRef aKeyRef, const otPlatCryptoSha256Hash *aHash, const otPlatCryptoEcdsaSignature *aSignature )
ใช้ Keyref เพื่อยืนยันลายเซ็น ECDSA ของข้อความที่แฮช
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoExportKey
otError otPlatCryptoExportKey( otCryptoKeyRef aKeyRef, uint8_t *aBuffer, size_t aBufferLen, size_t *aKeyLen )
ส่งออกคีย์ที่เก็บไว้ใน PSA ITS
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoHasKey
bool otPlatCryptoHasKey( otCryptoKeyRef aKeyRef )
ตรวจสอบว่าการอ้างอิงคีย์ที่ส่งมีคีย์ที่เชื่อมโยงใน PSA ITS หรือไม่
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatCryptoHkdfDeinit
otError otPlatCryptoHkdfDeinit( otCryptoContext *aContext )
เริ่มต้นบริบท HKDF
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoHkdfExpand
otError otPlatCryptoHkdfExpand( otCryptoContext *aContext, const uint8_t *aInfo, uint16_t aInfoLength, uint8_t *aOutputKey, uint16_t aOutputKeyLength )
ทำขั้นตอนขยาย HKDF
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
แสดงผลค่า |
|
otPlatCryptoHkdfExtract
otError otPlatCryptoHkdfExtract( otCryptoContext *aContext, const uint8_t *aSalt, uint16_t aSaltLength, const otCryptoKey *aInputKey )
ดำเนินการตามขั้นตอนแยก HKDF
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatCryptoHkdfInit
otError otPlatCryptoHkdfInit( otCryptoContext *aContext )
เริ่มต้นบริบท HKDF
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoHmacSha256Deinit
otError otPlatCryptoHmacSha256Deinit( otCryptoContext *aContext )
ยกเลิกการเริ่มต้นการดำเนินการ HMAC
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoHmacSha256Finish
otError otPlatCryptoHmacSha256Finish( otCryptoContext *aContext, uint8_t *aBuf, size_t aBufLength )
ดำเนินการ HMAC ให้เสร็จสมบูรณ์
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoHmacSha256Init
otError otPlatCryptoHmacSha256Init( otCryptoContext *aContext )
เริ่มต้นการดำเนินการ HMAC
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoHmacSha256Start
otError otPlatCryptoHmacSha256Start( otCryptoContext *aContext, const otCryptoKey *aKey )
เริ่มการดำเนินการ HMAC
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoHmacSha256Update
otError otPlatCryptoHmacSha256Update( otCryptoContext *aContext, const void *aBuf, uint16_t aBufLength )
อัปเดตการดำเนินการ HMAC ด้วยอินพุตใหม่
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoImportKey
otError otPlatCryptoImportKey( otCryptoKeyRef *aKeyRef, otCryptoKeyType aKeyType, otCryptoKeyAlgorithm aKeyAlgorithm, int aKeyUsage, otCryptoKeyStorage aKeyPersistence, const uint8_t *aKey, size_t aKeyLen )
นำเข้าคีย์ไปยัง PSA ITS
หากส่ง OT_CRYPTO_KEY_STORAGE_VOLATILE สำหรับ aKeyPersistence จากนั้นaKeyRef
จะเป็นเอาต์พุต ค่าเริ่มต้นจะไม่สำคัญและ API ของแพลตฟอร์มจะต้องอัปเดตเพื่อแสดงการอ้างอิงคีย์ใหม่
รายละเอียด | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||
แสดงผลค่า |
|
API นี้จะใช้กับแกน OT เท่านั้นเมื่อเปิดใช้ OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE
otPlatCryptoInit
void otPlatCryptoInit( void )
เริ่มต้นโมดูล Crypto
otPlatCryptoPbkdf2GenerateKey
otError otPlatCryptoPbkdf2GenerateKey( const uint8_t *aPassword, uint16_t aPasswordLen, const uint8_t *aSalt, uint16_t aSaltLen, uint32_t aIterationCounter, uint16_t aKeyLen, uint8_t *aKey )
แสดง PKCS#5 PBKDF2 โดยใช้ CMAC (AES-CMAC-PRF-128)
รายละเอียด | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||
แสดงผลค่า |
|
otPlatCryptoRandomDeinit
void otPlatCryptoRandomDeinit( void )
ยกเลิกการเริ่มต้นเครื่องมือสร้างหมายเลขที่มีการรักษาความปลอดภัยแบบเข้ารหัสลับ (CSPRNG)
otPlatCryptoRandomGet
otError otPlatCryptoRandomGet( uint8_t *aBuffer, uint16_t aSize )
เติมบัฟเฟอร์ที่ระบุด้วยไบต์แบบสุ่มที่มีความปลอดภัยแบบเข้ารหัส
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatCryptoRandomInit
void otPlatCryptoRandomInit( void )
เริ่มต้นเครื่องมือสร้างหมายเลขที่มีการรักษาความปลอดภัยแบบเข้ารหัสลับ (CSPRNG)
otPlatCryptoSha256Deinit
otError otPlatCryptoSha256Deinit( otCryptoContext *aContext )
ยกเลิกการเริ่มต้นการดำเนินการ SHA-256
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoSha256Finish
otError otPlatCryptoSha256Finish( otCryptoContext *aContext, uint8_t *aHash, uint16_t aHashSize )
ดำเนินการ SHA-256 ให้เสร็จ
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoSha256Init
otError otPlatCryptoSha256Init( otCryptoContext *aContext )
เริ่มต้นการดำเนินการ SHA-256
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoSha256Start
otError otPlatCryptoSha256Start( otCryptoContext *aContext )
เริ่มการดำเนินการ SHA-256
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatCryptoSha256Update
otError otPlatCryptoSha256Update( otCryptoContext *aContext, const void *aBuf, uint16_t aBufLength )
อัปเดตการดำเนินการ SHA-256 ด้วยอินพุตใหม่
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
มาโคร
OT_CRYPTO_ECDSA_MAX_DER_SIZE
OT_CRYPTO_ECDSA_MAX_DER_SIZE 125
ขนาดบัฟเฟอร์สูงสุด (เป็นไบต์) สำหรับการแสดงคู่คีย์ EDCSA ในรูปแบบ DER
OT_CRYPTO_ECDSA_PUBLIC_KEY_SIZE
OT_CRYPTO_ECDSA_PUBLIC_KEY_SIZE 64
ขนาดบัฟเฟอร์ (ในหน่วยไบต์) สำหรับแสดงคีย์สาธารณะ EDCSA
OT_CRYPTO_ECDSA_SIGNATURE_SIZE
OT_CRYPTO_ECDSA_SIGNATURE_SIZE 64
ขนาดบัฟเฟอร์ (ในหน่วยไบต์) สำหรับแสดงลายเซ็น EDCSA
OT_CRYPTO_PBDKF2_MAX_SALT_SIZE
OT_CRYPTO_PBDKF2_MAX_SALT_SIZE 30
ความยาว SALT สูงสุด PBKDF2: คำนำหน้า Salt (6) + แผงแบบขยาย (8) + ชื่อเครือข่าย (16)
OT_CRYPTO_SHA256_HASH_SIZE
OT_CRYPTO_SHA256_HASH_SIZE 32
ความยาวของแฮช SHA256 (ในหน่วยไบต์)
แหล่งข้อมูล
หัวข้ออ้างอิง API ของ OpenThread จะมาจากซอร์สโค้ดซึ่งพร้อมใช้งานใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารประกอบของเราได้ที่แหล่งข้อมูล