क्रिप्टो - प्लैटफ़ॉर्म
इस मॉड्यूल में, Crypto को प्लैटफ़ॉर्म ऐब्स्ट्रैक्शन के तौर पर शामिल किया गया है.
खास जानकारी
गिनती |
|
---|---|
anonymous enum{
|
enum इस्तेमाल के मुख्य फ़्लैग बताता है. |
otCryptoKeyAlgorithm{
|
enum यह मुख्य एल्गोरिदम के बारे में बताता है. |
otCryptoKeyStorage{
|
enum इस नीति से, स्टोरेज के अलग-अलग टाइप के बारे में पता चलता है. |
otCryptoKeyType{
|
enum इस नीति से, कुंजी के टाइप के बारे में पता चलता है. |
टाइपडेफ़ |
|
---|---|
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)
|
ईसीडीएसए कुंजी वाले नए पेयर का इस्तेमाल करके, आउटपुट बफ़र जनरेट और पॉप्युलेट करें.
|
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)
|
हैश किए गए मैसेज के ECDSA हस्ताक्षर की पुष्टि करने के लिए, keyref का इस्तेमाल करें.
|
otPlatCryptoExportKey(otCryptoKeyRef aKeyRef, uint8_t *aBuffer, size_t aBufferLen, size_t *aKeyLen)
|
PSA आईटीएस में सेव की गई कुंजी को एक्सपोर्ट करें.
|
otPlatCryptoHasKey(otCryptoKeyRef aKeyRef)
|
bool
देखें कि जांच की गई कुंजी की जानकारी, PSA आईटीएस से जुड़ी है या नहीं.
|
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)
|
एचएमएसी कार्रवाई को शुरू न करें.
|
otPlatCryptoHmacSha256Finish(otCryptoContext *aContext, uint8_t *aBuf, size_t aBufLength)
|
एचएमएसी कार्रवाई पूरी करें.
|
otPlatCryptoHmacSha256Init(otCryptoContext *aContext)
|
एचएमएसी कार्रवाई शुरू करें.
|
otPlatCryptoHmacSha256Start(otCryptoContext *aContext, const otCryptoKey *aKey)
|
एचएमएसी कार्रवाई शुरू करें.
|
otPlatCryptoHmacSha256Update(otCryptoContext *aContext, const void *aBuf, uint16_t aBufLength)
|
एचएमएसी कार्रवाई को नए इनपुट के साथ अपडेट करें.
|
otPlatCryptoImportKey(otCryptoKeyRef *aKeyRef, otCryptoKeyType aKeyType, otCryptoKeyAlgorithm aKeyAlgorithm, int aKeyUsage, otCryptoKeyStorage aKeyPersistence, const uint8_t *aKey, size_t aKeyLen)
|
PSA आईटीएस में कोई कुंजी इंपोर्ट करें.
|
otPlatCryptoInit(void)
|
void
क्रिप्टो मॉड्यूल शुरू करें.
|
otPlatCryptoPbkdf2GenerateKey(const uint8_t *aPassword, uint16_t aPasswordLen, const uint8_t *aSalt, uint16_t aSaltLen, uint32_t aIterationCounter, uint16_t aKeyLen, uint8_t *aKey)
|
void
CMAC (AES-CMAC-PRF-128) का इस्तेमाल करके AVG#5 PBKDF2 करें.
|
otPlatCryptoRandomDeinit(void)
|
void
क्रिप्टोग्राफ़िक तरीके से सुरक्षित सूडोरैंडम नंबर जनरेटर (सीएसपीआरएनजी) को शुरू करें.
|
otPlatCryptoRandomGet(uint8_t *aBuffer, uint16_t aSize)
|
किसी बफ़र में क्रिप्टोग्राफ़िक तरीके से सुरक्षित रैंडम बाइट भरता है.
|
otPlatCryptoRandomInit(void)
|
void
क्रिप्टोग्राफ़िक तरीके से सुरक्षित सूडोरैंडम नंबर जनरेटर (सीएसपीआरएनजी) शुरू करें.
|
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 |
प्लैटफ़ॉर्म एपीआई के लिए, संदर्भ ऑब्जेक्ट को स्टोर करता है. |
otCryptoKey |
यह क्रिप्टो ऑपरेशन के लिए ज़रूरी मुख्य कॉन्टेंट के बारे में बताता है. |
otPlatCryptoEcdsaKeyपेयर |
यह ECDSA कुंजी के जोड़े (सार्वजनिक और निजी कुंजी) को दिखाता है. |
otPlatCryptoEcdsaPublicKey |
ECDSA सार्वजनिक कुंजी दिखाता है. |
otPlatCryptoEcdsaSignature |
ECDSA हस्ताक्षर के बारे में बताता है. |
otPlatCryptoSha256Hash |
SHA-256 हैश का प्रतिनिधित्व करता है. |
गिनती
अनाम
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
|
कुंजी का टाइप: एचएमएसी. |
OT_CRYPTO_KEY_TYPE_RAW
|
कुंजी का टाइप: रॉ डेटा. |
टाइपडेफ़
otCryptoContext
struct otCryptoContext otCryptoContext
otCryptoKey
struct otCryptoKey otCryptoKey
otCryptoKeyRef
uint32_t otCryptoKeyRef
यह डेटाटाइप, मुख्य रेफ़रंस के बारे में बताता है.
otPlatCryptoEcdsaKeyपेयर
struct otPlatCryptoEcdsaKeyPair otPlatCryptoEcdsaKeyPair
otPlatCryptoEcdsaPublicKey
struct otPlatCryptoEcdsaPublicKey otPlatCryptoEcdsaPublicKey
otPlatCryptoEcdsaSignature
struct otPlatCryptoEcdsaSignature otPlatCryptoEcdsaSignature
otPlatCryptoSha256हैश
struct otPlatCryptoSha256Hash otPlatCryptoSha256Hash
SHA-256 हैश का प्रतिनिधित्व करता है.
वैरिएबल
OT_TOOL_PACKED_END
OT_TOOL_PACKED_BEGIN struct otPlatCryptoSha256Hash OT_TOOL_PACKED_END
फ़ंक्शन
otPlatCryptoAesएन्क्रिप्ट
otError otPlatCryptoAesEncrypt( otCryptoContext *aContext, const uint8_t *aInput, uint8_t *aOutput )
दिए गए डेटा को एन्क्रिप्ट (सुरक्षित) करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoAesमुफ़्त
otError otPlatCryptoAesFree( otCryptoContext *aContext )
AES कॉन्टेक्स्ट को फ़्री करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoAesit
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 )
पास किए गए पासकोड से सार्वजनिक कुंजी पाएं.
सार्वजनिक कुंजी को अलग-अलग तरीके से सेव किया जाता है. यह इस बात पर निर्भर करता है कि क्रिप्टो बैकएंड लाइब्रेरी का इस्तेमाल किस तरह किया जा रहा है (OpenLEARN_CONFIG_CRYPTO_LIB).
इस एपीआई को सार्वजनिक कुंजी को बिना कंप्रेस किए गए कर्व पॉइंट के बाइट सीक्वेंस के रूप में दिखाना ज़रूरी है (RFC 6605 - सेकेंड 4)
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoEcdsaGenerateAndImportKey
otError otPlatCryptoEcdsaGenerateAndImportKey( otCryptoKeyRef aKeyRef )
पास किए गए रेफ़रंस पर, एक नया ECDSA कुंजी-पेयर जनरेट और इंपोर्ट करें.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
लौटाने की वैल्यू |
|
otPlatCryptoEcdsagenerateKey
otError otPlatCryptoEcdsaGenerateKey( otPlatCryptoEcdsaKeyPair *aKeyPair )
ईसीडीएसए कुंजी वाले नए पेयर का इस्तेमाल करके, आउटपुट बफ़र जनरेट और पॉप्युलेट करें.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
लौटाने की वैल्यू |
|
otPlatCryptoEcdsaGetPublicKey
otError otPlatCryptoEcdsaGetPublicKey( const otPlatCryptoEcdsaKeyPair *aKeyPair, otPlatCryptoEcdsaPublicKey *aPublicKey )
इनपुट की संदर्भ से जुड़ी सार्वजनिक कुंजी पाएं.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoEcdsaSign
otError otPlatCryptoEcdsaSign( const otPlatCryptoEcdsaKeyPair *aKeyPair, const otPlatCryptoSha256Hash *aHash, otPlatCryptoEcdsaSignature *aSignature )
इनपुट के संदर्भ में से निजी कुंजी का इस्तेमाल करके हैश किए गए मैसेज के लिए ECDSA हस्ताक्षर की गणना करें.
आरएफ़सी 6979 से, डेटरमिनिस्टिक डिजिटल सिग्नेचर जनरेशन प्रोसेस का इस्तेमाल करता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
लौटाने की वैल्यू |
|
otPlatCryptoEcdsaSignUsageKeyReRef
otError otPlatCryptoEcdsaSignUsingKeyRef( otCryptoKeyRef aKeyRef, const otPlatCryptoSha256Hash *aHash, otPlatCryptoEcdsaSignature *aSignature )
पास किए गए कुंजी के संदर्भ का इस्तेमाल करके हैश किए गए मैसेज के लिए ECDSA हस्ताक्षर की गणना करें.
आरएफ़सी 6979 से, डेटरमिनिस्टिक डिजिटल सिग्नेचर जनरेशन प्रोसेस का इस्तेमाल करता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
लौटाने की वैल्यू |
|
otPlatCryptoEcdsaVerify
otError otPlatCryptoEcdsaVerify( const otPlatCryptoEcdsaPublicKey *aPublicKey, const otPlatCryptoSha256Hash *aHash, const otPlatCryptoEcdsaSignature *aSignature )
हैश किए गए मैसेज के ECDSA हस्ताक्षर की पुष्टि करने के लिए, इनपुट से जुड़ी कुंजी का इस्तेमाल करें.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
लौटाने की वैल्यू |
|
otPlatCryptoEcdsaVerifyUseKeyReF
otError otPlatCryptoEcdsaVerifyUsingKeyRef( otCryptoKeyRef aKeyRef, const otPlatCryptoSha256Hash *aHash, const otPlatCryptoEcdsaSignature *aSignature )
हैश किए गए मैसेज के ECDSA हस्ताक्षर की पुष्टि करने के लिए, keyref का इस्तेमाल करें.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
लौटाने की वैल्यू |
|
otPlatCryptoexportKey
otError otPlatCryptoExportKey( otCryptoKeyRef aKeyRef, uint8_t *aBuffer, size_t aBufferLen, size_t *aKeyLen )
PSA आईटीएस में सेव की गई कुंजी को एक्सपोर्ट करें.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
लौटाने की वैल्यू |
|
otPlatCryptoHasKey
bool otPlatCryptoHasKey( otCryptoKeyRef aKeyRef )
देखें कि जांच की गई कुंजी की जानकारी, PSA आईटीएस से जुड़ी है या नहीं.
ब्यौरा | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
लौटाने की वैल्यू |
|
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 एक्सपैंशन चरण पूरा करें.
ब्यौरा | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
लौटाने की वैल्यू |
|
otPlatCryptoHkdfनिकालें
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 )
एचएमएसी कार्रवाई को शुरू न करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoHmacSha256Finish
otError otPlatCryptoHmacSha256Finish( otCryptoContext *aContext, uint8_t *aBuf, size_t aBufLength )
एचएमएसी कार्रवाई पूरी करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoHmacSha256it
otError otPlatCryptoHmacSha256Init( otCryptoContext *aContext )
एचएमएसी कार्रवाई शुरू करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoHmacSha256शुरू करें
otError otPlatCryptoHmacSha256Start( otCryptoContext *aContext, const otCryptoKey *aKey )
एचएमएसी कार्रवाई शुरू करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoHmacSha256 अपडेट
otError otPlatCryptoHmacSha256Update( otCryptoContext *aContext, const void *aBuf, uint16_t aBufLength )
एचएमएसी कार्रवाई को नए इनपुट के साथ अपडेट करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoImportKey
otError otPlatCryptoImportKey( otCryptoKeyRef *aKeyRef, otCryptoKeyType aKeyType, otCryptoKeyAlgorithm aKeyAlgorithm, int aKeyUsage, otCryptoKeyStorage aKeyPersistence, const uint8_t *aKey, size_t aKeyLen )
PSA आईटीएस में कोई कुंजी इंपोर्ट करें.
ध्यान दें:अगर AKeyPersence के लिए OT_CRYPTO_KEY_STORAGE_PERSISTENT को पास किया जाता है, तो aKeyRef
इनपुट और प्लैटफ़ॉर्म का इस्तेमाल किया जाना चाहिए, न कि उसमें बदलाव करने के लिए.
अगर AKeyPersistence के लिए OT_CRYPTO_KEY_STORAGE_VOLATILE पास हो जाता है, तो आउटपुट aKeyRef
होता है. शुरुआती वैल्यू का कोई असर नहीं पड़ता और प्लैटफ़ॉर्म एपीआई को इसे नई कुंजी के रेफ़रंस के तौर पर अपडेट करना ज़रूरी है.
ब्यौरा | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||||
लौटाने की वैल्यू |
|
OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE
के चालू होने पर ही, इस एपीआई को OT कोर पर इस्तेमाल किया जाता है.
otPlatCryptotoit
void otPlatCryptoInit( void )
क्रिप्टो मॉड्यूल शुरू करें.
otPlatCryptoPbkdf2GenerateKey
void otPlatCryptoPbkdf2GenerateKey( const uint8_t *aPassword, uint16_t aPasswordLen, const uint8_t *aSalt, uint16_t aSaltLen, uint32_t aIterationCounter, uint16_t aKeyLen, uint8_t *aKey )
CMAC (AES-CMAC-PRF-128) का इस्तेमाल करके AVG#5 PBKDF2 करें.
ब्यौरा | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
otPlatCryptoRomDeinit
void otPlatCryptoRandomDeinit( void )
क्रिप्टोग्राफ़िक तरीके से सुरक्षित सूडोरैंडम नंबर जनरेटर (सीएसपीआरएनजी) को शुरू करें.
otPlatCryptoRomGet
otError otPlatCryptoRandomGet( uint8_t *aBuffer, uint16_t aSize )
किसी बफ़र में क्रिप्टोग्राफ़िक तरीके से सुरक्षित रैंडम बाइट भरता है.
ब्यौरा | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
लौटाने की वैल्यू |
|
otPlatCryptoRomInit
void otPlatCryptoRandomInit( void )
क्रिप्टोग्राफ़िक तरीके से सुरक्षित सूडोरैंडम नंबर जनरेटर (सीएसपीआरएनजी) शुरू करें.
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 ऑपरेशन शुरू करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoSha256शुरू करें
otError otPlatCryptoSha256Start( otCryptoContext *aContext )
SHA-256 ऑपरेशन शुरू करें.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाने की वैल्यू |
|
otPlatCryptoSha256अपडेट
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
DER फ़ॉर्मैट में EDCSA कुंजी-पेयर दिखाने के लिए, ज़्यादा से ज़्यादा बफ़र साइज़ (बाइट में).
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
ज़्यादा से ज़्यादा PBKDF2 SALT लंबाई: सॉल्ट प्रीफ़िक्स (6) + एक्सटेंडेड पैनिड (8) + नेटवर्क का नाम (16)
OT_CRYPTO_SHA256_HASH_SIZE
OT_CRYPTO_SHA256_HASH_SIZE 32
SHA256 हैश की लंबाई (बाइट में).
रिसॉर्स
OpenThread एपीआई के संदर्भ विषय, सोर्स कोड से आते हैं और GitHub पर उपलब्ध होते हैं. ज़्यादा जानकारी पाने या हमारे दस्तावेज़ में योगदान देने के लिए, संसाधन देखें.