WeaveKeyExportClient

public final class WeaveKeyExportClient extends Object

实现了 Weave 密钥导出协议的客户端部分,用于独立(非 Weave 消息传递)上下文。

公共构造函数摘要

公共方法摘要

布尔值
allowNestDevelopmentDevices()
如果允许从 Nest 开发设备导出密钥响应,则为 true。
布尔值
allowSHA1DeviceCertificates()
如果允许来自具有 SHA1 证书的设备的密钥导出响应,则为 True。
void
byte[]
generateKeyExportRequest(int keyId, long responderNodeId, byte[] accessToken)
根据访问令牌生成密钥导出请求。
byte[]
generateKeyExportRequest(int keyId, long responderNodeId, byte[] clientCert, byte[] clientKey)
根据客户端证书和私钥生成密钥导出请求。
void
processKeyExportReconfigure(byte[] reconfig)
处理收到的响应中包含的重新配置消息,该响应是针对之前生成的密钥导出请求而发送的。
byte[]
processKeyExportResponse(long responderNodeId, byte[] exportResp)
处理对之前生成的密钥导出请求的响应。
void
reset()
重置密钥导出客户端对象,舍弃与待处理密钥导出请求关联的任何状态。
void
setAllowNestDevelopmentDevices(boolean val)
允许或禁止从 Nest 开发设备导出密钥响应。
void
setAllowSHA1DeviceCertificates(boolean val)
允许或禁止来自具有 SHA1 证书的设备的密钥导出响应。

继承的方法摘要

公共构造函数

public WeaveKeyExportClient ()

公共方法

public boolean allowNestDevelopmentDevices ()

如果允许来自 Nest 开发设备的密钥导出响应,则为 true。

public boolean allowSHA1DeviceCertificates ()

如果允许来自具有 SHA1 证书的设备的密钥导出响应,则为 True。

public void finalize ()

抛出
可投掷

public byte[] generateKeyExportRequest (int keyId, long responderNodeId, byte[] accessToken)

根据访问令牌生成密钥导出请求。

参数
keyId 要导出的密钥的 Weave 密钥 ID。
responderNodeId 要将请求转发到的设备的 Weave 节点 ID;如果特定设备 ID 未知,则为 0。
accessToken 包含 Weave 访问令牌的缓冲区,采用 Weave TLV 格式。
返回
  • 包含生成的密钥导出请求的字节数组。

public byte[] generateKeyExportRequest (int keyId, long responderNodeId, byte[] clientCert, byte[] clientKey)

根据客户端证书和私钥生成密钥导出请求。

参数
keyId 要导出的密钥的 Weave 密钥 ID。
responderNodeId 要将请求转发到的设备的 Weave 节点 ID;如果特定设备 ID 未知,则为 0。
clientCert 包含 Weave 证书的缓冲区,用于标识发出请求的客户端。证书应采用 Weave TLV 格式进行编码。
clientKey 包含与客户端证书关联的私钥的缓冲区。私钥应采用 Weave TLV 格式进行编码。
返回
  • 包含生成的密钥导出请求的字节数组。

public void processKeyExportReconfigure (byte[] reconfig)

处理收到的重新配置消息,该消息是对之前生成的密钥导出请求的响应。

参数
重新配置 包含由设备返回的 Weave 密钥导出重新配置消息的缓冲区。

public byte[] processKeyExportResponse (long responderNodeId, byte[] exportResp)

处理对之前生成的密钥导出请求的响应。

参数
responderNodeId 相应请求转发到的设备的 Weave 节点 ID;如果特定设备 ID 未知,则为 0。
exportResp 包含设备返回的 Weave 密钥导出响应的缓冲区。
返回
  • 包含导出密钥的字节数组。

public void reset ()

重置密钥导出客户端对象,舍弃与待处理密钥导出请求关联的任何状态。

public void setAllowNestDevelopmentDevices (boolean val)

允许或禁止从 Nest 开发设备导出密钥响应。

参数
val

public void setAllowSHA1DeviceCertificates (boolean val)

允许或禁止来自具有 SHA1 证书的设备的密钥导出响应。

参数
val