NLWeaveKeyExportClient

#include <src/device-manager/cocoa/NLWeaveKeyExportClient.h>

Wrapper für die C++-Implementierung der Schlüsselexportfunktion zur Unterstützung der PIN-Verschlüsselung.

Zusammenfassung

Übernahme

Übernimmt von : NSObject

Öffentliche Funktionen

allowNestDevelopmentDevices()
virtual BOOL
„True“, wenn Schlüsselexportantworten von Nest-Entwicklungsgeräten zulässig sind.
allowSHA1DeviceCertificates()
virtual BOOL
„True“, wenn Antworten für Schlüsselexporte von Geräten mit SHA1-Zertifikaten zulässig sind.
generateKeyExportRequest:responderNodeId:accessToken:error:(UInt32 keyId, UInt64 responderNodeId, NSData *accessToken, NSError **errOut)
virtual nullable NSData *
Generiert eine Schlüsselexportanfrage mit einem Zugriffstoken.
generateKeyExportRequest:responderNodeId:clientCert:clientKey:error:(UInt32 keyId, UInt64 responderNodeId, NSData *clientCert, NSData *clientKey, NSError **errOut)
virtual nullable NSData *
Generiert eine Schlüsselexportanfrage mit einem Clientzertifikat und einem privaten Schlüssel.
init()
virtual instancetype
Initialisiert das Objekt NLWeaveKeyExportClient.
processKeyExportReconfigure:error:(NSData *reconfig, NSError **errOut)
virtual BOOL
Verarbeitet eine Nachricht zur Neukonfiguration, die als Antwort auf eine zuvor generierte Schlüsselexportanfrage empfangen wurde.
processKeyExportResponse:exportResp:error:(UInt64 responderNodeId, NSData *exportResp, NSError **errOut)
virtual nullable NSData *
Verarbeiten Sie die Antwort auf eine zuvor generierte Schlüsselexportanfrage.
reset()
virtual void
Setzen Sie das Client-Objekt für den Schlüsselexport zurück. Dabei werden alle Status, die mit einer ausstehenden Schlüsselexportanfrage verknüpft sind, verworfen.
setAllowNestDevelopmentDevices:(BOOL nestDev)
virtual void
Sie können Antworten für den Schlüsselexport von Nest-Entwicklungsgeräten zulassen oder nicht zulassen.
setAllowSHA1DeviceCertificates:(BOOL nestDev)
virtual void
Sie können den Export von Schlüsselantworten von Geräten mit SHA1-Zertifikaten zulassen oder nicht zulassen.

Öffentliche Funktionen

allowNestDevelopmentDevices

virtual BOOL allowNestDevelopmentDevices()

„True“, wenn Schlüsselexportantworten von Nest-Entwicklungsgeräten zulässig sind.

allowSHA1DeviceCertificates

virtual BOOL allowSHA1DeviceCertificates()

„True“, wenn Antworten für Schlüsselexporte von Geräten mit SHA1-Zertifikaten zulässig sind.

generateKeyExportRequest:responderNodeId:accessToken:error:

virtual nullable NSData * generateKeyExportRequest:responderNodeId:accessToken:error:(
  UInt32 keyId,
  UInt64 responderNodeId,
  NSData *accessToken,
  NSError **errOut
)

Generiert eine Schlüsselexportanfrage mit einem Zugriffstoken.

Details
Parameter
[in] keyId
Die Weave-Schlüssel-ID des zu exportierenden Schlüssels.
[in] responderNodeId
Weave-Knoten-ID des Geräts, an das die Anfrage weitergeleitet wird; oder 0, wenn die jeweilige Geräte-ID unbekannt ist
[in] accessToken
Ein Puffer mit einem Weave-Zugriffstoken im Weave TLV-Format.
[out] errOut
Ausgabefehlerparameter, der festgelegt wird, wenn ein Fehler auftritt und errOut nicht null ist.
Rückgabe
Binärzwischenspeicher, der die generierte Schlüsselexportanfrage enthält. Legen Sie „nil“ fest, wenn ein Fehler auftritt.

