OT_TOOL_PACKED_BEGIN struct otPlatCryptoSha256Hash OT_TOOL_PACKED_END
کارکرد otPlatCryptoAesEncrypt otError otPlatCryptoAesEncrypt(
otCryptoContext *aContext,
const uint8_t *aInput,
uint8_t *aOutput
) داده های داده شده را رمزگذاری کنید.
جزئیات مولفه های [in] aContext زمینه برای عملیات AES.
[in] aInput اشاره گر به بافر ورودی.
[in] aOutput اشاره گر به بافر خروجی.
ارزش های بازگشتی OT_ERROR_NONE aInput با موفقیت رمزگذاری شد.
OT_ERROR_FAILED رمزگذاری aInput ناموفق بود.
OT_ERROR_INVALID_ARGS aContext یا aKey یا aOutput NULL بودند
otPlatCryptoAesFree otError otPlatCryptoAesFree(
otCryptoContext *aContext
) زمینه AES را آزاد کنید.
جزئیات مولفه های [in] aContext زمینه برای عملیات AES.
ارزش های بازگشتی OT_ERROR_NONE زمینه AES با موفقیت آزاد شد.
OT_ERROR_FAILED زمینه AES آزاد نشد.
OT_ERROR_INVALID_ARGS aContext NULL بود
otPlatCryptoAesInit otError otPlatCryptoAesInit(
otCryptoContext *aContext
) عملیات AES را راه اندازی کنید.
توجه: درایور پلتفرم باید متن را به شی درست مانند psa_key_id یا mbedtls_aes_context_t اشاره کند.
جزئیات مولفه های [in] aContext زمینه برای عملیات AES.
ارزش های بازگشتی OT_ERROR_NONE عملیات AES با موفقیت آغاز شد.
OT_ERROR_FAILED شروع عملیات AES ناموفق بود.
OT_ERROR_INVALID_ARGS aContext NULL بود
OT_ERROR_NO_BUFS نمی توان زمینه را اختصاص داد.
otPlatCryptoAesSetKey otError otPlatCryptoAesSetKey(
otCryptoContext *aContext,
const otCryptoKey *aKey
) کلید را برای عملکرد AES تنظیم کنید.
جزئیات مولفه های [in] aContext زمینه برای عملیات AES.
[out] aKey کلید مورد استفاده برای عملیات AES.
ارزش های بازگشتی OT_ERROR_NONE کلید برای عملکرد AES با موفقیت تنظیم شد.
OT_ERROR_FAILED کلید برای عملکرد AES تنظیم نشد.
OT_ERROR_INVALID_ARGS aContext یا aKey NULL بود
otPlatCryptoDestroyKey otError otPlatCryptoDestroyKey(
otCryptoKeyRef aKeyRef
) یک کلید ذخیره شده در PSA ITS را نابود کنید.
توجه: این API تنها زمانی توسط OT core استفاده میشود که OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE فعال باشد.
جزئیات مولفه های [in] aKeyRef رفر کلیدی که از بین می رود
ارزش های بازگشتی OT_ERROR_NONE کلید را با موفقیت از بین برد.
OT_ERROR_FAILED شکست در از بین بردن کلید.
otPlatCryptoEcdsaExportPublicKey otError otPlatCryptoEcdsaExportPublicKey(
otCryptoKeyRef aKeyRef,
otPlatCryptoEcdsaPublicKey *aPublicKey
) کلید عمومی مرتبط را از مرجع کلید دریافت کنید.
بسته به کتابخانه پشتیبان رمزنگاری مورد استفاده (OPENTHREAD_CONFIG_CRYPTO_LIB) کلید عمومی به طور متفاوتی ذخیره می شود.
این API باید مطمئن شود که کلید عمومی را به عنوان یک نمایش توالی بایت از یک نقطه منحنی فشرده نشده برمی گرداند (RFC 6605 - sec 4)
توجه: این API تنها زمانی توسط OT core استفاده میشود که OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE فعال باشد.
جزئیات مولفه های [in] aKeyRef اشاره کلید به شکافی که جفت کلید در آن ذخیره می شود.
[out] aPublicKey یک اشاره گر به ساختار کلید عمومی ECDSA برای ذخیره کلید عمومی.
ارزش های بازگشتی OT_ERROR_NONE کلید عمومی با موفقیت بازیابی شد و aBuffer به روز شد.
OT_ERROR_PARSE قالب DER جفت کلید قابل تجزیه نیست (قالب نامعتبر).
OT_ERROR_INVALID_ARGS aContext NULL است.
otPlatCryptoEcdsaGenerateAndImportKey otError otPlatCryptoEcdsaGenerateAndImportKey(
otCryptoKeyRef aKeyRef
) ایجاد و وارد کردن یک جفت کلید ECDSA جدید در مرجع تصویب شده.
توجه: این API تنها زمانی توسط OT core استفاده میشود که OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE فعال باشد.
جزئیات مولفه های [in] aKeyRef اشاره کلید به شکافی که جفت کلید در آن ذخیره می شود.
ارزش های بازگشتی OT_ERROR_NONE یک جفت کلید جدید با موفقیت ایجاد شد.
OT_ERROR_NO_BUFS تخصیص بافر برای تولید کلید انجام نشد.
OT_ERROR_NOT_CAPABLE ویژگی پشتیبانی نمی شود.
OT_ERROR_FAILED ایجاد جفت کلید ناموفق بود.
otPlatCryptoEcdsaGenerateKey otError otPlatCryptoEcdsaGenerateKey(
otPlatCryptoEcdsaKeyPair *aKeyPair
) بافر خروجی را با یک جفت کلید ECDSA جدید تولید و پر کنید.
جزئیات مولفه های [out] aKeyPair یک اشاره گر به ساختار جفت کلید ECDSA برای ذخیره جفت کلید تولید شده.
ارزش های بازگشتی OT_ERROR_NONE یک جفت کلید جدید با موفقیت ایجاد شد.
OT_ERROR_NO_BUFS تخصیص بافر برای تولید کلید انجام نشد.
OT_ERROR_NOT_CAPABLE ویژگی پشتیبانی نمی شود.
OT_ERROR_FAILED ایجاد جفت کلید ناموفق بود.
otPlatCryptoEcdsaGetPublicKey otError otPlatCryptoEcdsaGetPublicKey(
const otPlatCryptoEcdsaKeyPair *aKeyPair,
otPlatCryptoEcdsaPublicKey *aPublicKey
) کلید عمومی مرتبط را از زمینه ورودی دریافت کنید.
جزئیات مولفه های [in] aKeyPair اشاره گر به ساختار جفت کلید ECDSA که در آن جفت کلید ذخیره می شود.
[out] aPublicKey یک اشاره گر به ساختار کلید عمومی ECDSA برای ذخیره کلید عمومی.
ارزش های بازگشتی OT_ERROR_NONE کلید عمومی با موفقیت بازیابی شد و aBuffer به روز شد.
OT_ERROR_PARSE قالب DER جفت کلید قابل تجزیه نیست (قالب نامعتبر).
OT_ERROR_INVALID_ARGS aContext NULL است.
otPlatCryptoEcdsaSign otError otPlatCryptoEcdsaSign(
const otPlatCryptoEcdsaKeyPair *aKeyPair,
const otPlatCryptoSha256Hash *aHash,
otPlatCryptoEcdsaSignature *aSignature
) امضای ECDSA را برای یک پیام هش شده با استفاده از کلید خصوصی از زمینه ورودی محاسبه کنید.
از روش تولید امضای دیجیتال قطعی از RFC 6979 استفاده می کند.
جزئیات مولفه های [in] aKeyPair اشاره گر به ساختار جفت کلید ECDSA که در آن جفت کلید ذخیره می شود.
[in] aHash یک اشاره گر به ساختار هش SHA-256 که در آن مقدار هش برای محاسبه امضا ذخیره می شود.
[out] aSignature یک اشاره گر به یک ساختار امضای ECDSA برای خروجی امضای محاسبه شده.
ارزش های بازگشتی OT_ERROR_NONE امضا با موفقیت محاسبه شد، aSignature به روز شد.
OT_ERROR_PARSE قالب DER جفت کلید قابل تجزیه نیست (قالب نامعتبر).
OT_ERROR_NO_BUFS تخصیص بافر برای محاسبه امضا انجام نشد.
OT_ERROR_INVALID_ARGS aContext NULL است.
otPlatCryptoEcdsaSignUsingKeyRef otError otPlatCryptoEcdsaSignUsingKeyRef(
otCryptoKeyRef aKeyRef,
const otPlatCryptoSha256Hash *aHash,
otPlatCryptoEcdsaSignature *aSignature
) امضای ECDSA را برای یک پیام هش شده با استفاده از مرجع کلید ارسال شده محاسبه کنید.
از روش تولید امضای دیجیتال قطعی از RFC 6979 استفاده می کند.
توجه: این API تنها زمانی توسط OT core استفاده میشود که OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE فعال باشد.
جزئیات مولفه های [in] aKeyRef اشاره کلید به شکافی که جفت کلید در آن ذخیره می شود.
[in] aHash یک اشاره گر به ساختار هش SHA-256 که در آن مقدار هش برای محاسبه امضا ذخیره می شود.
[out] aSignature یک اشاره گر به یک ساختار امضای ECDSA برای خروجی امضای محاسبه شده.
ارزش های بازگشتی OT_ERROR_NONE امضا با موفقیت محاسبه شد، aSignature به روز شد.
OT_ERROR_PARSE قالب DER جفت کلید قابل تجزیه نیست (قالب نامعتبر).
OT_ERROR_NO_BUFS تخصیص بافر برای محاسبه امضا انجام نشد.
OT_ERROR_INVALID_ARGS aContext NULL است.
otPlatCryptoEcdsaVerify otError otPlatCryptoEcdsaVerify(
const otPlatCryptoEcdsaPublicKey *aPublicKey,
const otPlatCryptoSha256Hash *aHash,
const otPlatCryptoEcdsaSignature *aSignature
) از کلید زمینه ورودی برای تأیید امضای ECDSA یک پیام هش شده استفاده کنید.
جزئیات مولفه های [in] aPublicKey یک اشاره گر به ساختار کلید عمومی ECDSA که در آن کلید عمومی برای تأیید امضا ذخیره می شود.
[in] aHash یک اشاره گر به ساختار هش SHA-256 که در آن مقدار هش برای تأیید امضا ذخیره می شود.
[in] aSignature یک اشاره گر به ساختار امضای ECDSA که در آن مقدار امضایی که باید تأیید شود ذخیره می شود.
ارزش های بازگشتی OT_ERROR_NONE امضا با موفقیت تأیید شد.
OT_ERROR_SECURITY امضا نامعتبر است.
OT_ERROR_INVALID_ARGS کلید یا هش نامعتبر است.
OT_ERROR_NO_BUFS تخصیص بافر برای تأیید امضا انجام نشد.
otPlatCryptoEcdsaVerifyUsingKeyRef otError otPlatCryptoEcdsaVerifyUsingKeyRef(
otCryptoKeyRef aKeyRef,
const otPlatCryptoSha256Hash *aHash,
const otPlatCryptoEcdsaSignature *aSignature
) از کلید کلید برای تأیید امضای ECDSA یک پیام هش شده استفاده کنید.
توجه: این API تنها زمانی توسط OT core استفاده میشود که OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE فعال باشد.
جزئیات مولفه های [in] aKeyRef اشاره کلید به شکافی که جفت کلید در آن ذخیره می شود.
[in] aHash یک اشاره گر به ساختار هش SHA-256 که در آن مقدار هش برای تأیید امضا ذخیره می شود.
[in] aSignature یک اشاره گر به ساختار امضای ECDSA که در آن مقدار امضایی که باید تأیید شود ذخیره می شود.
ارزش های بازگشتی OT_ERROR_NONE امضا با موفقیت تأیید شد.
OT_ERROR_SECURITY امضا نامعتبر است.
OT_ERROR_INVALID_ARGS کلید یا هش نامعتبر است.
OT_ERROR_NO_BUFS تخصیص بافر برای تأیید امضا انجام نشد.
otPlatCryptoExportKey otError otPlatCryptoExportKey(
otCryptoKeyRef aKeyRef,
uint8_t *aBuffer,
size_t aBufferLen,
size_t *aKeyLen
) یک کلید ذخیره شده در PSA ITS را صادر کنید.
توجه: این API تنها زمانی توسط OT core استفاده میشود که OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE فعال باشد.
جزئیات مولفه های [in] aKeyRef رمز کلیدی که برای عملیات کریپتو استفاده می شود.
[out] aBuffer اشاره گر به بافری که در آن کلید باید صادر شود.
[in] aBufferLen طول بافر برای ذخیره کلید صادر شده ارسال شده است.
[out] aKeyLen اشاره گر برای برگرداندن طول کلید صادر شده.
ارزش های بازگشتی OT_ERROR_NONE aKeyRef با موفقیت صادر شد.
OT_ERROR_FAILED aKeyRef صادر نشد.
OT_ERROR_INVALID_ARGS aBuffer NULL بود
otPlatCryptoHasKey bool otPlatCryptoHasKey(
otCryptoKeyRef aKeyRef
) بررسی کنید که آیا کلید ref ارسال شده دارای یک کلید مرتبط در PSA ITS است یا خیر.
توجه: این API تنها زمانی توسط OT core استفاده میشود که OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE فعال باشد.
جزئیات مولفه های [in] aKeyRef Ref کلید برای بررسی.
ارزش های بازگشتی TRUE یک کلید مرتبط با aKeyRef وجود دارد.
FALSE هیچ کلید مرتبطی با aKeyRef وجود ندارد.
otPlatCryptoHkdfDeinit otError otPlatCryptoHkdfDeinit(
otCryptoContext *aContext
) زمینه HKDF را از حالت اولیه خارج کنید.
جزئیات مولفه های [in] aContext زمینه برای عملیات HKDF.
ارزش های بازگشتی OT_ERROR_NONE عملیات HKDF با موفقیت لغو اولیه شد.
OT_ERROR_FAILED عملیات HKDF از حالت اولیه خارج نشد.
OT_ERROR_INVALID_ARGS aContext NULL بود
otPlatCryptoHkdfExpand otError otPlatCryptoHkdfExpand(
otCryptoContext *aContext,
const uint8_t *aInfo,
uint16_t aInfoLength,
uint8_t *aOutputKey,
uint16_t aOutputKeyLength
) مرحله گسترش HKDF را انجام دهید.
جزئیات مولفه های [in] aContext زمینه عملیات برای عملیات HKDF.
[in] aInfo به دنباله Info اشاره کنید.
[in] aInfoLength طول دنباله اطلاعات
[out] aOutputKey اشاره گر به کلید خروجی
[in] aOutputKeyLength اندازه بافر کلید خروجی
ارزش های بازگشتی OT_ERROR_NONE HKDF Expand موفقیت آمیز بود.
OT_ERROR_FAILED گسترش HKDF ناموفق بود.
OT_ERROR_INVALID_ARGS aContext NULL بود
otError otPlatCryptoHkdfExtract(
otCryptoContext *aContext,
const uint8_t *aSalt,
uint16_t aSaltLength,
const otCryptoKey *aInputKey
) مرحله استخراج HKDF را انجام دهید.
جزئیات مولفه های [in] aContext زمینه عملیات برای عملیات HKDF.
[in] aSalt اشاره به نمک برای HKDF.
[in] aSaltLength طول نمک.
[in] aInputKey اشاره گر به کلید ورودی
ارزش های بازگشتی OT_ERROR_NONE استخراج HKDF موفقیت آمیز بود.
OT_ERROR_FAILED استخراج HKDF ناموفق بود.
otPlatCryptoHkdfInit otError otPlatCryptoHkdfInit(
otCryptoContext *aContext
) زمینه HKDF را راه اندازی کنید.
توجه: درایور پلتفرم باید متن را به شی درست مانند psa_key_derivation_operation_t یا HmacSha256::Hash اشاره کند.
جزئیات مولفه های [in] aContext زمینه برای عملیات HKDF.
ارزش های بازگشتی OT_ERROR_NONE عملیات AES با موفقیت آغاز شد.
OT_ERROR_FAILED شروع عملیات AES ناموفق بود.
OT_ERROR_INVALID_ARGS aContext NULL بود
otPlatCryptoHmacSha256Deinit otError otPlatCryptoHmacSha256Deinit(
otCryptoContext *aContext
) عملیات HMAC را از حالت اولیه خارج کنید.
جزئیات مولفه های [in] aContext زمینه برای عملیات HMAC.
ارزش های بازگشتی OT_ERROR_NONE عملیات HMAC با موفقیت راه اندازی نشد.
OT_ERROR_FAILED عملیات HMAC اولیه ناموفق بود.
OT_ERROR_INVALID_ARGS aContext NULL بود
otPlatCryptoHmacSha256Finish otError otPlatCryptoHmacSha256Finish(
otCryptoContext *aContext,
uint8_t *aBuf,
size_t aBufLength
) عملیات HMAC را کامل کنید.
جزئیات مولفه های [in] aContext زمینه برای عملیات HMAC.
[out] aBuf اشاره گر به بافر خروجی.
[in] aBufLength طول aBuf بر حسب بایت.
ارزش های بازگشتی OT_ERROR_NONE عملیات HMAC با موفقیت به پایان رسید.
OT_ERROR_FAILED عملیات HMAC کامل نشد.
OT_ERROR_INVALID_ARGS aContext یا aBuf NULL بود
otPlatCryptoHmacSha256Init otError otPlatCryptoHmacSha256Init(
otCryptoContext *aContext
) عملیات HMAC را راه اندازی کنید.
توجه: درایور پلتفرم باید متن را به شی درست مانند psa_mac_operation_t یا mbedtls_md_context_t اشاره کند.
جزئیات مولفه های [in] aContext زمینه برای عملیات HMAC.
ارزش های بازگشتی OT_ERROR_NONE عملیات HMAC با موفقیت راه اندازی شد.
OT_ERROR_FAILED شروع عملیات HMAC ناموفق بود.
OT_ERROR_INVALID_ARGS aContext NULL بود
otPlatCryptoHmacSha256شروع کنید otError otPlatCryptoHmacSha256Start(
otCryptoContext *aContext,
const otCryptoKey *aKey
) عملیات HMAC را شروع کنید.
جزئیات مولفه های [in] aContext زمینه برای عملیات HMAC.
[in] aKey مواد کلیدی مورد استفاده برای عملیات HMAC.
ارزش های بازگشتی OT_ERROR_NONE عملیات HMAC با موفقیت شروع شد.
OT_ERROR_FAILED شروع عملیات HMAC ناموفق بود.
OT_ERROR_INVALID_ARGS aContext یا aKey NULL بود
otPlatCryptoHmacSha256 به روز رسانی otError otPlatCryptoHmacSha256Update(
otCryptoContext *aContext,
const void *aBuf,
uint16_t aBufLength
) عملیات HMAC را با ورودی جدید به روز کنید.
جزئیات مولفه های [in] aContext زمینه برای عملیات HMAC.
[in] aBuf اشاره گر به بافر ورودی.
[in] aBufLength طول aBuf بر حسب بایت.
ارزش های بازگشتی OT_ERROR_NONE HMAC با عملیات ورودی جدید با موفقیت به روز شد.
OT_ERROR_FAILED عملیات HMAC به روز نشد.
OT_ERROR_INVALID_ARGS aContext یا aBuf NULL بود
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_PERSISTENT برای aKeyPersistence ارسال شود، aKeyRef ورودی است و پلتفرم باید از aKeyRef داده شده استفاده کند و نباید آن را تغییر دهد. اگر OT_CRYPTO_KEY_STORAGE_VOLATILE برای aKeyPersistence ارسال شود، aKeyRef خروجی می شود، مقدار اولیه مهم نیست و API پلتفرم باید آن را به روز کند تا ref کلید جدید را برگرداند.
جزئیات مولفه های [in,out] aKeyRef اشاره گر به کلید ref که برای عملیات کریپتو استفاده می شود.
[in] aKeyType نوع کلید رمزگذاری برای کلید.
[in] aKeyAlgorithm رمزگذاری الگوریتم کلید برای کلید.
[in] aKeyUsage رمزگذاری استفاده از کلید برای کلید (ترکیبی از OT_CRYPTO_KEY_USAGE_* ).
[in] aKeyPersistence ماندگاری کلید برای این کلید
[in] aKey کلید واقعی برای وارد شدن
[in] aKeyLen طول کلیدی که باید وارد شود.
ارزش های بازگشتی OT_ERROR_NONE کلید با موفقیت وارد شد.
OT_ERROR_FAILED وارد کردن کلید انجام نشد.
OT_ERROR_INVALID_ARGS aKey روی NULL تنظیم شد.
این API فقط زمانی توسط OT core استفاده میشود که 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) انجام دهید.
جزئیات مولفه های [in] aPassword رمز عبور برای استفاده در هنگام تولید کلید.
[in] aPasswordLen طول رمز عبور
[in] aSalt نمک برای استفاده در هنگام تولید کلید.
[in] aSaltLen طول نمک.
[in] aIterationCounter تعداد تکرار
[in] aKeyLen طول کلید تولید شده بر حسب بایت
[out] aKey اشاره گر به کلید تولید شده
ارزش های بازگشتی OT_ERROR_NONE یک جفت کلید جدید با موفقیت ایجاد شد.
OT_ERROR_NO_BUFS تخصیص بافر برای تولید کلید انجام نشد.
OT_ERROR_NOT_CAPABLE ویژگی پشتیبانی نمی شود.
OT_ERROR_FAILED کلید تولید نشد.
otPlatCryptoRandomDeinit void otPlatCryptoRandomDeinit(
void
) مولد اعداد شبه تصادفی امن رمزنگاری (CSPRNG) را از مقدار اولیه اولیه بردارید.
otPlatCryptoRandomGet otError otPlatCryptoRandomGet(
uint8_t *aBuffer,
uint16_t aSize
) یک بافر مشخص را با بایت های تصادفی امن رمزنگاری پر می کند.
جزئیات مولفه های [out] aBuffer یک اشاره گر به یک بافر برای پر کردن با بایت های تصادفی.
[in] aSize اندازه بافر (تعداد بایت برای پر کردن).
ارزش های بازگشتی OT_ERROR_NONE بافر با مقادیر تصادفی با موفقیت پر شد.
OT_ERROR_FAILED عملیات شکست خورد.
otPlatCryptoRandomInit void otPlatCryptoRandomInit(
void
) مولد اعداد شبه تصادفی با امنیت رمزنگاری (CSPRNG) را راه اندازی کنید.
otPlatCryptoSha256Deinit otError otPlatCryptoSha256Deinit(
otCryptoContext *aContext
) عملیات SHA-256 را از حالت اولیه خارج کنید.
جزئیات مولفه های [in] aContext زمینه عملیات SHA-256.
ارزش های بازگشتی OT_ERROR_NONE عملیات SHA-256 با موفقیت لغو اولیه شد.
OT_ERROR_FAILED عملیات SHA-256 از حالت اولیه خارج نشد.
OT_ERROR_INVALID_ARGS aContext NULL بود
otPlatCryptoSha256Finish otError otPlatCryptoSha256Finish(
otCryptoContext *aContext,
uint8_t *aHash,
uint16_t aHashSize
) عملیات SHA-256 را به پایان برسانید.
جزئیات مولفه های [in] aContext زمینه عملیات SHA-256.
[in] aHash یک اشاره گر به بافر خروجی، جایی که هش باید در آن ذخیره شود.
[in] aHashSize طول aHash بر حسب بایت.
ارزش های بازگشتی OT_ERROR_NONE عملیات SHA-256 را با موفقیت به پایان رساند.
OT_ERROR_FAILED عملیات SHA-256 تکمیل نشد.
OT_ERROR_INVALID_ARGS aContext یا aHash NULL بود
otPlatCryptoSha256Init otError otPlatCryptoSha256Init(
otCryptoContext *aContext
) عملیات SHA-256 را راه اندازی کنید.
توجه: درایور پلتفرم باید متن را به شی درستی مانند psa_hash_operation_t یا mbedtls_sha256_context اشاره کند.
جزئیات مولفه های [in] aContext زمینه عملیات SHA-256.
ارزش های بازگشتی OT_ERROR_NONE عملیات SHA-256 با موفقیت راه اندازی شد.
OT_ERROR_FAILED شروع عملیات SHA-256 ناموفق بود.
OT_ERROR_INVALID_ARGS aContext NULL بود
otPlatCryptoSha256شروع کنید otError otPlatCryptoSha256Start(
otCryptoContext *aContext
) عملیات SHA-256 را شروع کنید.
جزئیات مولفه های [in] aContext زمینه عملیات SHA-256.
ارزش های بازگشتی OT_ERROR_NONE عملیات SHA-256 با موفقیت آغاز شد.
OT_ERROR_FAILED شروع عملیات SHA-256 ناموفق بود.
OT_ERROR_INVALID_ARGS aContext NULL بود
otPlatCryptoSha256 به روز رسانی otError otPlatCryptoSha256Update(
otCryptoContext *aContext,
const void *aBuf,
uint16_t aBufLength
) عملیات SHA-256 را با ورودی جدید به روز کنید.
جزئیات مولفه های [in] aContext زمینه عملیات SHA-256.
[in] aBuf اشاره گر به بافر ورودی.
[in] aBufLength طول aBuf بر حسب بایت.
ارزش های بازگشتی OT_ERROR_NONE SHA-256 با عملیات ورودی جدید با موفقیت به روز شد.
OT_ERROR_FAILED عملیات SHA-256 به روز نشد.
OT_ERROR_INVALID_ARGS aContext یا aBuf NULL بود
ماکروها 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 حداکثر طول PBKDF2 SALT: پیشوند salt (6) + panid گسترده (8) + نام شبکه (16)
OT_CRYPTO_SHA256_HASH_SIZE OT_CRYPTO_SHA256_HASH_SIZE 32 طول هش SHA256 (بر حسب بایت).
منابع موضوعات مرجع OpenThread API از کد منبع موجود در GitHub سرچشمه می گیرند. برای اطلاعات بیشتر، یا مشارکت در اسناد ما، به منابع مراجعه کنید.
جز در مواردی که غیراز این ذکر شده باشد، محتوای این صفحه تحت مجوز پروانه ارجاع مشترکات خلاقانه نسخه ۴.۰ است. نمونه کدها نیز دارای مجوز پروانه آپاچی نسخه ۲.۰ است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است. OpenThread و علائم مربوط به آن، علامتهای تجاری Thread Group هستند و تحت پروانه استفاده میشوند.
تاریخ آخرین بهروزرسانی 2023-12-14 بهوقت ساعت هماهنگ جهانی.