nl:: Weave:: WeaveSecurityManager
סיכום
בונים והורסים |
|
---|---|
WeaveSecurityManager(void)
|
סוגים ציבוריים |
|
---|---|
KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)
|
typedefvoid(*
סוג הפונקציה לטיפול בהודעות שגיאה חשובות. |
KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)
|
typedefvoid(*
סוג פונקציית הטיפול בפרוטוקול הייצוא של מפתחות. |
KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)
|
typedefvoid(*
סוג פונקציית הטיפול בשגיאות בפרוטוקול ייצוא מפתחות. |
SessionErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, uint64_t peerNodeId, StatusReport *statusReport)
|
typedefvoid(*
|
SessionEstablishedFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType)
|
typedefvoid(*
|
State
|
טיפוסים בני מנייה (enum) |
מאפיינים ציבוריים |
|
---|---|
CASEUseKnownECDHKey
|
bool
|
ExchangeManager
|
|
FabricState
|
|
IdleSessionTimeout
|
uint32_t
|
InitiatorAllowedCASEConfigs
|
uint8_t
|
InitiatorAllowedCASECurves
|
uint8_t
|
InitiatorAllowedKeyExportConfigs
|
uint8_t
|
InitiatorCASEConfig
|
uint32_t
|
InitiatorCASECurveId
|
uint32_t
|
InitiatorKeyExportConfig
|
uint8_t
|
OnKeyErrorMsgRcvd
|
פונקציית הקריאה החוזרת (callback) של שגיאת המפתח.
|
OnSessionError
|
SessionErrorFunct
|
OnSessionEstablished
|
SessionEstablishedFunct
|
ResponderAllowedCASEConfigs
|
uint8_t
|
ResponderAllowedCASECurves
|
uint8_t
|
ResponderAllowedKeyExportConfigs
|
uint8_t
|
SessionEstablishTimeout
|
uint32_t
|
State
|
uint8_t
|
mCASEEngine
|
|
mKeyExport
|
|
mPASEEngine
|
|
mStartKeyExport_OnComplete
|
פרוטוקול ייצוא המפתחות משלים את פונקציית הקריאה החוזרת.
|
mStartKeyExport_OnError
|
פונקציית הקריאה החוזרת לשגיאה של פרוטוקול ייצוא המפתח.
|
mStartKeyExport_ReqState
|
void *
|
mStartSecureSession_OnComplete
|
SessionEstablishedFunct
|
mStartSecureSession_OnError
|
SessionErrorFunct
|
mStartSecureSession_ReqState
|
void *
|
mTAKEEngine
|
תפקידים ציבוריים |
|
---|---|
CancelSessionEstablishment(void *reqState)
|
ביטול תהליך של תהליך הגדרה פעיל.
|
Init(WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer)
|
|
IsKeyError(WEAVE_ERROR err)
|
bool
הפונקציה בודקת אם קוד השגיאה שצוין ב-Weave הוא אחד מקודי השגיאה המרכזיים.
|
OnEncryptedMsgRcvd(uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType)
|
void
|
ReleaseKey(uint64_t peerNodeId, uint16_t keyId)
|
void
איך משחררים הזמנה של מפתח להצפנת הודעות.
|
ReserveKey(uint64_t peerNodeId, uint16_t keyId)
|
void
להציב הזמנה באמצעות מפתח להצפנת הודעות.
|
SendKeyErrorMsg(WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr)
|
שלח את הודעת השגיאה של המפתח.
|
SetCASEAuthDelegate(WeaveCASEAuthDelegate *delegate)
|
void
|
SetKeyExportDelegate(WeaveKeyExportDelegate *delegate)
|
void
|
SetTAKEAuthDelegate(WeaveTAKEChallengerAuthDelegate *delegate)
|
void
|
SetTAKETokenAuthDelegate(WeaveTAKETokenAuthDelegate *delegate)
|
void
|
Shutdown(void)
|
|
StartCASESession(WeaveConnection *con, uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, WeaveCASEAuthDelegate *authDelegate, uint64_t terminatingNodeId)
|
צריך להשתמש בשיטה הזו כדי ליצור פעילות חדשה של CASE או למצוא אותה קיימת.
|
StartKeyExport(WeaveConnection *con, uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, uint32_t keyId, bool signMessage, void *reqState, KeyExportCompleteFunct onComplete, KeyExportErrorFunct onError, WeaveKeyExportDelegate *keyExportDelegate)
|
|
StartPASESession(WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, const uint8_t *pw, uint16_t pwLen)
|
מתבצעת קריאה לשיטה הזו כדי ליצור סשן PASE מאובטח.
|
StartTAKESession(WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate)
|
מתבצעת קריאה לשיטה הזו כדי ליצור סשן Takeout מאובטח.
|
סוגים ציבוריים
KeyErrorMsgRcvdFunct
void(* KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)
סוג הפונקציה לטיפול בהודעות שגיאה חשובות.
פרטים | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
KeyExportCompleteFunct
void(* KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)
סוג פונקציית הטיפול בפרוטוקול הייצוא של מפתחות.
פרטים | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
KeyExportErrorFunct
void(* KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)
סוג פונקציית הטיפול בשגיאות בפרוטוקול ייצוא מפתחות.
פרטים | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
SessionErrorFunct
void(* SessionErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, uint64_t peerNodeId, StatusReport *statusReport)
SessionEstablishedFunct
void(* SessionEstablishedFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType)
ארץ
State
מאפיינים ציבוריים
CASEUsesellerECDHKey
bool CASEUseKnownECDHKey
ExchangeManager
WeaveExchangeManager * ExchangeManager
FabricState
WeaveFabricState * FabricState
IdleSessionTimeout
uint32_t IdleSessionTimeout
InitiatorAllowedCASEConfigs
uint8_t InitiatorAllowedCASEConfigs
InitiatorAllowedCASECurves
uint8_t InitiatorAllowedCASECurves
InitiatorAllowedKeyExportConfigs
uint8_t InitiatorAllowedKeyExportConfigs
InitiatorCASEConfig
uint32_t InitiatorCASEConfig
InitiatorCASECurveId
uint32_t InitiatorCASECurveId
InitiatorKeyExportConfig
uint8_t InitiatorKeyExportConfig
OnKeyErrorMsgRcvd
KeyErrorMsgRcvdFunct OnKeyErrorMsgRcvd
פונקציית הקריאה החוזרת (callback) של שגיאת המפתח.
מתבצעת קריאה לפונקציה זו כאשר מתקבלת הודעת שגיאה חשובה.
OnSessionError
SessionErrorFunct OnSessionError
OnSessionEstablished
SessionEstablishedFunct OnSessionEstablished
ResponderAllowedCASEConfigs
uint8_t ResponderAllowedCASEConfigs
ResponderAllowedCASECurves
uint8_t ResponderAllowedCASECurves
ResponderAllowedKeyExportConfigs
uint8_t ResponderAllowedKeyExportConfigs
SessionEstablishTimeout
uint32_t SessionEstablishTimeout
ארץ
uint8_t State
mCASEEngine
WeaveCASEEngine * mCASEEngine
mKeyExport
WeaveKeyExport * mKeyExport
mPASEEngine
WeavePASEEngine * mPASEEngine
mStartKeyExport_OnComplete
KeyExportCompleteFunct mStartKeyExport_OnComplete
פרוטוקול ייצוא המפתחות משלים את פונקציית הקריאה החוזרת.
הפונקציה הזו מופעלת כשתהליך ייצוא המפתח הסודי הושלם.
mStartKeyExport_OnError
KeyExportErrorFunct mStartKeyExport_OnError
פונקציית הקריאה החוזרת לשגיאה של פרוטוקול ייצוא המפתח.
הפונקציה הזו מופעלת במקרה של שגיאה בתהליך ייצוא המפתחות.
mStartKeyExport_ReqState
void * mStartKeyExport_ReqState
mStartSecureSession_OnComplete
SessionEstablishedFunct mStartSecureSession_OnComplete
mStartSecureSession_OnError
SessionErrorFunct mStartSecureSession_OnError
mStartSecureSession_ReqState
void * mStartSecureSession_ReqState
mTAKEEngine
WeaveTAKEEngine * mTAKEEngine
תפקידים ציבוריים
CancelSessionEstablishment
WEAVE_ERROR CancelSessionEstablishment( void *reqState )
ביטול תהליך של תהליך הגדרה פעיל.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
ערכים מוחזרים |
|
הפעלה
WEAVE_ERROR Init( WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer )
IsKeyError
bool IsKeyError( WEAVE_ERROR err )
הפונקציה בודקת אם קוד השגיאה שצוין ב-Weave הוא אחד מקודי השגיאה המרכזיים.
הפונקציה הזו מופעלת כדי לקבוע אם יש לשלוח הודעת שגיאה של מפתח ליוזם ההודעה שלא מצא מפתח נכון במהלך הפענוח.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
ערכים מוחזרים |
|
OnEncryptedMsgRcvd
void OnEncryptedMsgRcvd( uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType )
ReleaseKey
void ReleaseKey( uint64_t peerNodeId, uint16_t keyId )
איך משחררים הזמנה של מפתח להצפנת הודעות.
משחררים הזמנה שבוצעה בעבר באמצעות מפתח להצפנת הודעות.
לכל הזמנה שבוצעה במפתח מסוים, יש לבצע קריאה לשיטה ReleaseKey() לא יותר מפעם אחת.
השיטה הזו מקבלת כל צורה של מזהה מפתח, כולל 'ללא'. המערכת תתעלם ממזהי מפתחות שלא מציינים שם מפתחות בפועל.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
ReserveKey
void ReserveKey( uint64_t peerNodeId, uint16_t keyId )
להציב הזמנה באמצעות מפתח להצפנת הודעות.
שמירת מפתחות משמשת כדי לסמן שמפתח מסוים נמצא בשימוש פעיל וצריך לשמור אותו. חשוב לדעת: ביצוע הזמנה באמצעות מפתח לא מבטיח שהמפתח לא יוסר על ידי פעולה מפורשת, כמו קבלה של הודעת KeyError.
לכל הזמנה שמבוצעת במפתח מסוים, יש לבצע קריאה תואמת ל-ReleaseKey().
השיטה הזו מקבלת כל צורה של מזהה מפתח, כולל 'ללא'. המערכת תתעלם ממזהי מפתחות שלא מציינים שם מפתחות בפועל.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
SendKeyErrorMsg
WEAVE_ERROR SendKeyErrorMsg( WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr )
שלח את הודעת השגיאה של המפתח.
הפונקציה הזו מופעלת כאשר פענוח ההודעה ב-Weave נכשל עקב שגיאת מפתח.
פרטים | |||||||||
---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||
ערכים מוחזרים |
|
SetCASEAuthDelegate
void SetCASEAuthDelegate( WeaveCASEAuthDelegate *delegate )
SetKeyExportDelegate
void SetKeyExportDelegate( WeaveKeyExportDelegate *delegate )
SetTAKEAuthDelegate
void SetTAKEAuthDelegate( WeaveTAKEChallengerAuthDelegate *delegate )
SetTAKETokenAuthDelegate
void SetTAKETokenAuthDelegate( WeaveTAKETokenAuthDelegate *delegate )
כיבוי
WEAVE_ERROR Shutdown( void )
StartCASESession
WEAVE_ERROR StartCASESession( WeaveConnection *con, uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, WeaveCASEAuthDelegate *authDelegate, uint64_t terminatingNodeId )
צריך להשתמש בשיטה הזו כדי ליצור פעילות חדשה של CASE או למצוא אותה קיימת.
פרטים | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||||||||||||||
ערכים מוחזרים |
|
StartKeyExport
WEAVE_ERROR StartKeyExport( WeaveConnection *con, uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, uint32_t keyId, bool signMessage, void *reqState, KeyExportCompleteFunct onComplete, KeyExportErrorFunct onError, WeaveKeyExportDelegate *keyExportDelegate )
StartPASESession
WEAVE_ERROR StartPASESession( WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, const uint8_t *pw, uint16_t pwLen )
מתבצעת קריאה לשיטה הזו כדי ליצור סשן PASE מאובטח.
פרטים | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||||||||
ערכים מוחזרים |
|
StartTAKESession
WEAVE_ERROR StartTAKESession( WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate )
מתבצעת קריאה לשיטה הזו כדי ליצור סשן Takeout מאובטח.
פרטים | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||||||||||||||
ערכים מוחזרים |
|
WeaveSecurityManager
WeaveSecurityManager( void )