सीओएपी सुरक्षित

इस मॉड्यूल में CoAP Secure (CoAP on DTLS) कम्यूनिकेशन को कंट्रोल करने वाले फ़ंक्शन शामिल हैं.

खास जानकारी

CoAP Secure API सुविधा (OPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE) के चालू होने पर, इस मॉड्यूल में मौजूद फ़ंक्शन उपलब्ध होते हैं.

टाइपडेफ़

otHandleCoapSecureClientConnect)(bool aConnected, void *aContext) Typedef
void(*
डीटीएलएस कनेक्शन की स्थिति बदलने पर, पॉइंटर को कॉल किया जाता है.

फ़ंक्शन

otCoapSecureAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
सीओएपी सुरक्षित सर्वर में ब्लॉक के हिसाब से संसाधन जोड़ता है.
otCoapSecureAddResource(otInstance *aInstance, otCoapResource *aResource)
void
सीओएपी सुरक्षित सर्वर में रिसॉर्स जोड़ता है.
otCoapSecureConnect(otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext)
मिलते-जुलते ऐप्लिकेशन के साथ, डीटीएलएस सेशन शुरू करता है.
otCoapSecureDisconnect(otInstance *aInstance)
void
इससे डीटीएलएस कनेक्शन रुक जाता है.
otCoapSecureGetPeerCertificateBase64(otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize)
मिलते-जुलते x509 सर्टिफ़िकेट Base64 के कोड में बदल जाता है.
otCoapSecureIsConnected(otInstance *aInstance)
bool
इससे पता चलता है कि डीटीएलएस सेशन कनेक्ट है या नहीं.
otCoapSecureIsConnectionActive(otInstance *aInstance)
bool
इससे पता चलता है कि डीटीएलएस सेशन चालू है या नहीं.
otCoapSecureRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
CoAP सुरक्षित सर्वर से ब्लॉक-वाइज़ संसाधन हटाता है.
otCoapSecureRemoveResource(otInstance *aInstance, otCoapResource *aResource)
void
सीओएपी सुरक्षित सर्वर से संसाधन हटाता है.
otCoapSecureSendRequest(otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext)
यह सुरक्षित डीटीएलएस कनेक्शन की मदद से, सीओएपी अनुरोध भेजता है.
otCoapSecureSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
सुरक्षित DTLS कनेक्शन पर, CoAP अनुरोध ब्लॉक-वाइज़ भेजता है.
otCoapSecureSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
CoAP सुरक्षित सर्वर से सीओएपी रिस्पॉन्स भेजता है.
otCoapSecureSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
CoAP सुरक्षित सर्वर से सीओएपी रिस्पॉन्स ब्लॉक-वजह भेजता है.
otCoapSecureSetCaCertificateChain(otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength)
void
भरोसेमंद टॉप लेवल CA सेट करता है.
otCoapSecureSetCertificate(otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength)
void
DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8 के साथ डीटीएलएस सत्र के लिए, स्थानीय डिवाइस का X509 सर्टिफ़िकेट, इससे जुड़ी निजी कुंजी के साथ सेट करता है.
otCoapSecureSetClientConnectedCallback(otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext)
void
कनेक्ट किए गए कॉलबैक को तब सेट करता है, जब कोई क्लाइंट CoAP Secure सर्वर से कनेक्ट करता है.
otCoapSecureSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
void
बिना अनुमति वाले सीओएपी सिक्योर अनुरोधों के लिए, डिफ़ॉल्ट हैंडलर सेट करें.
otCoapSecureSetPsk(otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength)
void
पहले से शेयर की गई कुंजी (PSK) और साइफ़र सुइट DTLS_PSK_WITH_AES_128_CCM_8 को सेट करता है.
otCoapSecureSetSslAuthMode(otInstance *aInstance, bool aVerifyPeerCertificate)
void
को-अप सुरक्षित कनेक्शन के लिए, पुष्टि करने का मोड सेट करता है.
otCoapSecureStart(otInstance *aInstance, uint16_t aPort)
CoAP Secure सेवा को शुरू करता है.
otCoapSecureStop(otInstance *aInstance)
void
CoAP सुरक्षित सर्वर बंद कर देता है.

टाइपडेफ़

otHandleCoapSecureClientConnect

void(* otHandleCoapSecureClientConnect)(bool aConnected, void *aContext)

डीटीएलएस कनेक्शन की स्थिति बदलने पर, पॉइंटर को कॉल किया जाता है.

ब्यौरा
पैरामीटर में
[in] aConnected
सही, अगर कनेक्शन बनाया गया था, तो गलत था.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट की जानकारी के लिए पॉइंटर.

फ़ंक्शन

otCoapSecureAddBlockWiseसंसाधन

void otCoapSecureAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

सीओएपी सुरक्षित सर्वर में ब्लॉक के हिसाब से संसाधन जोड़ता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aResource
संसाधन की तरफ़ संकेत.

otCoapSecureAddResource

void otCoapSecureAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

सीओएपी सुरक्षित सर्वर में रिसॉर्स जोड़ता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aResource
संसाधन की तरफ़ संकेत.

otCoapSecureConnect

otError otCoapSecureConnect(
  otInstance *aInstance,
  const otSockAddr *aSockAddr,
  otHandleCoapSecureClientConnect aHandler,
  void *aContext
)

मिलते-जुलते ऐप्लिकेशन के साथ, डीटीएलएस सेशन शुरू करता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aSockAddr
रिमोट सॉकेट के पते का पॉइंटर.
[in] aHandler
फ़ंक्शन का पॉइंटर, जिसे डीटीएलएस कनेक्शन की स्थिति बदलने पर कॉल किया जाता है.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट की जानकारी के लिए पॉइंटर.
लौटाने की वैल्यू
OT_ERROR_NONE
डीटीएलएस कनेक्शन शुरू हो गया.

otCoapSecureConnect

void otCoapSecureDisconnect(
  otInstance *aInstance
)

इससे डीटीएलएस कनेक्शन रुक जाता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.

otCoapSecureGetPeercertificateBase64

otError otCoapSecureGetPeerCertificateBase64(
  otInstance *aInstance,
  unsigned char *aPeerCert,
  size_t *aCertLength,
  size_t aCertBufferSize
)

मिलते-जुलते x509 सर्टिफ़िकेट Base64 के कोड में बदल जाता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[out] aPeerCert
Base64 के कोड में बदले गए सर्टिफ़िकेट के बफ़र का पॉइंटर.
[out] aCertLength
Base64 के कोड में बदले गए मिलते-जुलते ऐप्लिकेशन के सर्टिफ़िकेट की लंबाई.
[in] aCertBufferSize
APeerCert का बफ़र साइज़.
लौटाने की वैल्यू
OT_ERROR_INVALID_STATE
अभी तक कनेक्ट नहीं.
OT_ERROR_NONE
पीयर सर्टिफ़िकेट मिला.
OT_ERROR_NO_BUFS
सर्टिफ़िकेट के लिए मेमोरी असाइन नहीं की जा सकी.

otCoapSecureIsConnect

bool otCoapSecureIsConnected(
  otInstance *aInstance
)

इससे पता चलता है कि डीटीएलएस सेशन कनेक्ट है या नहीं.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
लौटाने की वैल्यू
TRUE
डीटीएलएस सेशन कनेक्ट हो गया है.
FALSE
डीटीएलएस सेशन कनेक्ट नहीं है.

otCoapSecureIsConnectionचालू है

bool otCoapSecureIsConnectionActive(
  otInstance *aInstance
)

इससे पता चलता है कि डीटीएलएस सेशन चालू है या नहीं.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
लौटाने की वैल्यू
TRUE
अगर डीटीएलएस सेशन चालू है.
FALSE
अगर डीटीएलएस सेशन चालू नहीं है.

otCoapSecureRemoveBlockWiseResource

void otCoapSecureRemoveBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

CoAP सुरक्षित सर्वर से ब्लॉक-वाइज़ संसाधन हटाता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aResource
संसाधन की तरफ़ संकेत.

otCoapSecureRemoveResource

void otCoapSecureRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

सीओएपी सुरक्षित सर्वर से संसाधन हटाता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aResource
संसाधन की तरफ़ संकेत.

otCoapSecureSendRequest

otError otCoapSecureSendRequest(
  otInstance *aInstance,
  otMessage *aMessage,
  otCoapResponseHandler aHandler,
  void *aContext
)

यह सुरक्षित डीटीएलएस कनेक्शन की मदद से, सीओएपी अनुरोध भेजता है.

अगर किसी अनुरोध के लिए आपको कोई जवाब मिलता है, तो उससे जुड़े फ़ंक्शन और संदर्भ के बारे में जानकारी दी जानी चाहिए. अगर रिस्पॉन्स की कोई उम्मीद न हो, तो ये आर्ग्युमेंट, NULL पॉइंटर होने चाहिए. अगर मैसेज आईडी को हेडर (0 के बराबर) पर सेट नहीं किया गया है, तो यह फ़ंक्शन मैसेज को यूनीक मैसेज आईडी असाइन करेगा.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aMessage
भेजे जाने वाले मैसेज का रेफ़रंस.
[in] aHandler
एक फ़ंक्शन पॉइंटर, जिसे रिस्पॉन्स रिसेप्शन या टाइम आउट पर कॉल किया जाएगा.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट की जानकारी के लिए पॉइंटर.
लौटाने की वैल्यू
OT_ERROR_NONE
सीओएपी मैसेज भेजा गया.
OT_ERROR_NO_BUFS
फिर से ट्रांसमिशन डेटा असाइन नहीं किया जा सका.
OT_ERROR_INVALID_STATE
डीटीएल कनेक्शन की शुरुआत नहीं हुई.

otCoapSecureSendRequestBlockWise

otError otCoapSecureSendRequestBlockWise(
  otInstance *aInstance,
  otMessage *aMessage,
  otCoapResponseHandler aHandler,
  void *aContext,
  otCoapBlockwiseTransmitHook aTransmitHook,
  otCoapBlockwiseReceiveHook aReceiveHook
)

सुरक्षित DTLS कनेक्शन पर, CoAP अनुरोध ब्लॉक-वाइज़ भेजता है.

उपलब्ध है जब QUERYLEARN_CONFIG_COAP_blockWISE_Transfer_ENABLE कॉन्फ़िगरेशन चालू होती है.

अगर किसी अनुरोध के लिए आपको कोई जवाब मिलता है, तो उससे जुड़े फ़ंक्शन और संदर्भ के बारे में जानकारी दी जानी चाहिए. अगर रिस्पॉन्स की कोई उम्मीद न हो, तो ये आर्ग्युमेंट, NULL पॉइंटर होने चाहिए. अगर मैसेज आईडी को हेडर (0 के बराबर) पर सेट नहीं किया गया है, तो यह फ़ंक्शन मैसेज को यूनीक मैसेज आईडी असाइन करेगा.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aMessage
भेजे जाने वाले मैसेज का रेफ़रंस.
[in] aHandler
एक फ़ंक्शन पॉइंटर, जिसे रिस्पॉन्स रिसेप्शन या टाइम आउट पर कॉल किया जाएगा.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट की जानकारी के लिए पॉइंटर.
[in] aTransmitHook
फ़ंक्शन पॉइंटर, जिसे Block1 रिस्पॉन्स रिसेप्शन पर कॉल किया जाता है.
[in] aReceiveHook
फ़ंक्शन पॉइंटर, जिसे Block2 रिस्पॉन्स रिसेप्शन पर कॉल किया जाता है.
लौटाने की वैल्यू
OT_ERROR_NONE
सीओएपी मैसेज भेजा गया.
OT_ERROR_NO_BUFS
फिर से ट्रांसमिशन डेटा असाइन नहीं किया जा सका.
OT_ERROR_INVALID_STATE
डीटीएल कनेक्शन की शुरुआत नहीं हुई.

otCoapSecureSendResponse

otError otCoapSecureSendResponse(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo
)

CoAP सुरक्षित सर्वर से सीओएपी रिस्पॉन्स भेजता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aMessage
CoAP जवाब भेजने के लिए एक पॉइंटर.
[in] aMessageInfo
aMessage से जुड़े मैसेज की जानकारी का पॉइंटर.
लौटाने की वैल्यू
OT_ERROR_NONE
सीओएपी जवाब मैसेज भेज दिया गया.
OT_ERROR_NO_BUFS
सीओएपी जवाब भेजने के लिए बफ़र की अधूरी जानकारी.

otCoapSecureSendResponseBlockWise

otError otCoapSecureSendResponseBlockWise(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  void *aContext,
  otCoapBlockwiseTransmitHook aTransmitHook
)

CoAP सुरक्षित सर्वर से सीओएपी रिस्पॉन्स ब्लॉक-वजह भेजता है.

उपलब्ध है जब QUERYLEARN_CONFIG_COAP_blockWISE_Transfer_ENABLE कॉन्फ़िगरेशन चालू होती है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aMessage
CoAP जवाब भेजने के लिए एक पॉइंटर.
[in] aMessageInfo
aMessage से जुड़े मैसेज की जानकारी का पॉइंटर.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट की जानकारी के लिए पॉइंटर. इस्तेमाल न किए जाने पर, यह NULL हो सकता है.
[in] aTransmitHook
Block1 के अनुरोध को स्वीकार करने वाला फ़ंक्शन पॉइंटर.
लौटाने की वैल्यू
OT_ERROR_NONE
सीओएपी जवाब मैसेज भेज दिया गया.
OT_ERROR_NO_BUFS
सीओएपी जवाब भेजने के लिए बफ़र की अधूरी जानकारी.

otCoapSecureSetCacertificateChain

void otCoapSecureSetCaCertificateChain(
  otInstance *aInstance,
  const uint8_t *aX509CaCertificateChain,
  uint32_t aX509CaCertChainLength
)

भरोसेमंद टॉप लेवल CA सेट करता है.

मिलते-जुलते ऐप्लिकेशन के सर्टिफ़िकेट की पुष्टि करने के लिए, यह ज़रूरी है.

ऐप्लिकेशन सीओपीएस के लिए, "AES 128 CCM 8 के साथ ECDHE ECDSA" मोड.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aX509CaCertificateChain
PEM फ़ॉर्मैट वाली X509 CA चेन का पॉइंटर.
[in] aX509CaCertChainLength
चेन की लंबाई.

otCoapSecureSetcertificate

void otCoapSecureSetCertificate(
  otInstance *aInstance,
  const uint8_t *aX509Cert,
  uint32_t aX509Length,
  const uint8_t *aPrivateKey,
  uint32_t aPrivateKeyLength
)

DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8 के साथ डीटीएलएस सत्र के लिए, स्थानीय डिवाइस का X509 सर्टिफ़िकेट, इससे जुड़ी निजी कुंजी के साथ सेट करता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aX509Cert
PEM फ़ॉर्मैट वाले X509 सर्टिफ़िकेट के लिए पॉइंटर.
[in] aX509Length
सर्टिफ़िकेट की अवधि.
[in] aPrivateKey
PEM फ़ॉर्मैट की गई निजी कुंजी का पॉइंटर.
[in] aPrivateKeyLength
निजी कुंजी की लंबाई.

otCoapSecureSetClientEnabledCallback

void otCoapSecureSetClientConnectedCallback(
  otInstance *aInstance,
  otHandleCoapSecureClientConnect aHandler,
  void *aContext
)

कनेक्ट किए गए कॉलबैक को तब सेट करता है, जब कोई क्लाइंट CoAP Secure सर्वर से कनेक्ट करता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aHandler
फ़ंक्शन का पॉइंटर, जिसे डीटीएलएस कनेक्शन बनने के बाद कॉल किया जाता है.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट की जानकारी के लिए पॉइंटर. इस्तेमाल न किए जाने पर, यह NULL हो सकता है.

otCoapSecureSetDefaultHandler

void otCoapSecureSetDefaultHandler(
  otInstance *aInstance,
  otCoapRequestHandler aHandler,
  void *aContext
)

बिना अनुमति वाले सीओएपी सिक्योर अनुरोधों के लिए, डिफ़ॉल्ट हैंडलर सेट करें.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aHandler
एक फ़ंक्शन पॉइंटर, जिसका हैंडल नहीं किया गया अनुरोध आने पर कॉल किया जाता है.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट की जानकारी के लिए पॉइंटर. इस्तेमाल न किए जाने पर, यह NULL हो सकता है.

otCoapSecureSetPsk

void otCoapSecureSetPsk(
  otInstance *aInstance,
  const uint8_t *aPsk,
  uint16_t aPskLength,
  const uint8_t *aPskIdentity,
  uint16_t aPskIdLength
)

पहले से शेयर की गई कुंजी (PSK) और साइफ़र सुइट DTLS_PSK_WITH_AES_128_CCM_8 को सेट करता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aPsk
पीएसके की तरफ़ एक पॉइंटर.
[in] aPskLength
PSK की लंबाई.
[in] aPskIdentity
पीएसके के लिए पहचान का नाम.
[in] aPskIdLength
पीएसके आइडेंटिटी की लंबाई.

otCoapSecureSetSslAuthMode

void otCoapSecureSetSslAuthMode(
  otInstance *aInstance,
  bool aVerifyPeerCertificate
)

को-अप सुरक्षित कनेक्शन के लिए, पुष्टि करने का मोड सेट करता है.

मिलते-जुलते ऐप्लिकेशन के सर्टिफ़िकेट की पुष्टि करने की सुविधा को बंद करें या चालू करें. शुरू करने से पहले कॉल किया जाना चाहिए.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aVerifyPeerCertificate
सही पर सेट है.

otCoapSecureStart

otError otCoapSecureStart(
  otInstance *aInstance,
  uint16_t aPort
)

CoAP Secure सेवा को शुरू करता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aPort
उससे जुड़ने के लिए, स्थानीय यूडीपी पोर्ट.
लौटाने की वैल्यू
OT_ERROR_NONE
सीओएपी सुरक्षित सर्वर शुरू किया गया.

otCoapSecureStop

void otCoapSecureStop(
  otInstance *aInstance
)

CoAP सुरक्षित सर्वर बंद कर देता है.

ब्यौरा
पैरामीटर में
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.

मैक्रो

OT_Default_COAP_SECURE_PORT

 OT_DEFAULT_COAP_SECURE_PORT 5684

RFC 7252 के मुताबिक, डिफ़ॉल्ट सीओएपी सुरक्षित पोर्ट.

रिसॉर्स

OpenThread एपीआई के संदर्भ विषय, सोर्स कोड से आते हैं और GitHub पर उपलब्ध होते हैं. ज़्यादा जानकारी पाने या हमारे दस्तावेज़ में योगदान देने के लिए, संसाधन देखें.