BLE सुरक्षित

इस मॉड्यूल में ऐसे फ़ंक्शन शामिल हैं जो बीएलई सिक्योर (BLE पर TLS) कम्यूनिकेशन को कंट्रोल करते हैं.

खास जानकारी

इस मॉड्यूल में ऐसे फ़ंक्शन शामिल हैं जो TCAT कम्यूनिकेशन लागू करते हैं.

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

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

गिनती

otTcatApplicationProtocol{
  OT_TCAT_APPLICATION_PROTOCOL_NONE = 0,
  OT_TCAT_APPLICATION_PROTOCOL_STATUS = 1,
  OT_TCAT_APPLICATION_PROTOCOL_TCP = 2
}
enum
TCAT ऐप्लिकेशन प्रोटोकॉल को दिखाता है.
otTcatCommandClass{
  OT_TCAT_COMMAND_CLASS_GENERAL = 0,
  OT_TCAT_COMMAND_CLASS_COMMISSIONING = 1,
  OT_TCAT_COMMAND_CLASS_EXTRACTION = 2,
  OT_TCAT_COMMAND_CLASS_DECOMMISSIONING = 3,
  OT_TCAT_COMMAND_CLASS_APPLICATION = 4
}
enum
TCAT कमांड क्लास के बारे में बताता है.
otTcatStatusCode{
  OT_TCAT_STATUS_SUCCESS = 0,
  OT_TCAT_STATUS_UNSUPPORTED = 1,
  OT_TCAT_STATUS_PARSE_ERROR = 2,
  OT_TCAT_STATUS_VALUE_ERROR = 3,
  OT_TCAT_STATUS_GENERAL_ERROR = 4,
  OT_TCAT_STATUS_BUSY = 5,
  OT_TCAT_STATUS_UNDEFINED = 6,
  OT_TCAT_STATUS_HASH_ERROR = 7,
  OT_TCAT_STATUS_UNAUTHORIZED = 16
}
enum
यह TCAT स्टेटस कोड को दिखाता है.

टाइपडीफ़

