【问题标题】:How can I secure user data stored remotely? End to end encryption from cloud storage to client?如何保护远程存储的用户数据?从云存储到客户端的端到端加密?
【发布时间】:2017-05-09 18:06:41
【问题描述】:

假设我有一个将用户资源存储在 amazon s3 中的应用程序。假设这些数据是敏感的。我在数据库中有一个表,其中包含资源行,每个行都包含资源的 url 和拥有它的 user_id。

如果我直接将url返回给用户,我如何保证 只有该用户才能从该会话中访问它?

A similar question 有一个使用过期网址的答案,尽管如果其他人在过期期限内也有该链接,他们也可以访问它。

有没有一种方法可以促进直接加密交换 客户端和云存储提供商之间的资源 存在吗?我希望能够向客户端传递到云的链接 资源并让只有他们当时能够在浏览器中解密它只有

【问题讨论】:

    标签: amazon-web-services encryption amazon-s3 cloud


    【解决方案1】:

    为什么不呢?

    如果您可以安全地将私有加密密钥传递给您的客户,或者您知道他的私有密钥的公钥,那么您始终可以在您的终端加密文件,然后用户的浏览器将在他的终端解密该文件。

    看看几个现成的 JavaScript 库:

    1. https://code.google.com/archive/p/crypto-js/
    2. http://www.fourmilab.ch/javascrypt/
    3. 另外,这里有一个巨大的列表:https://gist.github.com/jo/8619441

    如果您必须向不同的人授予访问权限(例如,今天给 User1,明天给 User2 和 User3),最好的方法不是每次都加密文件本身,而是加密一次,然后加密私钥以使用这些用户的密钥解密文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-29
      • 2014-05-04
      • 2018-07-08
      • 2016-10-20
      • 1970-01-01
      • 1970-01-01
      • 2016-03-21
      相关资源
      最近更新 更多