Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

nl:: Weben:: WeaveSecurityManager

Zusammenfassung

Konstruktoren und Destruktoren

WeaveSecurityManager (void)

Öffentliche Typen

KeyErrorMsgRcvdFunct )(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr) Typdef
void(*
Art der Schlüsselfunktion zur Behandlung von Fehlermeldungen.
KeyExportCompleteFunct )(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen) Typdef
void(*
Art des Schlüsselexportprotokolls komplette Bearbeitungsfunktion.
KeyExportErrorFunct )(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport) Typdef
void(*
Art der Fehlerbehandlungsfunktion des Schlüsselexportprotokolls.
SessionErrorFunct )(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, uint64_t peerNodeId, StatusReport *statusReport) Typdef
void(*
SessionEstablishedFunct )(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType) Typdef
void(*
State aufzählen

Öffentliche Attribute

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
Die Rückruffunktion für Schlüsselfehler.
OnSessionError
SessionErrorFunct
OnSessionEstablished
SessionEstablishedFunct
ResponderAllowedCASEConfigs
uint8_t
ResponderAllowedCASECurves
uint8_t
ResponderAllowedKeyExportConfigs
uint8_t
SessionEstablishTimeout
uint32_t
State
uint8_t
mCASEEngine
mKeyExport
mPASEEngine
mStartKeyExport_OnComplete
Die vollständige Rückruffunktion des Schlüsselexportprotokolls.
mStartKeyExport_OnError
Die Rückruffunktion für den Schlüsselexportprotokollfehler.
mStartKeyExport_ReqState
void *
mStartSecureSession_OnComplete
SessionEstablishedFunct
mStartSecureSession_OnError
SessionErrorFunct
mStartSecureSession_ReqState
void *
mTAKEEngine

Öffentliche Funktionen

CancelSessionEstablishment (void *reqState)
Brechen Sie die Einrichtung einer laufenden Sitzung ab.
Init ( WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer)
IsKeyError ( WEAVE_ERROR err)
bool
Überprü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
Geben Sie eine Schlüsselreservierung für die Nachrichtenverschlüsselung frei.
ReserveKey (uint64_t peerNodeId, uint16_t keyId)
void
Platzieren Sie eine Reservierung für einen Nachrichtenverschlüsselungsschlüssel.
SendKeyErrorMsg ( WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr)
Schlüsselfehlermeldung 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 aufzubauen oder eine vorhandene CASE-Sitzung zu finden.
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 aufzubauen.
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 aufzubauen.

Öffentliche Typen

KeyErrorMsgRcvdFunct

void(* KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)

Art der Schlüsselfunktion zur Behandlung von Fehlermeldungen.

Einzelheiten
Parameter
[in] keyId
Der Verschlüsselungsschlüssel hat die Antwort der Schlüsselfehlernachricht vom Peer verursacht.
[in] encType
Verschlüsselungstyp mit keyId verbunden.
[in] messageId
Die Kennung der Weave-Nachricht führte zur Schlüsselfehlerantwort des Peers.
[in] peerNodeId
Die Kennung des Weave-Knotens, der die Schlüsselfehlermeldung gesendet hat.
[in] keyErr
Der vom Peer empfangene Fehlercode.

KeyExportCompleteFunct

void(* KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)

Art des Schlüsselexportprotokolls komplette Bearbeitungsfunktion.

Einzelheiten
Parameter
[in] sm
Ein Zeiger auf WeaveSecurityManager Objekt.
[in] con
Ein Zeiger auf WeaveConnection Objekt.
[in] reqState
Ein Zeiger auf den Status des Schlüsselexport-Anforderers.
[in] keyId
Exportierte Schlüssel-ID.
[in] exportedKey
Ein Zeiger auf den exportierten geheimen Schlüssel.
[in] exportedKeyLen
Ein Verweis auf die exportierte geheime Schlüssellänge.

KeyExportErrorFunct

void(* KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)

Art der Fehlerbehandlungsfunktion des Schlüsselexportprotokolls.

Einzelheiten
Parameter
[in] sm
Ein Zeiger auf WeaveSecurityManager Objekt.
[in] con
Ein Zeiger auf WeaveConnection Objekt.
[in] reqState
Ein Zeiger auf den Status des Schlüsselexport-Anforderers.
[in] localErr
Beim Schlüsselexportprotokoll ist der WEAVE_ERROR aufgetreten.
[in] statusReport
Ein Zeiger auf das StatusReport-Objekt, wenn der Fehlerstatus vom Peer empfangen wurde.

SessionErrorFunct

void(* SessionErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, uint64_t peerNodeId, StatusReport *statusReport)

SitzungEstablishedFunct

void(* SessionEstablishedFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType)

Zustand

 State

Öffentliche Attribute

CASEUseKnownECDHKey

bool CASEUseKnownECDHKey

ExchangeManager

WeaveExchangeManager * ExchangeManager

Stoffstatus

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 Rückruffunktion für Schlüsselfehler.

Diese Funktion wird aufgerufen, wenn eine Schlüsselfehlermeldung empfangen wird.

OnSessionError

SessionErrorFunct OnSessionError

OnSessionEstablished

SessionEstablishedFunct OnSessionEstablished

ResponderAllowedCASEConfigs

uint8_t ResponderAllowedCASEConfigs

ResponderAllowedCASECurves

uint8_t ResponderAllowedCASECurves

ResponderAllowedKeyExportConfigs

uint8_t ResponderAllowedKeyExportConfigs

SessionEstablishTimeout

uint32_t SessionEstablishTimeout

Zustand

uint8_t State

mCASEEngine

WeaveCASEEngine * mCASEEngine

mKeyExport

WeaveKeyExport * mKeyExport

mPASEEngine

WeavePASEEngine * mPASEEngine

mStartKeyExport_OnComplete

KeyExportCompleteFunct mStartKeyExport_OnComplete

Die vollständige Rückruffunktion des Schlüsselexportprotokolls.

Diese Funktion wird aufgerufen, wenn der Exportvorgang des geheimen Schlüssels abgeschlossen ist.

mStartKeyExport_OnError

KeyExportErrorFunct mStartKeyExport_OnError

Die Rückruffunktion für den Schlüsselexportprotokollfehler.

Diese Funktion wird aufgerufen, wenn beim Schlüsselexportprozess 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
)

