NLWeaveKeyExportClient

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

C++ के साथ मुख्य एक्सपोर्ट फ़ंक्शन को लागू करने के लिए रैपर, ताकि पिन को एन्क्रिप्ट (सुरक्षित) करने में मदद मिल सके.

खास जानकारी

इनहेरिटेंस

इससे इनहेरिट करता है: 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
उस डिवाइस का वीव नोड आईडी जिस पर अनुरोध भेजा जाएगा; या 0, अगर किसी खास डिवाइस आईडी की जानकारी नहीं है.
[in] accessToken
Weave TLV फ़ॉर्मैट में, Weave ऐक्सेस टोकन वाला बफ़र.
[out] errOut
आउटपुट में गड़बड़ी का पैरामीटर, जो गड़बड़ी होने पर सेट किया जाता है और errOut शून्य नहीं होता है.
लौटाए जाने वाले प्रॉडक्ट
बाइनरी बफ़र, जिसमें जनरेट किए गए कुंजी एक्सपोर्ट अनुरोध की जानकारी है. कोई गड़बड़ी होने पर, शून्य पर सेट करें.

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
उस डिवाइस का वीव नोड आईडी जिस पर अनुरोध भेजा जाएगा; या 0, अगर किसी खास डिवाइस आईडी की जानकारी नहीं है.
[in] clientCert
एक बफ़र, जिसमें Weave सर्टिफ़िकेट होता है. इस बफ़र की मदद से, अनुरोध करने वाले क्लाइंट की पहचान की जाती है. इस सर्टिफ़िकेट को Weave TLV फ़ॉर्मैट में एन्कोड किया जाना चाहिए.
[in] clientKey
एक बफ़र, जिसमें क्लाइंट सर्टिफ़िकेट से जुड़ी निजी कुंजी होती है. निजी पासकोड को Weave TLV फ़ॉर्मैट में एन्कोड किया जाना चाहिए.
[out] errOut
आउटपुट में गड़बड़ी का पैरामीटर, जो गड़बड़ी होने पर सेट किया जाता है और errOut शून्य नहीं होता है.
लौटाए जाने वाले प्रॉडक्ट
बाइनरी बफ़र, जिसमें एक्सपोर्ट किए गए पासकोड को एक्सपोर्ट करने का अनुरोध किया गया है. कोई गड़बड़ी होने पर, कोई वैल्यू नहीं पर सेट करें.

Init

virtual instancetype init()

NLWeaveKeyExportClient ऑब्जेक्ट को शुरू करता है.

इंस्टेंस बनाता है और मुख्य एक्सपोर्ट फ़ंक्शन के लिए, इंटरनल C++ ऑब्जेक्ट के इंस्टेंस को शुरू करता है.

processKeyExportReconfigure: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
उस डिवाइस का वीव नोड आईडी जिस पर अनुरोध भेजा गया था; या 0, अगर किसी खास डिवाइस आईडी की जानकारी नहीं है.
[in] exportResp
एक बफ़र, जिसमें Weave पासकोड को एक्सपोर्ट करने के लिए रिस्पॉन्स दिया जाता है, जैसा कि डिवाइस से मिलता है.
[out] errOut
आउटपुट में गड़बड़ी का पैरामीटर, जो गड़बड़ी होने पर सेट किया जाता है और errOut शून्य नहीं होता है.
लौटाए जाने वाले प्रॉडक्ट
बाइनरी बफ़र में एक्सपोर्ट की गई कुंजी है. कोई गड़बड़ी होने पर, कोई वैल्यू नहीं पर सेट करें.

रीसेट करें

virtual void reset()

मुख्य एक्सपोर्ट क्लाइंट ऑब्जेक्ट को रीसेट करें. साथ ही, मुख्य एक्सपोर्ट के जिस अनुरोध को मंज़ूरी नहीं मिली है उससे जुड़ी किसी भी स्थिति को खारिज कर दें.

setAllowNestDevelopermentडिवाइस सेट करें:

virtual void setAllowNestDevelopmentDevices:(
  BOOL nestDev
)

Nest डेवलपमेंट डिवाइसों से, एक्सपोर्ट किए गए मुख्य डेटा को अनुमति दें या अनुमति न दें.

setAllowSHA1DeviceCertificates:

virtual void setAllowSHA1DeviceCertificates:(
  BOOL nestDev
)

SHA1 सर्टिफ़िकेट वाले डिवाइसों से, एक्सपोर्ट किए गए मुख्य डेटा को एक्सपोर्ट करने की अनुमति दें या अनुमति न दें.