![](/img/trans.png)
[英]Encryption and Decryption Key, where to store and what to use for .net application
[英]AES Decryption and encryption, what to store and where?
我有一些敏感数据需要存储在数据库中,但是我还需要能够将该数据解密到其原始状态。 我一直在阅读,似乎AES是最好的选择(如果您不同意,那么我很乐意收到任何建议!)。
我用AES不太了解的是,有一种叫做IV的东西,如果我正确理解了,IV就像某种“键/密码”。
所以。 我的问题是。 如果我想解密数据库存储的值,那么我还需要知道IV和解密它的密钥吗? 我还需要将这两个值存储在数据库中吗?
力量在关键。 有通常与IV是已知的没有问题的,所以将它存储沿着数据(或者作为一个单独的列或只是级联到开始,如常见的方法来做到这一点)是好的。
IV可能还有其他要求,但是您必须确保遵循。 这些可能围绕IV的明显随机性,或者IV不应被重用(尽管在这种情况下,应更正确地将其称为Nonce)。
IV用于以相同的文本永远不会以相同的方式加密的方式“随机化”数据。 这样可以增强加密数据的强度。
IV有用的示例:您加密密码。 用户A和用户B都使用密码“ HelloWorld!”。 如果不使用和IV,则两种情况下的加密数据均相等。 如果某人知道用户A的密码并发现加密的数据与用户B的密码相同,则可以使用用户A的密码以用户B的身份登录。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.