NLWeaveKeyExportClient

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

Wrapper สำหรับการใช้ฟังก์ชันการส่งออกคีย์ของ C++ เพื่อรองรับการเข้ารหัส PIN

สรุป

การสืบทอด

รับค่าจาก: NSObject

ฟังก์ชันสาธารณะ

allowNestDevelopmentDevices()
virtual BOOL
เป็นจริงหากการตอบกลับการส่งออกคีย์จากอุปกรณ์การพัฒนา Nest จะได้รับอนุญาต
allowSHA1DeviceCertificates()
virtual BOOL
เป็นจริงหากการตอบกลับการส่งออกคีย์จากอุปกรณ์ที่มีใบรับรอง SHA1 จะได้รับอนุญาต
generateKeyExportRequest:responderNodeId:accessToken:error:(UInt32 keyId, UInt64 responderNodeId, NSData *accessToken, NSError **errOut)
virtual nullable NSData *
สร้างคำขอส่งออกคีย์พร้อมโทเค็นเพื่อการเข้าถึง
generateKeyExportRequest:responderNodeId:clientCert:clientKey:error:(UInt32 keyId, UInt64 responderNodeId, NSData *clientCert, NSData *clientKey, NSError **errOut)
virtual nullable NSData *
สร้างคำขอส่งออกคีย์พร้อมใบรับรองไคลเอ็นต์และคีย์ส่วนตัว
init()
virtual instancetype
เริ่มต้นออบเจ็กต์ NLWeaveKeyExportClient
processKeyExportReconfigure:error:(NSData *reconfig, NSError **errOut)
virtual BOOL
ประมวลผลข้อความการกำหนดค่าใหม่ที่ได้รับตามคำขอส่งออกคีย์ที่สร้างไว้ก่อนหน้านี้
processKeyExportResponse:exportResp:error:(UInt64 responderNodeId, NSData *exportResp, NSError **errOut)
virtual nullable NSData *
ประมวลผลการตอบกลับคำขอส่งออกคีย์ที่สร้างไว้ก่อนหน้านี้
reset()
virtual void
รีเซ็ตออบเจ็กต์ไคลเอ็นต์การส่งออกคีย์ โดยทิ้งสถานะที่เชื่อมโยงกับคำขอส่งออกคีย์ที่รอดำเนินการ
setAllowNestDevelopmentDevices:(BOOL nestDev)
virtual void
อนุญาตหรือไม่อนุญาตการตอบกลับคีย์ที่ส่งออกจากอุปกรณ์การพัฒนา Nest
setAllowSHA1DeviceCertificates:(BOOL nestDev)
virtual void
อนุญาตหรือไม่อนุญาตการตอบกลับคีย์ที่ส่งออกจากอุปกรณ์ที่มีใบรับรอง SHA1

ฟังก์ชันสาธารณะ

allowNestDevelopmentDevices

virtual BOOL allowNestDevelopmentDevices()

เป็นจริงหากการตอบกลับการส่งออกคีย์จากอุปกรณ์การพัฒนา Nest จะได้รับอนุญาต

allowSHA1DeviceCertificates

virtual BOOL allowSHA1DeviceCertificates()

เป็นจริงหากการตอบกลับการส่งออกคีย์จากอุปกรณ์ที่มีใบรับรอง SHA1 จะได้รับอนุญาต

generateKeyExportRequest:responderNodeId:accessToken:error:

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

สร้างคำขอส่งออกคีย์พร้อมโทเค็นเพื่อการเข้าถึง

รายละเอียด
พารามิเตอร์
[in] keyId
รหัสคีย์ Weave ของคีย์ที่จะส่งออก
[in] responderNodeId
รหัสโหนด Weave ของอุปกรณ์ที่จะส่งต่อคำขอ หรือ 0 หากไม่ทราบรหัสอุปกรณ์ที่เฉพาะเจาะจง
[in] accessToken
บัฟเฟอร์ที่มีโทเค็นเพื่อการเข้าถึงของ Weave ในรูปแบบ TLV ของ Weave
[out] errOut
พารามิเตอร์ข้อผิดพลาดของเอาต์พุต ซึ่งตั้งค่าในกรณีที่เกิดข้อผิดพลาดและ errOut เป็นค่าว่าง
การส่งคืน
บัฟเฟอร์ไบนารีที่มีคำขอส่งออกคีย์ที่สร้างขึ้น ตั้งค่าเป็น "nil" หากเกิดข้อผิดพลาด

