This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3220SF:安全功能||公钥和私钥

Guru**** 2535750 points
Other Parts Discussed in Thread: CC3220SF, UNIFLASH

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1072781/cc3220sf-security-feature-public-and-private-keys

部件号:CC3220SF
《线程: UNIFLASH》中讨论的其他部件

您好 TI 团队,

我正在使用 CC3220SF 部件 , 希望获得有关用于安全的公钥和私钥的信息,并上传和下载 WiFi 数据。 事实上,我对这一点比较陌生,所以我对数据表中的信息感到困惑。

我有两个问题:

1.这些芯片组是否附带内置的公钥或私钥? 在这一点上,一些简短的信息将是很好的。

2.我们可以使用一些 API 读取这些密钥吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,阿比什黑克,

    公共 密钥加密法并不像您所认为的那么简单。 首先,您应该了解自己的用例。 您是否正在尝试建立 TLS 服务器或连接到 WPA-企业网络?  

    随后,请阅读我们的一些文档。 我们有一些与生成证书及其使用方式有关的文档。 您可以在此处找到许多问题: https://ti.com/lit/swpu332

    另请参阅 NWP 指南,因为其他问题将在此处得到解答。  

    阅读 SimpleLink Academy,您将找到许多与设备安全功能相关的文档和指南:  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好,萨贝

    从文档中看,这种公共密钥和私有密钥对似乎是我们闪存的东西。 我的理解是否正确? 如果是这样,那么所有用同一个映像闪存的设备都将有相同 的公钥和私钥对,对吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的,你的理解是正确的。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    CC3220SF 芯片是否没有内置的私钥和公钥? 我的意思是要问的是,工厂生产时,他们没有嵌入唯一密钥? 唯一的写键的方法是我们使用 uniflash 刷新图像?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    对于一般用途的加密操作,您可以在设备本身上创建公用-专用密钥。 有关更多信息,请参见 NWP 指南的第17.1节。  

    对于企业连接,必须通过 uniflash 将它们绑定。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我还有一个问题。

    如果我刷新证书,但随后对不包含该证书的软件包执行 OTA 更新,会发生什么情况? 证书是否会保留在内存中并可供我们访问?

    我们正在考虑使用“TLS/SSL 客户端”证书。 但在我们的应用中,我们有多台设备。 因此,如果我们为每个设备刷新单个证书,OTA 更新是否也应包含相同的证书? 请建议我们如何管理这一问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    如果您执行的 OTA 更新不包含更新的证书,则将保持以前的证书(例如在生产过程中编程的证书)。 sFlash 文件系统中的任何其他文件也是如此。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我们希望将证书保留在设备中以备将来使用,而不是现在使用。 我们仍然可以使用 http (不安全协议)权限,即设备中的证书?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    是的,当然。 这只是你的选择。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Jan,

    我们能否绕过服务器身份验证并仅使用客户端身份验证?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    我不是 OTA 代码的专家,但请阅读 第4.1.1章中的 swra510

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我不是在询问 OTA,而是在服务器和设备之间进行正常数据交换。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    https://www.ti.com/lit/ug/swpu332a/swpu332a.pdf?ts=1643124591839&ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FCC3220S

    在这里,您可以看到第一个服务器身份验证就在那里,然后客户端身份验证就完成了。 客户端身份验证也被称为可选。
    目前,我们既不使用客户端身份验证,也不使用服务器身份验证。 因此,我想知道我是否只想使用客户端身份验证(而不是使用服务器身份验证),我可以这样做吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    这取决于您的服务器配置是否要验证客户端。 您在服务器内部有公钥(证书),客户端 CC3220有自己的私钥。 使用公钥可以由服务器确定客户端是否具有正确的私钥。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Jan,

    我想你的回答还没有回答我的问题。

    让我再问一次。 我是否可以在不使用服务器身份验证的情况下仅使用客户端身份验证? 请参阅下面修改的图表。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    我认为您的问题与 CC32xx 设备无关,而是 TLS/SSL 的工作原理。 在这方面,我不是专家。 我认为需要始终向客户端发送服务器证书。 我认为这是 TLS 规范的一部分。 如果要验证此证书,则由客户决定(在您的案例中为 CC32xx)。 例如,对于 CC32xx 设备,如果 CC32xx 无法从 SL_Connect() API 验证服务器,则会返回错误代码 SL_ERROR_BSD_ESECSNOVERIFY。 客户端身份验证由您的服务器决定。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Jan,

    我现在使用以下序列,在这种情况下,我们似乎没有在正常数据获取或 POST 操作期间使用服务器身份验证。 请考虑这种情况下文件系统中已有服务器证书。

    HttpClient_extSecParams httpClientSecParams;

    httpClientSecParams.RootCA = NULL;//"ca.der";
    httpClientSecParams.clientCert =空;
    httpClientSecParams.privateKey =空;

    RET = HttpClient_connect (httClientHandle, hostname,&httClientSecParams,0);

    我只是想知道如果我们只尝试使用客户端证书会发生什么情况。 SDK 将如何运作(httpconnect 是否起作用)? 我无法在我的末尾进行检查,因为我现在或很快就没有客户端证书,这就是为什么我在这里要求 SDK 的行为。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    您希望客户机身份验证在没有私钥的情况下如何工作? 您需要在设备内部设置可通过身份验证的机密。 这不是关于 CC32xx 设备本身,而是关于非对称加密如何工作的基本原则。

    客户证书有什么问题? 为什么不使用自我签名证书进行测试?

    1月