nl:: Weave:: WeaveSecurityManager
Riepilogo
Costruttori e distruttori |
|
---|---|
WeaveSecurityManager(void)
|
Tipi pubblici |
|
---|---|
KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)
|
typedefvoid(*
Tipo di funzione di gestione dei messaggi di errore chiave. |
KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)
|
typedefvoid(*
Tipo di funzione di gestione completa del protocollo di esportazione della chiave. |
KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)
|
typedefvoid(*
Tipo di funzione di gestione degli errori del protocollo di esportazione delle chiavi. |
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 |
Funzioni pubbliche |
|
---|---|
CancelSessionEstablishment(void *reqState)
|
Annullare l'impostazione di una sessione in corso.
|
Init(WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer)
|
|
IsKeyError(WEAVE_ERROR err)
|
bool
Controlla se il codice di errore Weave specificato è uno dei codici di errore chiave.
|
OnEncryptedMsgRcvd(uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType)
|
void
|
ReleaseKey(uint64_t peerNodeId, uint16_t keyId)
|
void
Rilascia una prenotazione della chiave di crittografia del messaggio.
|
ReserveKey(uint64_t peerNodeId, uint16_t keyId)
|
void
Effettua una prenotazione su una chiave di crittografia del messaggio.
|
SendKeyErrorMsg(WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr)
|
Invia messaggio di errore relativo alla chiave.
|
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)
|
Questo metodo viene chiamato per stabilire una nuova sessione CASE o trovare una esistente.
|
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)
|
Questo metodo viene chiamato per stabilire una sessione PASE sicura.
|
StartTAKESession(WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate)
|
Questo metodo viene chiamato per stabilire una sessione sicura TAKE.
|
Tipi pubblici
KeyErrorMsgRcvdFunct
void(* KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)
Tipo di funzione di gestione dei messaggi di errore chiave.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
KeyExportCompleteFunct
void(* KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)
Tipo di funzione di gestione completa del protocollo di esportazione della chiave.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
KeyExportErrorFunct
void(* KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)
Tipo di funzione di gestione degli errori del protocollo di esportazione delle chiavi.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
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)
Stato
State
Attributi pubblici
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
La funzione di callback dell'errore chiave.
Questa funzione viene richiamata quando si riceve un messaggio di errore chiave.
OnSessionError
SessionErrorFunct OnSessionError
OnSessionEstablished
SessionEstablishedFunct OnSessionEstablished
ResponderAllowedCASEConfigs
uint8_t ResponderAllowedCASEConfigs
ResponderAllowedCASECurves
uint8_t ResponderAllowedCASECurves
ResponderAllowedKeyExportConfigs
uint8_t ResponderAllowedKeyExportConfigs
SessionEstablishTimeout
uint32_t SessionEstablishTimeout
Stato
uint8_t State
mCASEEngine
WeaveCASEEngine * mCASEEngine
mKeyExport
WeaveKeyExport * mKeyExport
mPASEEngine
WeavePASEEngine * mPASEEngine
mStartKeyExport_OnComplete
KeyExportCompleteFunct mStartKeyExport_OnComplete
La funzione di callback completa del protocollo di esportazione delle chiavi.
Questa funzione viene chiamata al completamento del processo di esportazione della chiave segreta.
mStartKeyExport_OnError
KeyExportErrorFunct mStartKeyExport_OnError
La funzione di callback dell'errore del protocollo di esportazione chiave.
Questa funzione viene chiamata quando si verifica un errore durante il processo di esportazione delle chiavi.
mStartKeyExport_ReqState
void * mStartKeyExport_ReqState
mStartSecureSession_OnComplete
SessionEstablishedFunct mStartSecureSession_OnComplete
mStartSecureSession_OnError
SessionErrorFunct mStartSecureSession_OnError
mStartSecureSession_ReqState
void * mStartSecureSession_ReqState
mTAKEEngine
WeaveTAKEEngine * mTAKEEngine
Funzioni pubbliche
CancelSessionEstablishment
WEAVE_ERROR CancelSessionEstablishment( void *reqState )
Annullare l'impostazione di una sessione in corso.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
Inizializzazione
WEAVE_ERROR Init( WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer )
IsKeyError
bool IsKeyError( WEAVE_ERROR err )
Controlla se il codice di errore Weave specificato è uno dei codici di errore chiave.
Questa funzione viene chiamata per determinare se il messaggio di errore della chiave deve essere inviato all'iniziatore del messaggio che non è riuscito a trovare una chiave corretta durante la decodifica.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
OnEncryptedMsgRcvd
void OnEncryptedMsgRcvd( uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType )
ReleaseKey
void ReleaseKey( uint64_t peerNodeId, uint16_t keyId )
Rilascia una prenotazione della chiave di crittografia del messaggio.
Rilascia una prenotazione inserita in precedenza su una chiave di crittografia del messaggio.
Per ogni prenotazione inserita in una determinata chiave, il metodo ReleaseKey() non deve essere chiamato più di una volta.
Questo metodo accetta qualsiasi tipo di ID chiave, incluso None. Gli ID chiave che non nominano chiavi effettive vengono ignorati.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
ReserveKey
void ReserveKey( uint64_t peerNodeId, uint16_t keyId )
Effettua una prenotazione su una chiave di crittografia del messaggio.
Le prenotazioni delle chiavi vengono utilizzate per segnalare che una determinata chiave è attivamente in uso e deve essere conservata. Tieni presente che l'inserimento di una prenotazione su una chiave non garantisce che quest'ultima non verrà rimossa da un'azione esplicita, come la ricezione di un messaggio KeyError.
Per ogni prenotazione inserita in una determinata chiave, è necessario effettuare una chiamata corrispondente a ReleaseKey().
Questo metodo accetta qualsiasi tipo di ID chiave, incluso None. Gli ID chiave che non nominano chiavi effettive vengono ignorati.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
SendKeyErrorMsg
WEAVE_ERROR SendKeyErrorMsg( WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr )
Invia messaggio di errore relativo alla chiave.
Questa funzione viene chiamata quando la decodifica del messaggio Weave ricevuto non riesce a causa di un errore della chiave.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||
Valori restituiti |
|
SetCASEAuthDelegate
void SetCASEAuthDelegate( WeaveCASEAuthDelegate *delegate )
SetKeyExportDelegate
void SetKeyExportDelegate( WeaveKeyExportDelegate *delegate )
SetTAKEAuthDelegate
void SetTAKEAuthDelegate( WeaveTAKEChallengerAuthDelegate *delegate )
SetTAKETokenAuthDelegate
void SetTAKETokenAuthDelegate( WeaveTAKETokenAuthDelegate *delegate )
Arresto
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 )
Questo metodo viene chiamato per stabilire una nuova sessione CASE o trovare una esistente.
Dettagli | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||||||||
Valori restituiti |
|
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 )
Questo metodo viene chiamato per stabilire una sessione PASE sicura.
Dettagli | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||
Valori restituiti |
|
StartTAKESession
WEAVE_ERROR StartTAKESession( WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate )
Questo metodo viene chiamato per stabilire una sessione sicura TAKE.
Dettagli | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||||||||
Valori restituiti |
|
WeaveSecurityManager
WeaveSecurityManager( void )