Brechen Sie die Einrichtung einer laufenden Sitzung ab.

Einzelheiten
Parameter
[in] reqState
Ein Zeigerwert, der dem von der Anwendung beim Start der Sitzung bereitgestellten Wert entspricht.
Rückgabewerte
WEAVE_NO_ERROR
Wenn eine übereinstimmende Einrichtung einer laufenden Sitzung gefunden und abgebrochen wurde.
WEAVE_ERROR_INCORRECT_STATE
Wenn kein Sitzungsaufbau im Gange war oder die laufende Sitzung nicht mit dem angegebenen Anforderungsstatuszeiger übereinstimmte.

Drin

WEAVE_ERROR Init(
  WeaveExchangeManager & aExchangeMgr,
  System::Layer & aSystemLayer
)

IsKeyError

bool IsKeyError(
  WEAVE_ERROR err
)

Überprüft, ob der angegebene Weave-Fehlercode einer der wichtigsten Fehlercodes ist.

Diese Funktion wird aufgerufen, um zu bestimmen, ob eine Schlüsselfehlernachricht an den Initiator der Nachricht gesendet werden soll, die beim Decodieren keinen richtigen Schlüssel gefunden hat.

Einzelheiten
Parameter
[in] err
Ein Weave-Fehlercode.
Rückgabewerte
true
Wenn angegeben, ist der Weave-Fehlercode ein Schlüsselfehler.
false
Andernfalls.

OnEncryptedMsgRcvd

void OnEncryptedMsgRcvd(
  uint16_t sessionKeyId,
  uint64_t peerNodeId,
  uint8_t encType
)

