客户端和服务器端的Asp.net C#加密/解密
本文关键字:加密 解密 net Asp 服务器端 客户端 | 更新日期: 2023-09-27 18:11:32
Sir,我在客户端有jquery加密解决方案,但它只创建"MD5"。
我想要客户端上的Salted Md5加密并在Asp.net 4.0和C#中在服务器端解密
我的加密代码如下:
<script type="text/javascript">
function chn() {
var a = document.getElementById('txt1');
var b = document.getElementById('txt2');
var c = a.value; var d = $.md5(c);
b.value = (d);
}
</script>
我希望每次尝试都必须更改加密。。
示例:abc的第一次加密是xyz
如果我再次尝试使用名称"Abc",那么它应该会创建另一个加密并在服务器端进行检查。
请帮我解决
MD5是一个散列,而不是一种加密机制。哈希本质上是有损耗的,并且多个输入可以(并且由于鸽子洞原理,绝对将(产生相同的输出。
运行MD5就像计算单词中元音的数量一样。如果我告诉你一个单词有4个元音,并让你告诉我原来的单词是什么,你根本没有足够的信息给我正确的答案。你可能会找到一些有4个元音的单词,但你不知道你找到的单词是否是我的单词。也许是,也许不是。从数学上讲,你是不可能判断的。
MD5的作用方式相同。你丢弃了大量的信息,可能是千兆字节或兆字节的信息,而产生了一个16字节的摘要。
从本质上讲,这是一个单向的过程。
MD5无法解密。这是单向散列。此外,我发现任何可以在另一端解密的东西都是不安全的,以防被拦截。始终设计和编码以确保您可以验证盐而不是解密它:(