如何将加密数据转换为iOS应用中的新加密算法/设置?我并没有问到如何使用代码完成此操作,这是一个概念性问题。
目前有数千人使用我的iOS应用加密他们的数据。我发现了当前加密方法的问题。为了解决这些问题,我需要实现改进的加密系统(详见下文)并将当前用户转移到新系统。
我不确定如何在不提示用户输入私钥,解密和重新加密新系统的情况下将用户迁移到新系统。理想情况下,这种转变将尽可能无缝且不可见。如果转换无效,我担心用户会丢失数据或感到沮丧。
旧加密方法
新加密方法
关于如何在这两个AES加密系统之间进行转换的任何想法?
答案 0 :(得分:3)
当前的加密密钥是否良好?如果是这样,你可以保留它们并用新的键偏差功能包装它们。这允许用户更改其密码而无需重新加密数据。如果密钥太弱,则必须解密并重新加密数据。
我看到“密码腌制”和“哈希HMAC”,您应该更多地考虑PBKDF2从用户提供的密码/密码短语创建加密密钥。使用校准功能选择轮数。
如果你正在考虑你有一个版本指标,如果是这样的话,你可以使用新的密钥方案版本加密新数据并具有向后兼容性。
我想知道Base64编码在加密方面做了什么,而不是通过无法处理8位字节(如JSON和XML)的接口传输加密数据。