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 principale per la gestione dei messaggi di errore. |
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 della chiave. |
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 la creazione di una sessione in corso.
|
Init(WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer)
|
|
IsKeyError(WEAVE_ERROR err)
|
bool
Verifica se il codice di errore Weave specificato è uno dei codici di errore principali.
|
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
Inserisci una prenotazione su una chiave di crittografia del messaggio.
|
SendKeyErrorMsg(WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr)
|
Invia messaggio di errore 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 sessione CASE nuova o 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 protetta.
|
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 di take.
|
Tipi pubblici
KeyErrorMsgRcvdFunct
void(* KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)
Tipo di funzione principale per la gestione dei messaggi di errore.
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 della chiave.
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 principale di callback degli errori.
Questa funzione viene richiamata alla ricezione di 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 dei tasti.
Questa funzione viene richiamata quando il processo di esportazione della chiave segreta è completo.
mStartKeyExport_OnError
KeyExportErrorFunct mStartKeyExport_OnError
La funzione di callback di errore del protocollo di esportazione.
Questa funzione viene richiamata quando si verifica un errore durante il processo di esportazione della chiave.
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 la creazione di una sessione in corso.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
Inizia
WEAVE_ERROR Init( WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer )
IsKeyError
bool IsKeyError( WEAVE_ERROR err )
Verifica se il codice di errore Weave specificato è uno dei codici di errore principali.
Questa funzione viene chiamata per determinare se il messaggio di errore principale deve essere inviato all'autore 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.
Rilasciare una prenotazione precedentemente effettuata su una chiave di crittografia dei messaggi.
Per ogni prenotazione effettuata su una determinata chiave, il metodo ReleaseKey() non deve essere chiamato più di una volta.
Questo metodo accetta qualsiasi forma di ID chiave, incluso Nessuno. Gli ID delle chiavi che non nominano le chiavi effettive vengono ignorati.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
ReserveKey
void ReserveKey( uint64_t peerNodeId, uint16_t keyId )
Inserisci una prenotazione su una chiave di crittografia del messaggio.
Le prenotazioni delle chiavi vengono utilizzate per segnalare che una determinata chiave è in uso attivamente e deve essere conservata. Tieni presente che l'inserimento di una prenotazione su una chiave non garantisce che la chiave non venga rimossa da un'azione esplicita come la ricezione di un messaggio KeyError.
Per ogni prenotazione effettuata su una determinata chiave, è necessario effettuare una chiamata corrispondente a ReleaseKey().
Questo metodo accetta qualsiasi forma di ID chiave, incluso Nessuno. Gli ID delle chiavi che non nominano le chiavi effettive vengono ignorati.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
SendKeyErrorMsg
WEAVE_ERROR SendKeyErrorMsg( WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr )
Invia messaggio di errore chiave.
Questa funzione viene richiamata quando la decodifica del messaggio Weave ricevuto non va a buon fine a causa di un errore 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 sessione CASE nuova o 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 protetta.
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 di take.
Dettagli | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||||||||
Valori restituiti |
|
WeaveSecurityManager
WeaveSecurityManager( void )