通过 OTA 更新启用功能

问题描述 投票:0回答:1

我们制造物联网设备并通过 OTA 更新使其保持最新状态。如果设备已准备好更新,它将收到一个预签名 URL,用于下载最新软件。我们最近实施了一项功能,将为付费客户启用。为了为这些客户启用此功能,我考虑将其包含在设备获取预签名 URL 时接收的 JSON 有效负载中。像这样的东西:

{
    “presignedUrl”: “https://some-presigned-url”,
    “config”: {
        “enableFeatureA”: true
    }
}

设备会将此值存储在 config.json 文件中,该文件将存储在受密码保护的文件夹中。这是我第一次考虑这种情况,所以我想知道这是否是实现这一目标的可接受的方法?虽然 JSON 有效负载通过 HTTPS 安全传输,但以纯文本方式传输此

“config”: {“enableFeatureA”: true}
似乎有点暴露;这应该被混淆吗?还有另一种更优选的方式来实现我正在做的事情吗?

architecture software-distribution
1个回答
-1
投票

总体而言,您的方法似乎合理,但必须考虑额外的安全措施来保护敏感数据并确保物联网设备的完整性。定期检查和更新您的安全实践,以解决新的威胁和漏洞。

HTTPS 传输:通过 HTTPS 传输 JSON 负载可确保数据在传输过程中加密,从而提供一定程度的安全性。只要您正确使用 HTTPS 并遵循保护通信通道的最佳实践,这方面应该没问题。 有效负载内容t:在 JSON 有效负载中包含功能标志或配置设置是常见做法。但是,您应该确保此负载中不包含敏感信息。通常可以包含“enableFeatureA”等功能标志,因为它们不会泄露敏感数据,但请避免包含 API 密钥、密码或其他机密信息等内容。 设备上的数据安全:将配置存储在受密码保护的文件夹中是一个很好的做法,但您还应该确保配置文件本身已加密或混淆。加密文件增加了额外的安全层,尤其是在设备受到威胁的情况下。混淆可以使攻击者更难理解文件的内容,但它不如加密那么安全。 安全存储:考虑使用操作系统或平台提供的安全存储机制。许多物联网平台提供安全存储解决方案来存储配置设置等敏感数据。利用这些机制可以增强应用程序的安全性。 运行时验证:设备读取配置文件时,进行运行时验证,确保配置有效且未被篡改。这可能包括检查意外值或关键设置的更改。 远程配置更新:考虑实施一种远程更新设备上配置设置的机制。这允许您更改功能标志或其他设置,而无需更新固件。但是,请确保此机制是安全的并经过身份验证,以防止未经授权的更改。

© www.soinside.com 2019 - 2024. All rights reserved.