是否有一个 python 库支持(对称)数据加密并可以使用多个解密 key 。
我有(敏感的)用户数据必须加密存储在数据库中,但多个第 3 方必须能够访问数据而无需向他们提供相同的 secret 。
这可以通过生成随 secret 钥K来实现,加密原始数据D得到D_K。然后我根据需要使用尽可能多的访问 key (ak_1 到 ak_n)加密 K,存储它们供以后使用并销毁 K。每当第 3 方尝试访问 D 时,提交 ak_i,我用它来解密 K,然后我们用它来解密 D_K得到D.
但是,如果有一个实现会很好,因为 a) 我不喜欢重新发明轮子,b) 这是安全的,你可能不会 100% 正确。
最佳答案
由于围绕硬加密的导出控制的困惑和问题,没有很多第 3 方库直接提供这种更高级别的显式加密方案。
在大多数情况下,您将不得不包装类似于 PyCrypto 的工具集。用你自己的关键逻辑。鉴于我们正在谈论的是加密货币,但是,如果我不指出我就是失职了 the other libraries for lower-level hard encryption tools in Python.
关于支持多个解密 key 的Python加密方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9263802/