0

我对与谷歌云物联网核心相关的认证感到困惑。在注册表级别使用哪个 CA 证书以及如何生成它。以及用于使用 mqtt 桥在设备和云 iot 核心之间进行通信的“roots.pem”证书,我从这个链接“https://pki.google.com/roots.pem”获得。它与与注册表级别证书相关联的证书不同吗?

我尝试添加roots.pem 证书,但它会引发文件太大的错误。我还添加了公钥,用于使用已成功添加的公钥/私钥对验证设备。但我对使用哪一个、在哪里使用以及如何生成一个感到困惑。

如何使用注册表级别 ca 证书验证设备以提高安全性?

我正在使用以下命令,

获取roots.pem证书'https://pki.google.com/roots.pem'

用于获取公钥/私钥对

openssl req -x509 -nodes -newkey rsa:2048 -keyout rsa_private.pem -days 1000000 -out rsa_cert.pem -subj "/CN=unused"
4

2 回答 2

0

我希望我能帮助回答你的问题。突然出现的一件事是您对 Google 的 root.pem 的使用。我不确定该文件是什么,但我不需要它来验证我的 GCP IoT 客户端。我使用与您的几乎相同的 openssl 命令(我只是没有使用“-days:”参数,但也许我应该使用!),然后在设备的 GCP Console 网页上使用“添加公钥”手动复制/粘贴生成的公钥文件的内容即:“rsa_cert.pem”)。最后,我在我的代码中使用生成的私钥文件(即:“rsa_private.pem”)来签署 JWT。

这有帮助吗?我不是“专家”,但几个月来我一直在经常使用这些东西。

-C

于 2019-04-25T16:45:45.693 回答
0

我个人使用python连接我的设备,代码行如下所示:

self.Mqttclient = self.get_client(
        self.projectId, cloud_region, self.registryId, self.deviceId,
        self.credential, algorithm, root_certificate,
        mqtt_hostname, mqtt_port)

所以是的,我完全像您一样创建了 root.pem,并使用 python 脚本创建了公共和私有文件,这基本上与您在命令行中使用 openssl 所做的事情相同。

您可以在此处查看有关证书的更多信息。

于 2019-05-02T17:12:04.700 回答