otHandleBleSecureConnect)(otInstance *aInstance, bool aConnected, bool aBleConnectionOpen, void *aContext) typedef
void(*
सुरक्षित कनेक्शन की स्थिति बदलने पर, कर्सर को कॉल करने के लिए कर्सर घुमाएं.
otHandleBleSecureReceive typedef
BLE सुरक्षित TLS कनेक्शन पर डेटा मिलने पर कॉल करने के लिए पॉइंटर.
otHandleTcatApplicationDataReceive)(otInstance *aInstance, const otMessage *aMessage, int32_t aOffset, otTcatApplicationProtocol aTcatApplicationProtocol, const char *aServiceName, void *aContext) typedef
void(*
TCAT TLS कनेक्शन के ज़रिए ऐप्लिकेशन का डेटा मिलने पर, कॉल करने के लिए पॉइंटर.
otHandleTcatJoin)(otError aError, void *aContext) typedef
void(*
जॉइन ऑपरेशन के पूरा होने की सूचना देने के लिए कॉल करने का पॉइंटर.
otTcatApplicationProtocol typedef
TCAT ऐप्लिकेशन प्रोटोकॉल को दिखाता है.
otTcatCommandClass typedef
TCAT कमांड क्लास के बारे में बताता है.
otTcatStatusCode typedef
यह TCAT स्टेटस कोड को दिखाता है.
otTcatVendorInfo typedef
इस स्ट्रक्चर में TCAT वेंडर की जानकारी शामिल होती है.

फ़ंक्शन

otBleSecureConnect(otInstance *aInstance)
पहले से चालू BLE कनेक्शन का इस्तेमाल करके, एक पीयर के साथ TLS सेशन को शुरू करता है.
otBleSecureDisconnect(otInstance *aInstance)
void
BLE और TLS कनेक्शन को रोकता है.
otBleSecureFlush(otInstance *aInstance)
भेजें बफ़र को फ़्लश करता है.
otBleSecureGetPeerCertificateBase64(otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength)
पीयर x509 सर्टिफ़िकेट base64 कोड में बदला गया लौटाता है.
otBleSecureGetPeerSubjectAttributeByOid(otInstance *aInstance, const char *aOid, size_t aOidLength, uint8_t *aAttributeBuffer, size_t *aAttributeLength, int *aAsn1Type)
यह फ़ंक्शन, पीयर x509 सर्टिफ़िकेट के सब्जेक्ट से लिया गया, अपने OID से पहचाने जाने वाले एट्रिब्यूट की वैल्यू दिखाता है.
otBleSecureGetThreadAttributeFromOwnCertificate(otInstance *aInstance, int aThreadOidDescriptor, uint8_t *aAttributeBuffer, size_t *aAttributeLength)
अपने x509 सर्टिफ़िकेट के v3 एक्सटेंशन से, OID 1.3.6.1.4.1.44970.x के लिए एट्रिब्यूट की वैल्यू दिखाता है. इसमें आखिरी अंक x को aThreadOidDescriptor पर सेट किया गया है.
otBleSecureGetThreadAttributeFromPeerCertificate(otInstance *aInstance, int aThreadOidDescriptor, uint8_t *aAttributeBuffer, size_t *aAttributeLength)
यह फ़ंक्शन, पीयर x509 सर्टिफ़िकेट के v3 एक्सटेंशन से, OID 1.3.6.1.4.1.44970.x के लिए एट्रिब्यूट की वैल्यू दिखाता है. इसमें आखिरी अंक x को aThreadOidDescriptor पर सेट किया गया है.
otBleSecureIsCommandClassAuthorized(otInstance *aInstance, otTcatCommandClass aCommandClass)
bool
इससे पता चलता है कि TCAT कमांड क्लास को अनुमति है या नहीं.
otBleSecureIsConnected(otInstance *aInstance)
bool
यह बताता है कि TLS सेशन कनेक्ट है या नहीं.
otBleSecureIsConnectionActive(otInstance *aInstance)
bool
यह बताता है कि TLS सेशन चालू (कनेक्ट है या कनेक्ट हो रहा है) है या नहीं.
otBleSecureIsTcatEnabled(otInstance *aInstance)
bool
इससे पता चलता है कि TCAT एजेंट चालू है या नहीं.
otBleSecureSend(otInstance *aInstance, uint8_t *aBuf, uint16_t aLength)
यह एक सुरक्षित BLE डेटा पैकेट भेजता है.
otBleSecureSendApplicationTlv(otInstance *aInstance, uint8_t *aBuf, uint16_t aLength)
यह एक सुरक्षित BLE डेटा पैकेट भेजता है, जिसमें TCAT Send ऐप्लिकेशन डेटा TLV मौजूद होता है.
otBleSecureSendMessage(otInstance *aInstance, otMessage *aMessage)
यह एक सुरक्षित BLE मैसेज भेजता है.
otBleSecureSetCaCertificateChain(otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength)
void
भरोसेमंद टॉप लेवल सीए सेट करता है.
otBleSecureSetCertificate(otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength)
void
TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8 के साथ TLS सेशन के लिए, स्थानीय डिवाइस के X509 सर्टिफ़िकेट को इससे जुड़ी निजी कुंजी के साथ सेट करता है.
otBleSecureSetPsk(otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength)
void
पहले से शेयर की गई कुंजी (PSK) और साइफ़र सुइट TLS_PSK_WITH_AES_128_CCM_8 को सेट करता है.
otBleSecureSetSslAuthMode(otInstance *aInstance, bool aVerifyPeerCertificate)
void
बीएलई सुरक्षित कनेक्शन के लिए, पुष्टि करने का मोड सेट करता है.
otBleSecureStart(otInstance *aInstance, otHandleBleSecureConnect aConnectHandler, otHandleBleSecureReceive aReceiveHandler, bool aTlvMode, void *aContext)
BLE सुरक्षित सेवा शुरू करें.
otBleSecureStop(otInstance *aInstance)
void
BLE सिक्योर सर्वर को रोकता है.
otBleSecureTcatStart(otInstance *aInstance, const otTcatVendorInfo *aVendorInfo, otHandleTcatJoin aHandler)
BLE सिक्योर पर TCAT प्रोटोकॉल चालू करता है.

संरचना

otTcatVendorInfo

इस स्ट्रक्चर में TCAT वेंडर की जानकारी शामिल होती है.

गिनती

otTcatApplicationProtocol

 otTcatApplicationProtocol

TCAT ऐप्लिकेशन प्रोटोकॉल को दिखाता है.

प्रॉपर्टी
OT_TCAT_APPLICATION_PROTOCOL_NONE

वह मैसेज जो TCAT एजेंट को चालू किए बिना भेजा गया है.

OT_TCAT_APPLICATION_PROTOCOL_STATUS

UDP सेवा को भेजा गया मैसेज.

OT_TCAT_APPLICATION_PROTOCOL_TCP

मैसेज को टीसीपी सेवा पर भेजा गया.

otTcatCommandClass

 otTcatCommandClass

TCAT कमांड क्लास के बारे में बताता है.

प्रॉपर्टी
OT_TCAT_COMMAND_CLASS_APPLICATION

ऐप्लिकेशन लेयर से जुड़े TCAT कमांड.

OT_TCAT_COMMAND_CLASS_COMMISSIONING

कमीशन से जुड़े TCAT निर्देश.

OT_TCAT_COMMAND_CLASS_DECOMMISSIONING

बंद करने से जुड़े TCAT कमांड.

OT_TCAT_COMMAND_CLASS_EXTRACTION

कुंजी निकालने से जुड़े TCAT कमांड.

OT_TCAT_COMMAND_CLASS_GENERAL

सामान्य कार्रवाइयों से जुड़े TCAT कमांड.

otTcatStatusCode

 otTcatStatusCode

यह TCAT स्टेटस कोड को दिखाता है.

प्रॉपर्टी
OT_TCAT_STATUS_BUSY

संसाधन व्यस्त होने की वजह से, निर्देश नहीं चलाया जा सकता.

OT_TCAT_STATUS_GENERAL_ERROR

कोई गड़बड़ी हुई, जो किसी अन्य कैटगरी से मेल नहीं खाती.

OT_TCAT_STATUS_HASH_ERROR

कमिश्नर की ओर से दिखाई गई हैश वैल्यू गलत थी.

OT_TCAT_STATUS_PARSE_ERROR

अनुरोध / निर्देश को ठीक से पार्स नहीं किया जा सका.

OT_TCAT_STATUS_SUCCESS

निर्देश या अनुरोध प्रोसेस हो गया.

OT_TCAT_STATUS_UNAUTHORIZED

भेजने वाले के पास दिए गए निर्देश के लिए, ज़रूरत के मुताबिक अनुमति नहीं है.

OT_TCAT_STATUS_UNDEFINED

अनुरोध की गई वैल्यू, डेटा या सेवा नहीं बताई गई है (मौजूदा समय में) या मौजूद नहीं है.

OT_TCAT_STATUS_UNSUPPORTED

अनुरोध किया गया या मिला TLV समर्थित नहीं है.

OT_TCAT_STATUS_VALUE_ERROR

ट्रांसमिट की गई टीएलवी की वैल्यू में कोई गड़बड़ी है.

टाइपडीफ़

otHandleBleSecureConnect

void(* otHandleBleSecureConnect)(otInstance *aInstance, bool aConnected, bool aBleConnectionOpen, void *aContext)

सुरक्षित कनेक्शन की स्थिति बदलने पर, कर्सर को कॉल करने के लिए कर्सर घुमाएं.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aConnected
'सही', अगर सुरक्षित कनेक्शन बनाया गया था, तो 'गलत'.
[in] aBleConnectionOpen
अगर TLS डेटा स्ट्रीम को चलाने के लिए BLE कनेक्शन बनाया गया है, तो 'सही'. अगर ऐसा नहीं है, तो 'गलत' है.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट जानकारी के लिए पॉइंटर.

otHandleBleSecureReceive

otHandleTcatApplicationDataReceive otHandleBleSecureReceive

BLE सुरक्षित TLS कनेक्शन पर डेटा मिलने पर कॉल करने के लिए पॉइंटर.

otHandleTcatApplicationDataReceive

void(* otHandleTcatApplicationDataReceive)(otInstance *aInstance, const otMessage *aMessage, int32_t aOffset, otTcatApplicationProtocol aTcatApplicationProtocol, const char *aServiceName, void *aContext)

TCAT TLS कनेक्शन के ज़रिए ऐप्लिकेशन का डेटा मिलने पर, कॉल करने के लिए पॉइंटर.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aMessage
मैसेज की जगह का पॉइंटर.
[in] aOffset
वह ऑफ़सेट जहां से ऐप्लिकेशन डेटा शुरू होता है.
[in] aTcatApplicationProtocol
मिले मैसेज का प्रोटोकॉल टाइप.
[in] aServiceName
उस सेवा का नाम जिसे मैसेज भेजा गया है.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट जानकारी के लिए पॉइंटर.

otHandleTcatJoin

void(* otHandleTcatJoin)(otError aError, void *aContext)

जॉइन ऑपरेशन के पूरा होने की सूचना देने के लिए कॉल करने का पॉइंटर.

ब्यौरा
पैरामीटर
[in] aError
OT_ERROR_NONE अगर शामिल होने की प्रक्रिया सफल हो गई है. OT_ERROR_Security अगर सुरक्षा क्रेडेंशियल की वजह से शामिल नहीं हो पाता है.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट जानकारी के लिए पॉइंटर.

otTcatApplicationProtocol

enum otTcatApplicationProtocol otTcatApplicationProtocol

TCAT ऐप्लिकेशन प्रोटोकॉल को दिखाता है.

otTcatCommandClass

enum otTcatCommandClass otTcatCommandClass

TCAT कमांड क्लास के बारे में बताता है.

otTcatStatusCode

enum otTcatStatusCode otTcatStatusCode

यह TCAT स्टेटस कोड को दिखाता है.

otTcatVendorInfo

struct otTcatVendorInfo otTcatVendorInfo

इस स्ट्रक्चर में TCAT वेंडर की जानकारी शामिल होती है.

TCAT सेशन के चलने के दौरान, इस स्ट्रक्चर का कॉन्टेंट एक जैसा रहना चाहिए और इसमें कोई बदलाव नहीं होना चाहिए.

फ़ंक्शन

otBleSecureConnect

otError otBleSecureConnect(
  otInstance *aInstance
)

पहले से चालू BLE कनेक्शन का इस्तेमाल करके, एक पीयर के साथ TLS सेशन को शुरू करता है.

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

otBleSecureDisconnect

void otBleSecureDisconnect(
  otInstance *aInstance
)

BLE और TLS कनेक्शन को रोकता है.

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

otBleSecureFlush

otError otBleSecureFlush(
  otInstance *aInstance
)

भेजें बफ़र को फ़्लश करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
आउटपुट बफ़र को सफलतापूर्वक फ़्लश किया गया.
OT_ERROR_NO_BUFS
बफ़र मेमोरी असाइन नहीं की जा सकी.
OT_ERROR_INVALID_STATE
TLS कनेक्शन शुरू नहीं किया गया था.

otBleSecureGetPeerCertificateBase64

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

पीयर x509 सर्टिफ़िकेट base64 कोड में बदला गया लौटाता है.

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

otBleSecureGetPeerSubjectAttributeByOid

otError otBleSecureGetPeerSubjectAttributeByOid(
  otInstance *aInstance,
  const char *aOid,
  size_t aOidLength,
  uint8_t *aAttributeBuffer,
  size_t *aAttributeLength,
  int *aAsn1Type
)

यह फ़ंक्शन, पीयर x509 सर्टिफ़िकेट के सब्जेक्ट से लिया गया, अपने OID से पहचाने जाने वाले एट्रिब्यूट की वैल्यू दिखाता है.

मिलते-जुलते ऐप्लिकेशन का OID, बाइनरी फ़ॉर्मैट में दिया जाता है. एट्रिब्यूट की लंबाई तब सेट की जाती है, जब एट्रिब्यूट को पढ़ लिया गया हो या असफल होने पर शून्य हो. अगर एट्रिब्यूट को पढ़ लिया गया था, तो ASN.1 टाइप, ITU-T X.690 स्टैंडर्ड में बताया गया था.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aOid
OID का पॉइंटर मिलना.
[in] aOidLength
OID की लंबाई.
[out] aAttributeBuffer
एट्रिब्यूट बफ़र के लिए पॉइंटर.
[in,out] aAttributeLength
इनपुट पर, साइज़ aAttributeBuffer से बड़ा नहीं होना चाहिए. आउटपुट पर, बफ़र में सेव किए गए एट्रिब्यूट की लंबाई.
[out] aAsn1Type
बफ़र में सेव किए गए एट्रिब्यूट के ASN.1 टाइप के लिए पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_INVALID_STATE
अभी तक कनेक्ट नहीं है.
OT_ERROR_INVALID_ARGS
एट्रिब्यूट की लंबाई अमान्य है.
OT_ERROR_NONE
विशेषता को सफलतापूर्वक पढ़ लिया गया.
OT_ERROR_NO_BUFS
विशेषता मान संग्रहित करने के लिए मेमोरी काफ़ी नहीं है.

otBleSecureGetThreadAttributeFromOwnCertificate

otError otBleSecureGetThreadAttributeFromOwnCertificate(
  otInstance *aInstance,
  int aThreadOidDescriptor,
  uint8_t *aAttributeBuffer,
  size_t *aAttributeLength
)

अपने x509 सर्टिफ़िकेट के v3 एक्सटेंशन से, OID 1.3.6.1.4.1.44970.x के लिए एट्रिब्यूट की वैल्यू दिखाता है. इसमें आखिरी अंक x को aThreadOidDescriptor पर सेट किया गया है.

एट्रिब्यूट की लंबाई तब सेट की जाती है, जब एट्रिब्यूट को पढ़ लिया गया हो या असफल होने पर शून्य हो. चालू होने के लिए कनेक्शन की ज़रूरत होती है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aThreadOidDescriptor
थ्रेड एट्रिब्यूट OID का आखिरी अंक.
[out] aAttributeBuffer
एट्रिब्यूट बफ़र के लिए पॉइंटर.
[in,out] aAttributeLength
इनपुट पर, साइज़ aAttributeBuffer से बड़ा नहीं होना चाहिए. आउटपुट पर, बफ़र में सेव किए गए एट्रिब्यूट की लंबाई.
रिटर्न वैल्यू
OT_ERROR_NONE
विशेषता को सफलतापूर्वक पढ़ लिया गया.
OT_ERROR_INVALID_ARGS
एट्रिब्यूट की लंबाई अमान्य है.
OT_NOT_FOUND
अनुरोध किया गया एट्रिब्यूट नहीं मिला.
OT_ERROR_NO_BUFS
विशेषता मान संग्रहित करने के लिए मेमोरी काफ़ी नहीं है.
OT_ERROR_INVALID_STATE
अभी तक कनेक्ट नहीं है.
OT_ERROR_NOT_IMPLEMENTED
aThreadOidDescriptor की वैल्यू >127 है.
OT_ERROR_PARSE
प्रमाणपत्र एक्सटेंशन को पार्स नहीं किया जा सका.

otBleSecureGetThreadAttributeFromPeerCertificate

otError otBleSecureGetThreadAttributeFromPeerCertificate(
  otInstance *aInstance,
  int aThreadOidDescriptor,
  uint8_t *aAttributeBuffer,
  size_t *aAttributeLength
)

यह फ़ंक्शन, पीयर x509 सर्टिफ़िकेट के v3 एक्सटेंशन से, OID 1.3.6.1.4.1.44970.x के लिए एट्रिब्यूट की वैल्यू दिखाता है. इसमें आखिरी अंक x को aThreadOidDescriptor पर सेट किया गया है.

एट्रिब्यूट की लंबाई तब सेट की जाती है, जब एट्रिब्यूट को पढ़ लिया गया हो या असफल होने पर शून्य हो. चालू होने के लिए कनेक्शन की ज़रूरत होती है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aThreadOidDescriptor
थ्रेड एट्रिब्यूट OID का आखिरी अंक.
[out] aAttributeBuffer
एट्रिब्यूट बफ़र के लिए पॉइंटर.
[in,out] aAttributeLength
इनपुट पर, साइज़ aAttributeBuffer से बड़ा नहीं होना चाहिए. आउटपुट पर, बफ़र में सेव किए गए एट्रिब्यूट की लंबाई.
रिटर्न वैल्यू
OT_ERROR_NONE
विशेषता को सफलतापूर्वक पढ़ लिया गया.
OT_ERROR_INVALID_ARGS
एट्रिब्यूट की लंबाई अमान्य है.
OT_NOT_FOUND
अनुरोध किया गया एट्रिब्यूट नहीं मिला.
OT_ERROR_NO_BUFS
विशेषता मान संग्रहित करने के लिए मेमोरी काफ़ी नहीं है.
OT_ERROR_INVALID_STATE
अभी तक कनेक्ट नहीं है.
OT_ERROR_NOT_IMPLEMENTED
aThreadOidDescriptor की वैल्यू >127 है.
OT_ERROR_PARSE
प्रमाणपत्र एक्सटेंशन को पार्स नहीं किया जा सका.

otBleSecureIsCommandClassAuthorized

bool otBleSecureIsCommandClassAuthorized(
  otInstance *aInstance,
  otTcatCommandClass aCommandClass
)

इससे पता चलता है कि TCAT कमांड क्लास को अनुमति है या नहीं.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aCommandClass
जांच करने के लिए, कमांड क्लास.
रिटर्न वैल्यू
TRUE
कमांड क्लास को अनुमति दी गई है.
FALSE
आदेश क्लास को अनुमति नहीं है.

otBleSecureIsConnected

bool otBleSecureIsConnected(
  otInstance *aInstance
)

यह बताता है कि TLS सेशन कनेक्ट है या नहीं.

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

otBleSecureIsConnectionActive

bool otBleSecureIsConnectionActive(
  otInstance *aInstance
)

यह बताता है कि TLS सेशन चालू (कनेक्ट है या कनेक्ट हो रहा है) है या नहीं.

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

otBleSecureIsTcatEnabled

bool otBleSecureIsTcatEnabled(
  otInstance *aInstance
)

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

ब्यौरा
रिटर्न वैल्यू
TRUE
TCAT एजेंट चालू है.
FALSE
TCAT एजेंट चालू नहीं है.

otBleSecureSend

otError otBleSecureSend(
  otInstance *aInstance,
  uint8_t *aBuf,
  uint16_t aLength
)

यह एक सुरक्षित BLE डेटा पैकेट भेजता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aBuf
TCAT Send ऐप्लिकेशन डेटा TLV की वैल्यू के रूप में भेजने के लिए डेटा का पॉइंटर.
[in] aLength
डेटा बफ़र की अवधि दिखाने वाली संख्या.
रिटर्न वैल्यू
OT_ERROR_NONE
डेटा भेजा गया.
OT_ERROR_NO_BUFS
बफ़र मेमोरी असाइन नहीं की जा सकी.
OT_ERROR_INVALID_STATE
TLS कनेक्शन शुरू नहीं किया गया था.

otBleSecureSendApplicationTlv

otError otBleSecureSendApplicationTlv(
  otInstance *aInstance,
  uint8_t *aBuf,
  uint16_t aLength
)

यह एक सुरक्षित BLE डेटा पैकेट भेजता है, जिसमें TCAT Send ऐप्लिकेशन डेटा TLV मौजूद होता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aBuf
TCAT Send ऐप्लिकेशन डेटा TLV की वैल्यू के रूप में भेजने के लिए डेटा का पॉइंटर.
[in] aLength
डेटा बफ़र की अवधि दिखाने वाली संख्या.
रिटर्न वैल्यू
OT_ERROR_NONE
डेटा भेजा गया.
OT_ERROR_NO_BUFS
बफ़र मेमोरी असाइन नहीं की जा सकी.
OT_ERROR_INVALID_STATE
TLS कनेक्शन शुरू नहीं किया गया था.

otBleSecureSendMessage

otError otBleSecureSendMessage(
  otInstance *aInstance,
  otMessage *aMessage
)

यह एक सुरक्षित BLE मैसेज भेजता है.

अगर रिटर्न वैल्यू OT_ERROR_NONE है, तो OpenThread को aMessage का मालिकाना हक मिल जाता है. साथ ही, कॉलर को अब aMessage का रेफ़रंस नहीं देना चाहिए. अगर रिटर्न वैल्यू OT_ERROR_NONE नहीं है, तो कॉल करने वाले के पास aMessage का मालिकाना हक बना रहता है. इसमें मैसेज बफ़र की ज़रूरत न होने पर aMessage को खाली करना भी शामिल है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aMessage
उस मैसेज का पॉइंटर जिसे भेजना है.

ब्यौरा
रिटर्न वैल्यू
OT_ERROR_NONE
मैसेज भेजा गया.
OT_ERROR_NO_BUFS
बफ़र मेमोरी असाइन नहीं की जा सकी.
OT_ERROR_INVALID_STATE
TLS कनेक्शन शुरू नहीं किया गया था.

otBleSecureSetCaCertificateChain

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

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

यह साथी के सर्टिफ़िकेट की पुष्टि करने के लिए ज़रूरी है.

सुरक्षित बीएलई के लिए TLS मोड "AES 128 CCM 8 के साथ ECDHE ECDSA".

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

otBleSecureSetCertificate

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

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

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

otBleSecureSetPsk

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

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

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

otBleSecureSetSslAuthMode

void otBleSecureSetSslAuthMode(
  otInstance *aInstance,
  bool aVerifyPeerCertificate
)

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

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

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

otBleSecureStart

otError otBleSecureStart(
  otInstance *aInstance,
  otHandleBleSecureConnect aConnectHandler,
  otHandleBleSecureReceive aReceiveHandler,
  bool aTlvMode,
  void *aContext
)

BLE सुरक्षित सेवा शुरू करें.

टीएलवी मोड चालू होने पर, पूरा टीएलवी मिलने पर aReceiveHandler फ़ंक्शन को कॉल किया जाएगा. साथ ही, मैसेज ऑफ़सेट टीएलवी वैल्यू पर ले जाएगा.

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

otBleSecureStop

void otBleSecureStop(
  otInstance *aInstance
)

BLE सिक्योर सर्वर को रोकता है.

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

otBleSecureTcatStart

otError otBleSecureTcatStart(
  otInstance *aInstance,
  const otTcatVendorInfo *aVendorInfo,
  otHandleTcatJoin aHandler
)

BLE सिक्योर पर TCAT प्रोटोकॉल चालू करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aVendorInfo
वेंडर की जानकारी का पॉइंटर (तरीका कॉल के बाद मान्य रहना चाहिए, हो सकता है कि यह NULL हो).
[in] aHandler
किसी फ़ंक्शन का पॉइंटर, जिसे जॉइन ऑपरेशन पूरा होने पर कॉल किया जाता है.
रिटर्न वैल्यू
OT_ERROR_NONE
BLE सिक्योर जॉइनर की भूमिका शुरू की गई.
OT_ERROR_INVALID_ARGS
aElevationPsk या aVendorInfo अमान्य है.
OT_ERROR_INVALID_STATE
BLE फ़ंक्शन शुरू नहीं किया गया है या लाइन मोड नहीं चुना गया है.

मैक्रो

OT_TCAT_MAX_SERVICE_NAME_LENGTH

 OT_TCAT_MAX_SERVICE_NAME_LENGTH 15

यूडीपी या टीसीपी सेवा के नाम वाली स्ट्रिंग की ज़्यादा से ज़्यादा लंबाई, इसमें शून्य वर्ण शामिल नहीं है.

रिसॉर्स

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