ReleaseKey

void ReleaseKey(
  uint64_t peerNodeId,
  uint16_t keyId
)

Geben Sie eine Schlüsselreservierung für die Nachrichtenverschlüsselung frei.

Geben Sie eine Reservierung frei, die zuvor auf einem Nachrichtenverschlüsselungsschlüssel platziert wurde.

Für jede Reservierung einer bestimmten Taste platziert, die ReleaseKey () muss Verfahren nicht mehr als 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.

Einzelheiten
Parameter
[in] peerNodeId
Die Weave-Knoten-ID des Peers, mit dem der Schlüssel geteilt wurde.
[in] keyId
Die ID des Schlüssels, dessen Reservierung freigegeben werden soll.

ReserveKey

void ReserveKey(
  uint64_t peerNodeId,
  uint16_t keyId
)

Platzieren Sie eine Reservierung für einen Nachrichtenverschlüsselungsschlüssel.

Schlüsselreservierungen werden verwendet, um zu signalisieren, dass ein bestimmter Schlüssel aktiv verwendet wird und aufbewahrt werden sollte. Beachten Sie, dass das Platzieren einer Reservierung für einen Schlüssel nicht garantiert, dass der Schlüssel nicht durch eine explizite Aktion wie den Empfang einer KeyError-Nachricht entfernt wird.

Für jede Reservierung einer bestimmten Taste platziert, wird ein entsprechender Aufruf ReleaseKey () vorgenommen werden müssen.

Diese Methode akzeptiert jede Form von Schlüssel-ID, einschließlich None. Schlüssel-IDs, die keine tatsächlichen Schlüssel benennen, werden ignoriert.

Einzelheiten
Parameter
[in] peerNodeId
Die Weave-Knoten-ID des Peers, mit dem der Schlüssel geteilt wurde.
[in] keyId
Die ID des zu reservierenden Schlüssels.

SendKeyErrorMsg

WEAVE_ERROR SendKeyErrorMsg(
  WeaveMessageInfo *rcvdMsgInfo,
  const IPPacketInfo *rcvdMsgPacketInfo,
  WeaveConnection *con,
  WEAVE_ERROR keyErr
)

Schlüsselfehlermeldung senden.

Diese Funktion wird aufgerufen, wenn die Decodierung der empfangenen Weave-Nachricht aufgrund eines Schlüsselfehlers fehlschlägt.

Einzelheiten
Parameter
[in] rcvdMsgInfo
Ein Zeiger auf die Nachrichteninformationen für die empfangene Weave-Nachricht.
[in] rcvdMsgPacketInfo
Ein Zeiger auf das IPPacketInfo-Objekt der empfangenen Weave-Nachricht.
[in] con
Ein Zeiger auf das WeaveConnection Objekt.
[in] keyErr
Weave-Schlüssel-Fehlercode.
Rückgabewerte
WEAVE_ERROR_NO_MEMORY
Wenn für den neuen Austauschkontext oder den neuen Nachrichtenpuffer kein Speicher zugewiesen werden konnte.
WEAVE_ERROR_BUFFER_TOO_SMALL
Wenn der Puffer zu klein ist
WEAVE_NO_ERROR
Wenn die Methode erfolgreich war.

SetCASEAuthDelegate

void SetCASEAuthDelegate(
  WeaveCASEAuthDelegate *delegate
)

SetKeyExportDelegate

void SetKeyExportDelegate(
  WeaveKeyExportDelegate *delegate
)

SetTAKEAuthDelegate

void SetTAKEAuthDelegate(
  WeaveTAKEChallengerAuthDelegate *delegate
)

SetTAKETokenAuthDelegate

void SetTAKETokenAuthDelegate(
  WeaveTAKETokenAuthDelegate *delegate
)

Schließen

WEAVE_ERROR Shutdown(
  void
)

CASESession starten

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 aufzubauen oder eine vorhandene CASE-Sitzung zu finden.

