是否有更快速和推荐的方法来组合加密tar和加密tar的加密对称密钥?

时间:2016-06-08 10:18:02

标签: bash encryption cryptography sh busybox

我们正在使用基于Beaglebone black(AM335x)的定制板。要升级主板的固件,我们将使用加密的固件映像。

正如您已经猜到的那样,我们将使用对称加密来加密大型固件文件(fimware.tar),然后使用非对称密钥加密对称密钥。因此,我们有两个文件可供用户升级他的电路板。

我们不想这样做;我们只想给每个用户一个文件。因此,我们必须以某种方式将加密的固件映像和加密的对称密钥组合在一起。

我想到了两个策略。使用bash脚本加密固件。

  1. Tar加密的固件和加密的对称密钥。
    • 问题:这很慢。
  2. 将加密的对称密钥附加到加密的tar文件。
    • 问题:这不是一种干净的方法吗,是吗?
  3. 有没有更好(更快)的方法来解决这个问题?

1 个答案:

答案 0 :(得分:2)

有几种方法可以做到这一点:

  1. 使用众所周知的容器格式,例如OpenPGP或CMS;
  2. 选择一种不太知名/标准化的格式,恰好符合您的要求;
  3. 定义您自己的容器格式。
  4. 选项1当然应该是首选,因为这可能是最安全的选择。这也意味着您可以使用标准库。

    选项2要求您进行研究,以确定该选项是否符合您的需求并且是安全的。

    如果代码和格式大小优化是首要考虑因素,那么选项3将是一个不错的选择。

    对于选项3,您可以例如使用版本/格式说明符(1个字节),然后是包装的密钥(以长度为前缀),然后是固件(包装密钥之后的任何内容)。