BLE מאובטח

המודול הזה כולל פונקציות ששולטות בתקשורת BLE Secure (TLS באמצעות BLE).

סיכום

מודול זה כולל פונקציות שמטמיעות תקשורת 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 Secure 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)
מפעיל סשן TLS עם אפליקציה להשוואה באמצעות חיבור BLE שכבר פתוח.
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)
מחזירה ערך מאפיין שזוהה על ידי ה-OID שלו מהנושא של אישור x509 של עמית.
otBleSecureGetThreadAttributeFromOwnCertificate(otInstance *aInstance, int aThreadOidDescriptor, uint8_t *aAttributeBuffer, size_t *aAttributeLength)
מחזירה ערך מאפיין עבור ה-OID 1.3.6.1.4.1.44970.x מסיומות v3 של אישור x509 עצמו, כאשר הספרה האחרונה x מוגדרת כ-aThreadOidDescriptor.
otBleSecureGetThreadAttributeFromPeerCertificate(otInstance *aInstance, int aThreadOidDescriptor, uint8_t *aAttributeBuffer, size_t *aAttributeLength)
מחזירה ערך מאפיין עבור ה-OID 1.3.6.1.4.1.44970.x מסיומות v3 של אישור x509 העמית, כאשר הספרה האחרונה 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 שמכילה TLV של נתוני האפליקציה TCAT Send Application.
otBleSecureSendMessage(otInstance *aInstance, otMessage *aMessage)
נשלחת הודעת BLE מאובטחת.
otBleSecureSetCaCertificateChain(otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength)
void
מגדיר את ה-CA המהימנים ברמה העליונה.
otBleSecureSetCertificate(otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength)
void
מגדירה את אישור X509 של המכשיר המקומי עם מפתח פרטי מתאים לסשן TLS עם TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8.
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
מגדיר את מצב האימות לחיבור המאובטח באמצעות BLE.
otBleSecureStart(otInstance *aInstance, otHandleBleSecureConnect aConnectHandler, otHandleBleSecureReceive aReceiveHandler, bool aTlvMode, void *aContext)
מפעיל את שירות BLE Secure.
otBleSecureStop(otInstance *aInstance)
void
מפסיק את השרת BLE Secure.
otBleSecureTcatStart(otInstance *aInstance, const otTcatVendorInfo *aVendorInfo, otHandleTcatJoin aHandler)
הפעלת פרוטוקול TCAT באמצעות BLE Secure.

מבנים

otTcatVendorInfo

המבנה הזה מייצג פרטי ספק TCAT.

ספירות

otTcatApplicationProtocol

 otTcatApplicationProtocol

מייצג את פרוטוקול האפליקציה TCAT.

תכונות
OT_TCAT_APPLICATION_PROTOCOL_NONE

הודעה שנשלחה בלי להפעיל את סוכן TCAT.

OT_TCAT_APPLICATION_PROTOCOL_STATUS

ההודעה הופנתה לשירות UDP.

OT_TCAT_APPLICATION_PROTOCOL_TCP

ההודעה הופנתה לשירות 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

יש שגיאה בערך של ה-TLV שהועבר.

ערכי דף

otHandleBleSecureConnect

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

המצביע להתקשרות כאשר משתנה מצב החיבור המאובטח.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aConnected
TRUE, אם נוצר חיבור מאובטח, אחרת צריך להזין FALSE.
[in] aBleConnectionOpen
TRUE אם נוצר חיבור BLE להעברת מקור נתונים TLS, אחרת, FALSE.
[in] aContext
הפניה למידע שרירותי בהקשר.

otHandleBleSecureReceive

otHandleTcatApplicationDataReceive otHandleBleSecureReceive

מצביע לשיחה כשנתונים התקבלו באמצעות חיבור BLE Secure 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
)

מפעיל סשן TLS עם אפליקציה להשוואה באמצעות חיבור BLE שכבר פתוח.

פרטים
פרמטרים
[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
)

מחזירה ערך מאפיין שזוהה על ידי ה-OID שלו מהנושא של אישור x509 של עמית.

ה-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
)

