nl:: Weave:: WeaveSecurityManager
Zusammenfassung
Konstruktoren und Zerstörer |
|
---|---|
WeaveSecurityManager(void)
|
Öffentliche Typen |
|
---|---|
KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)
|
typedefvoid(*
Typ der Funktion zur Verarbeitung wichtiger Fehlermeldungen. |
KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)
|
typedefvoid(*
Typ der Funktion für die vollständige Verarbeitung des Schlüsselexportprotokolls. |
KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)
|
typedefvoid(*
Typ der Fehlerbehandlungsfunktion des Schlüsselexportprotokolls. |
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 |
Öffentliche Funktionen |
|
---|---|
CancelSessionEstablishment(void *reqState)
|
Einrichtung einer laufenden Sitzung abbrechen
|
Init(WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer)
|
|
IsKeyError(WEAVE_ERROR err)
|
bool
Prüft, ob der angegebene Weave-Fehlercode einer der wichtigsten Fehlercodes ist.
|
OnEncryptedMsgRcvd(uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType)
|
void
|
ReleaseKey(uint64_t peerNodeId, uint16_t keyId)
|
void
Freigabe eines Schlüssels für die Nachrichtenverschlüsselung
|
ReserveKey(uint64_t peerNodeId, uint16_t keyId)
|
void
Reservieren Sie einen Nachrichtenverschlüsselungsschlüssel.
|
SendKeyErrorMsg(WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr)
|
Fehlermeldung zum Schlüssel senden.
|
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)
|
Diese Methode wird aufgerufen, um eine neue CASE-Sitzung zu erstellen oder eine vorhandene zu suchen.
|
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)
|
Diese Methode wird aufgerufen, um eine sichere PASE-Sitzung einzurichten.
|
StartTAKESession(WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate)
|
Diese Methode wird aufgerufen, um eine sichere TAKE-Sitzung einzurichten.
|
Öffentliche Typen
KeyErrorMsgRcvdFunct
void(* KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)
Typ der Funktion zur Verarbeitung wichtiger Fehlermeldungen.
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
KeyExportCompleteFunct
void(* KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)
Typ der Funktion zur vollständigen Verarbeitung des Schlüsselexportprotokolls.
Details | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
KeyExportErrorFunct
void(* KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)
Typ der Fehlerbehandlungsfunktion des Schlüsselexportprotokolls.
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
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)
Status
State
Öffentliche Attribute
CASEUseKnownECDHKey
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
Die Callback-Funktion für Schlüsselfehler.
Diese Funktion wird aufgerufen, wenn eine wichtige Fehlermeldung empfangen wird.
OnSessionError
SessionErrorFunct OnSessionError
OnSessionEstablished
SessionEstablishedFunct OnSessionEstablished
ResponderAllowedCASEConfigs
uint8_t ResponderAllowedCASEConfigs
ResponderAllowedCASECurves
uint8_t ResponderAllowedCASECurves
ResponderAllowedKeyExportConfigs
uint8_t ResponderAllowedKeyExportConfigs
SessionEstablishTimeout
uint32_t SessionEstablishTimeout
Status
uint8_t State
mCASEEngine
WeaveCASEEngine * mCASEEngine
mKeyExport
WeaveKeyExport * mKeyExport
mPASEEngine
WeavePASEEngine * mPASEEngine
mStartKeyExport_OnComplete
KeyExportCompleteFunct mStartKeyExport_OnComplete
Die Callback-Funktion für den Abschluss des Schlüsselexportprotokolls.
Diese Funktion wird aufgerufen, wenn der Export des geheimen Schlüssels abgeschlossen ist.
mStartKeyExport_OnError
KeyExportErrorFunct mStartKeyExport_OnError
Die Callback-Funktion für Schlüsselexportprotokollfehler.
Diese Funktion wird aufgerufen, wenn beim Schlüsselexportvorgang ein Fehler auftritt.
mStartKeyExport_ReqState
void * mStartKeyExport_ReqState
mStartSecureSession_OnComplete
SessionEstablishedFunct mStartSecureSession_OnComplete
mStartSecureSession_OnError
SessionErrorFunct mStartSecureSession_OnError
mStartSecureSession_ReqState
void * mStartSecureSession_ReqState
mTAKEEngine
WeaveTAKEEngine * mTAKEEngine
Öffentliche Funktionen
CancelSessionEstablishment
WEAVE_ERROR CancelSessionEstablishment( void *reqState )
Einrichtung einer laufenden Sitzung abbrechen
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabewerte |
|
Init
WEAVE_ERROR Init( WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer )
IsKeyError
bool IsKeyError( WEAVE_ERROR err )
Prüft, ob der angegebene Weave-Fehlercode einer der wichtigsten Fehlercodes ist.
Diese Funktion wird aufgerufen, um zu bestimmen, ob eine Schlüsselfehlermeldung an den Initiator der Meldung gesendet werden soll, die während der Decodierung keinen richtigen Schlüssel gefunden hat.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Rückgabewerte |
|
OnEncryptedMsgRcvd
void OnEncryptedMsgRcvd( uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType )
ReleaseKey
void ReleaseKey( uint64_t peerNodeId, uint16_t keyId )
Freigabe eines Schlüssels für die Nachrichtenverschlüsselung
Reservierungen freigeben, die zuvor für einen Nachrichtenverschlüsselungsschlüssel festgelegt wurden.
Für jede Reservierung, die auf einen bestimmten Schlüssel angewendet wird, darf die Methode ReleaseKey() nur einmal aufgerufen werden.
Diese Methode akzeptiert jede Form von Schlüssel-ID, einschließlich "None". Schlüssel-IDs, die keine tatsächlichen Schlüssel benennen, werden ignoriert.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
ReserveKey
void ReserveKey( uint64_t peerNodeId, uint16_t keyId )
Reservieren Sie einen Nachrichtenverschlüsselungsschlüssel.
Schlüsselreservierungen werden verwendet, um zu signalisieren, dass ein bestimmter Schlüssel aktiv verwendet wird und beibehalten werden sollte. Beachten Sie, dass die Reservierung eines Schlüssels keine Garantie dafür ist, dass der Schlüssel nicht durch eine explizite Aktion wie z. B. den Empfang einer KeyError-Nachricht entfernt wird.
Für jede Reservierung, die auf einen bestimmten Schlüssel angewendet wird, muss ein entsprechender Aufruf an ReleaseKey() erfolgen.
Diese Methode akzeptiert jede Form von Schlüssel-ID, einschließlich "None". Schlüssel-IDs, die keine tatsächlichen Schlüssel benennen, werden ignoriert.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
SendKeyErrorMsg
WEAVE_ERROR SendKeyErrorMsg( WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr )
Fehlermeldung zum Schlüssel senden.
Diese Funktion wird aufgerufen, wenn die Decodierung empfangener Weave-Nachrichten aufgrund eines Schlüsselfehlers fehlschlägt.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Rückgabewerte |
|
SetCASEAuthDelegate
void SetCASEAuthDelegate( WeaveCASEAuthDelegate *delegate )
SetKeyExportDelegate
void SetKeyExportDelegate( WeaveKeyExportDelegate *delegate )
SetTAKEAuthDelegate
void SetTAKEAuthDelegate( WeaveTAKEChallengerAuthDelegate *delegate )
SetTAKETokenAuthDelegate
void SetTAKETokenAuthDelegate( WeaveTAKETokenAuthDelegate *delegate )
Herunterfahren
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 )
Diese Methode wird aufgerufen, um eine neue CASE-Sitzung zu erstellen oder zu suchen.
Details | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||||||||
Rückgabewerte |
|
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 )
Diese Methode wird aufgerufen, um eine sichere PASE-Sitzung einzurichten.
Details | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||
Rückgabewerte |
|
StartTAKESession
WEAVE_ERROR StartTAKESession( WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate )
Diese Methode wird aufgerufen, um eine sichere TAKE-Sitzung einzurichten.
Details | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||||||||
Rückgabewerte |
|
WeaveSecurityManager
WeaveSecurityManager( void )