有人有一个例子,采用这种方法有什么安全吗?
答案 0 :(得分:15)
如果你没有使用SSL,那么你就不安全了,但这不是唯一的原因。
SSL保护实际通信,而加密保护您正在通信的数据。你根本不应该加密密码。您应该对信息进行强化哈希。 hash是单向函数(不能反转),而encryption是双向函数(可以反转)。哈希强化和使用包括:
SHA512
几千次或使用BCrypt之类的内容。您必须记住安全性是按层构建的。通过跳过SSL,您正在跳过大部分内容。至少您可以使用makecert
到create a self-signed certificate。所有将要发生的事情是用户将被警告。一个好的SSL证书在GoDaddy上的成本可低至12.99美元。我推荐一个以及实现上述内容。
答案 1 :(得分:6)
您可以在不支付证书的情况下执行SSL,并且此方法可以确保您只有浏览器获取有关您的证书的信息不合格。
答案 2 :(得分:3)
它可能根本不安全。 SSL真的是要走的路;如果你买不起证书,你可以随时自己做。显然,这些不会验证一个受信任的root权限,但它们同样安全 - 您的网站的身份将不会被受信任的第三方确认,但连接本身也将被安全加密。
答案 3 :(得分:0)
通过不使用SSL,您可以打开代码来进行网络嗅探攻击。在客户端加密也不会有任何好处。
不幸的是,没有获得有效的证书就没有安全的方法。这种方法是不安全的。
答案 4 :(得分:0)
我同意其他人的安全问题,如果你以这种方式做皮革,那么你可能会尝试使用自定义PKI界面。您将不得不更深入地研究完成此任务所需的代码,但这里有一个描述公钥结构的链接:
因此,如果您设法在jquery中编写公钥RSA算法,那么您应该毫不费力地在C#中匹配其私钥解密。这不是一个推荐,因为这实际上只是“通过混淆的安全性”(根本不是安全性)。
答案 5 :(得分:0)
您可以使用Javascript加密表单数据。可以这样做,请参阅http://www.movable-type.co.uk/scripts/aes.html。如果数据是使用密钥加密的,那么您必须将该密钥存储在javascript代码中以及服务器端代码中。由于javascript代码将是客户端,密钥将是公共的,这根本不安全:)。这同样对非对称加密也有效。可以使用相同的密钥加密不同的数据并将其发送到服务器。
SSL旨在使用公钥密码术和对称加密技术来克服Web上的安全问题。中间人的袭击被阻止了。使用SSL,您可以确保您的数据是安全的,而不是通过这种方式进行更改,并且有第三方证书颁发机构,声称您是您声称的那个人。
如果您说我可以将密钥或加密代码放在applet或active-x或flash swf对象中并使用模糊处理来保护代码,那么这可能是一种方法。但是这种方法再次受到攻击并且不安全。混淆不能保证您的密钥或算法是安全的,只是加强了破解者的工作以获得密钥。
我希望有所帮助。
答案 6 :(得分:0)
您可以使用HMAC进行身份验证。这不会提供隐私,但是嗅探器(查看网络流量的人)将无法获取密码,也无法登录模拟真实用户。当我不提供隐私时,我的意思是嗅探器将看到所有传输的内容而不是密码。
SSL当然非常安全,但对许多应用来说都是过度杀伤力。