generateKeyExportRequest:responderNodeId:clientCert:clientKey:error:

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

สร้างคำขอส่งออกคีย์พร้อมใบรับรองไคลเอ็นต์และคีย์ส่วนตัว

รายละเอียด
พารามิเตอร์
[in] keyId
รหัสคีย์ Weave ของคีย์ที่จะส่งออก
[in] responderNodeId
รหัสโหนด Weave ของอุปกรณ์ที่จะส่งต่อคำขอ หรือ 0 หากไม่ทราบรหัสอุปกรณ์ที่เฉพาะเจาะจง
[in] clientCert
บัฟเฟอร์ที่มีใบรับรอง Weave ที่ระบุไคลเอ็นต์ซึ่งส่งคำขอ ใบรับรองต้องได้รับการเข้ารหัสในรูปแบบ Weave TLV
[in] clientKey
บัฟเฟอร์ที่มีคีย์ส่วนตัวที่เชื่อมโยงกับใบรับรองไคลเอ็นต์ คีย์ส่วนตัวจะได้รับการเข้ารหัสในรูปแบบ Weave TLV
[out] errOut
พารามิเตอร์ข้อผิดพลาดของเอาต์พุต ซึ่งตั้งค่าในกรณีที่เกิดข้อผิดพลาดและ errOut เป็นค่าว่าง
การส่งคืน
บัฟเฟอร์ไบนารีที่มีคำขอส่งออกคีย์ที่สร้างขึ้น ตั้งค่าเป็น "nil" หากเกิดข้อผิดพลาด

init

virtual instancetype init()

เริ่มต้นออบเจ็กต์ NLWeaveKeyExportClient

สร้างอินสแตนซ์และเริ่มต้นอินสแตนซ์ของออบเจ็กต์ C++ ภายในสำหรับการดำเนินการฟังก์ชันการส่งออกคีย์

programKeyExportReconfigure:error:

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

ประมวลผลข้อความการกำหนดค่าใหม่ที่ได้รับตามคำขอส่งออกคีย์ที่สร้างไว้ก่อนหน้านี้

รายละเอียด
พารามิเตอร์
[in] reconfig
บัฟเฟอร์ที่มีข้อความการส่งออกคีย์ Weave ให้กำหนดค่าใหม่ตามที่อุปกรณ์ส่งคืน
[out] errOut
พารามิเตอร์ข้อผิดพลาดของเอาต์พุต ซึ่งตั้งค่าในกรณีที่เกิดข้อผิดพลาดและ errOut เป็นค่าว่าง
การส่งคืน
จริงสำหรับความสำเร็จ เท็จเมื่อล้มเหลว

processKeyExportResponse:exportResp:error:

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

ประมวลผลการตอบกลับคำขอส่งออกคีย์ที่สร้างไว้ก่อนหน้านี้

รายละเอียด
พารามิเตอร์
[in] responderNodeId
รหัสโหนด Weave ของอุปกรณ์ที่ส่งต่อคำขอไป หรือ 0 หากไม่ทราบรหัสอุปกรณ์ที่เฉพาะเจาะจง
[in] exportResp
บัฟเฟอร์ที่มีการตอบกลับการส่งออกคีย์ Weave ตามที่อุปกรณ์ส่งกลับมา
[out] errOut
พารามิเตอร์ข้อผิดพลาดของเอาต์พุต ซึ่งตั้งค่าในกรณีที่เกิดข้อผิดพลาดและ errOut เป็นค่าว่าง
การส่งคืน
บัฟเฟอร์ไบนารีที่มีคีย์ที่ส่งออก ตั้งค่าเป็น "nil" หากเกิดข้อผิดพลาด

ตั้งค่าใหม่

virtual void reset()

รีเซ็ตออบเจ็กต์ไคลเอ็นต์การส่งออกคีย์ โดยทิ้งสถานะที่เชื่อมโยงกับคำขอส่งออกคีย์ที่รอดำเนินการ

setAllowNestDevelopmentProducts:

virtual void setAllowNestDevelopmentDevices:(
  BOOL nestDev
)

อนุญาตหรือไม่อนุญาตการตอบกลับคีย์ที่ส่งออกจากอุปกรณ์การพัฒนา Nest

setAllowSHA1DeviceCertificates:

virtual void setAllowSHA1DeviceCertificates:(
  BOOL nestDev
)

อนุญาตหรือไม่อนุญาตการตอบกลับคีย์ที่ส่งออกจากอุปกรณ์ที่มีใบรับรอง SHA1