generateKeyExportRequest:responderNodeId:clientCert:clientKey:error:

virtual nullable NSData * generateKeyExportRequest:responderNodeId:clientCert:clientKey:error:(
  UInt32 keyId,
  UInt64 responderNodeId,
  NSData *clientCert,
  NSData *clientKey,
  NSError **errOut
)

Generiert eine Schlüsselexportanfrage mit einem Clientzertifikat und einem privaten Schlüssel.

Details
Parameter
[in] keyId
Die Weave-Schlüssel-ID des zu exportierenden Schlüssels.
[in] responderNodeId
Weave-Knoten-ID des Geräts, an das die Anfrage weitergeleitet wird; oder 0, wenn die jeweilige Geräte-ID unbekannt ist
[in] clientCert
Ein Puffer mit einem Weave-Zertifikat, das den Client identifiziert, der die Anfrage stellt. Das Zertifikat muss im Weave-TLV-Format codiert sein.
[in] clientKey
Ein Zwischenspeicher mit dem privaten Schlüssel, der dem Clientzertifikat zugeordnet ist. Der private Schlüssel muss im Weave TLV-Format codiert sein.
[out] errOut
Ausgabefehlerparameter, der festgelegt wird, wenn ein Fehler auftritt und errOut nicht null ist.
Rückgabe
Binärzwischenspeicher, der die generierte Schlüsselexportanfrage enthält. Legen Sie „nil“ fest, wenn ein Fehler auftritt.

init

virtual instancetype init()

Initialisiert das Objekt NLWeaveKeyExportClient.

Erstellt eine Instanz und initialisiert die Instanz des internen C++-Objekts zum Ausführen der Schlüsselexportfunktion.

processKeyExportReconfigure:error:

virtual BOOL processKeyExportReconfigure:error:(
  NSData *reconfig,
  NSError **errOut
)

Verarbeitet eine Nachricht zur Neukonfiguration, die als Antwort auf eine zuvor generierte Schlüsselexportanfrage empfangen wurde.

Details
Parameter
[in] reconfig
Ein Puffer mit einer vom Gerät zurückgegebenen Nachricht zur Neukonfiguration des Weave-Schlüsselexports.
[out] errOut
Ausgabefehlerparameter, der festgelegt wird, wenn ein Fehler auftritt und errOut nicht null ist.
Rückgabe
„True“ bei Erfolg, „False“ bei Fehler.

processKeyExportResponse:exportResp:error:

virtual nullable NSData * processKeyExportResponse:exportResp:error:(
  UInt64 responderNodeId,
  NSData *exportResp,
  NSError **errOut
)

Verarbeiten Sie die Antwort auf eine zuvor generierte Schlüsselexportanfrage.

Details
Parameter
[in] responderNodeId
Die Weave-Knoten-ID des Geräts, an das die Anfrage weitergeleitet wurde; oder 0, wenn die jeweilige Geräte-ID unbekannt ist.
[in] exportResp
Ein Puffer mit einer Weave-Schlüsselexportantwort, die vom Gerät zurückgegeben wird.
[out] errOut
Ausgabefehlerparameter, der festgelegt wird, wenn ein Fehler auftritt und errOut nicht null ist.
Rückgabe
Binärzwischenspeicher, der den exportierten Schlüssel enthält. Legen Sie „nil“ fest, wenn ein Fehler auftritt.

Zurücksetzen

virtual void reset()

Setzen Sie das Client-Objekt für den Schlüsselexport zurück. Dabei werden alle Status, die mit einer ausstehenden Schlüsselexportanfrage verknüpft sind, verworfen.

setAllowNestDevelopmentGeräte:

virtual void setAllowNestDevelopmentDevices:(
  BOOL nestDev
)

Sie können Antworten für den Schlüsselexport von Nest-Entwicklungsgeräten zulassen oder nicht zulassen.

setAllowSHA1DeviceCertificates eingeben:

virtual void setAllowSHA1DeviceCertificates:(
  BOOL nestDev
)

Sie können den Export von Schlüsselantworten von Geräten mit SHA1-Zertifikaten zulassen oder nicht zulassen.