RRR*_*RRR 5 .net c# encryption base64
我想将字符串加密到base64,字符串输入可以是差分长度(限制是16个字符),我想获得固定长度的加密字符串.
有谁知道在.NET框架中这样做的方法?或者有算法来做到这一点?
(编辑:我一直假设您要加密一个字符串,然后将结果编码为base64,总是以相同的输出长度结束.如果您可以澄清问题以确认这一点或解释您做什么会有所帮助.想要,如果这不是它.)
好吧,有一个非常简单的算法可以使用任何加密方案,它总是将固定长度的输入加密到固定长度的输出(并且有很多这些):
Convert.ToBase64String
要解密,只需撤消该过程:
Convert.FromBase64String
(使用MSDN查找每个步骤的详细信息,并随时在特定部分寻求帮助.您选择的加密算法将取决于您尝试做什么,而且我不是专家,我是害怕.)
编辑:如果你只需要哈希,那么其他问题就会发挥作用.你是否总是希望相同的字符串最终被哈希到同一个字符串?这通常适用于散列而不是加密.
如果您正在寻找单向加密(无需解密),您可以使用 SHA1
string secretKey = "MySecretKey";
string salt = "123";
System.Security.Cryptography.SHA1 sha = System.Security.Cryptography.SHA1.Create();
byte[] preHash = System.Text.Encoding.UTF32.GetBytes(secretKey + salt);
byte[] hash = sha.ComputeHash(preHash);
string password = System.Convert.ToBase64String(hash);
Run Code Online (Sandbox Code Playgroud)
如果你想加密和解密,你可以使用 RSA。
归档时间: |
|
查看次数: |
12171 次 |
最近记录: |