מחזירה ערך מאפיין עבור ה-OID 1.3.6.1.4.1.44970.x מסיומות v3 של אישור x509 עצמו, כאשר הספרה האחרונה x מוגדרת כ-aThreadOidDescriptor.

אורך המאפיין מוגדר אם המאפיין נקרא בהצלחה, או אם הוא לא נקרא. נדרש חיבור כדי להפעיל את המכשיר.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aThreadOidDescriptor
הספרה האחרונה של מאפיין ה-Thread 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
)

מחזירה ערך מאפיין עבור ה-OID 1.3.6.1.4.1.44970.x מסיומות v3 של אישור x509 העמית, כאשר הספרה האחרונה x מוגדרת כ-aThreadOidDescriptor.

אורך המאפיין מוגדר אם המאפיין נקרא בהצלחה, או אם הוא לא נקרא. נדרש חיבור כדי להפעיל את המכשיר.

.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aThreadOidDescriptor
הספרה האחרונה של מאפיין ה-Thread 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
מצביע אל הנתונים שיש לשלוח בתור הערך של ה-TLV לשליחת נתוני אפליקציה של TCAT.
[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 שמכילה TLV של נתוני האפליקציה TCAT Send Application.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aBuf
מצביע אל הנתונים שיש לשלוח בתור הערך של ה-TLV לשליחת נתוני אפליקציה של TCAT.
[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
)

מגדיר את ה-CA המהימנים ברמה העליונה.

הוא נדרש לאימות האישור של העמית.

מצב TLS: 'ECDHE ECDSA עם AES 128 CCM 8' ל-BLE מאובטח.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aX509CaCertificateChain
מצביע לשרשרת האישורים X509 בפורמט PEM.
[in] aX509CaCertChainLength
אורך השרשרת.

otBleSecureSetCertificate

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

מגדירה את אישור X509 של המכשיר המקומי עם מפתח פרטי מתאים לסשן TLS עם TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aX509Cert
הפניה לאישור X509 בפורמט PEM.
[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
אורך הזהות של PSK.

otBleSecureSetSslAuthMode

void otBleSecureSetSslAuthMode(
  otInstance *aInstance,
  bool aVerifyPeerCertificate
)

מגדיר את מצב האימות לחיבור המאובטח באמצעות BLE.

השבתה או הפעלה של אימות אישור של אפליקציה להשוואה. חייבת להיות קריאה לפני ההתחלה.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aVerifyPeerCertificate
true כדי לאמת את האישור של אפליקציה להשוואה.

otBleSecureStart

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

מפעיל את שירות BLE Secure.

כשמצב TLV פעיל, הפונקציה aReceiveHandler תופעל לאחר קבלת TLV מלא, וההיסט של ההודעה יצביע לערך TLV.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aConnectHandler
מצביע לפונקציה שתתבצע קריאה כשמצב החיבור ישתנה.
[in] aReceiveHandler
מצביע אל פונקציה שתתבצע קריאה לאחר שיתקבלו נתונים בחיבור TLS.
[in] aTlvMode
ערך בוליאני שמציין אם מצב קו יופעל.
[in] aContext
הפניה למידע שרירותי בהקשר. אם לא משתמשים בו, הערך יכול להיות NULL.
ערכים מוחזרים
OT_ERROR_NONE
השרת BLE Secure הופעל בהצלחה.
OT_ERROR_ALREADY
השירות כבר צוין.

otBleSecureStop

void otBleSecureStop(
  otInstance *aInstance
)

מפסיק את השרת BLE Secure.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.

otBleSecureTcatStart

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

הפעלת פרוטוקול TCAT באמצעות BLE Secure.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aVendorInfo
הפניה לפרטי הספק (חייבת להישאר בתוקף אחרי הקריאה ל-method, אבל היא יכולה להיות 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

אורך המחרוזת המקסימלי של שם שירות UDP או TCP (לא כולל תו ריק).

מקורות מידע

המקור של נושאי העזר של OpenThread API הוא קוד המקור, שזמין ב-GitHub. אפשר לקרוא מידע נוסף או לתרום למסמכי התיעוד שלנו בדף מקורות מידע.