Einzelheiten
Parameter
[in] con
Ein Zeiger auf das WeaveConnection Objekt.
[in] peerNodeId
Die Knoten-ID des Peers.
[in] peerAddr
Die IP-Adresse des Peer-Knotens.
[in] peerPort
Der Port des Peer-Knotens.
[in] requestedAuthMode
Das gewünschte Mittel, mit dem der Peer authentifiziert werden soll. Dies muss einer der CASE-Authentifizierungsmodi sein.
[in] reqState
Ein Zeiger auf den Anfordererstatus.
[in] onComplete
Ein Zeiger auf die Callback-Funktion, die aufgerufen wird, sobald die angeforderte sichere Sitzung eingerichtet ist.
[in] onError
Ein Zeiger auf die Callback-Funktion, die aufgerufen wird, wenn der angeforderte Sitzungsaufbau fehlschlägt.
[in] authDelegate
Ein Zeiger auf das CASE-Authentifizierungsdelegatenobjekt.
[in] terminatingNodeId
Die Knotenkennung des die Sitzung beendenden Knotens. Wenn sich diese Eingabe von kNodeIdNotSpecified unterscheidet, bedeutet dies, dass eine gemeinsame sichere Sitzung angefordert wurde.
Rückgabewerte
WEAVE_NO_ERROR
Auf Erfolg.

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
)

PASESitzung starten

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 aufzubauen.

Einzelheiten
Parameter
[in] con
Ein Zeiger auf das WeaveConnection Objekt.
[in] requestedAuthMode
Das gewünschte Mittel, mit dem der Peer authentifiziert werden soll. Dies muss einer der PASE-Authentifizierungsmodi sein.
[in] reqState
Ein Zeiger auf den Anfordererstatus.
[in] onComplete
Ein Zeiger auf die Callback-Funktion, die aufgerufen wird, sobald die angeforderte sichere Sitzung eingerichtet ist.
[in] onError
Ein Zeiger auf die Callback-Funktion, die aufgerufen wird, wenn der angeforderte Sitzungsaufbau fehlschlägt.
[in] pw
Ein Zeiger auf das geheime PASE-Passwort.
[in] pwLen
Länge des geheimen PASE-Passworts.
Rückgabewerte
WEAVE_NO_ERROR
Auf Erfolg.

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 aufzubauen.

Einzelheiten
Parameter
[in] con
Ein Zeiger auf das WeaveConnection Objekt.
[in] requestedAuthMode
Das gewünschte Mittel, mit dem der Peer authentifiziert werden soll. Dies muss einer der TAKE-Authentifizierungsmodi sein.
[in] reqState
Ein Zeiger auf den Anfordererstatus.
[in] onComplete
Ein Zeiger auf die Callback-Funktion, die aufgerufen wird, sobald die angeforderte sichere Sitzung eingerichtet ist.
[in] onError
Ein Zeiger auf die Callback-Funktion, die aufgerufen wird, wenn der angeforderte Sitzungsaufbau fehlschlägt.
[in] encryptAuthPhase
Ein boolesches Flag, das angibt, ob die Protokollauthentifizierungsphase verschlüsselt werden soll.
[in] encryptCommPhase
Ein boolesches Flag, das angibt, ob die Protokollkommunikationsphase verschlüsselt werden soll.
[in] timeLimitedIK
Ein boolesches Flag, das angibt, ob der Identifikationsschlüssel (IK) zeitbegrenzt ist.
[in] sendChallengerId
Ein boolesches Flag, das angibt, ob die Challenger-Identifikation in die Nachricht aufgenommen werden soll. Wenn er nicht enthalten ist, wird der Wert der Weave-Knoten-ID als Challenger-ID verwendet.
[in] authDelegate
Ein Zeiger auf das TAKE-Challenger-Authentifizierungsdelegatenobjekt.
Rückgabewerte
WEAVE_NO_ERROR
Auf Erfolg.

WeaveSecurityManager

 WeaveSecurityManager(
  void
)