javascript - jsp网页前后端传输数据都有哪些加密方式?
PHP中文网
PHP中文网 2017-04-11 10:58:03
[JavaScript讨论组]

jsp网页前后端传输数据都有哪些加密方式?

PHP中文网
PHP中文网

认证0级讲师

全部回复(4)
巴扎黑

前后端传输要加密,只能采用非对称加密才安全,如果要自己实现,有JS的加密类库 RSA in JavaScript
相关内容可以参考我的博客:Web应用中保证密码传输安全

不过自己实现这个数据加密实在麻烦,所以建议明文传输,在发布时强制使用 HTTPS 协议安全传输。

顺便澄清其他人回答的一些问题:

  1. Base64 不是种加密方式,只是种编码方式,发明的目的是把二进制编码为纯文本。由于它的运算过程中没有密码,所以经过 Base64 编码的数据可以直接解码出来,完全无保密性可言

  2. MD5/SHA1 等摘要算法(或者说哈希算法、散列算法)可用于加密,它的特点是单向,只能加密不能解密。所以一般只用于对密码的加密,因为同样的内容通过同样的摘要算法,得到的结果是一样的。而不同的的内容计算后得到相同结果的概率极低,可以忽略。如果仍然需要降抵撞码概率,可以同时保存几种摘要算法对同一个内容的计算结果,不同的内容几种摘要算法结果完全相同的概率基本上不存在。

  3. 加盐的摘要,通常使用 HMAC 算法,HMAC 是基于普通摘要的,所以根据使用的摘要算法不同又分为 HMAC-MD5、HMAC-SHA1 等。这个就不细说了。

阿神

如果只是简单处理一下,避免明文传输,可以用base64。如果为了传输安全,可以用md5或者SHA1加密。

PHP中文网

常用有MD5和SHA1,你也可以自己加盐

伊谢尔伦

没有加密方式。
你可以考虑使用https协议进行安全的传输,但是数据加密就算了。

理由:任何语言最终都会形成html,事实上前端也只能处理html,css,js代码,其他如java,php,c#都是在后端工作的,在html通过web服务器发送给访问者的时候已经脱离了后端的控制。因此前端的唯一加密手段就是js,但是js是明文的,也就是说你的加密过程是透明的,自然完全没有破解难度。当然,md5之类的单向加密依然无法破解,问题是后端拿到单向加密的数据完全没用,因为它推导不出原始数据是什么。所以,要安全就用https。

如果你的目的仅仅是对比可以考虑md5,例如后端发送密钥给前端,同时存根,前端将用户密码进行md5加密,然后与密钥进行字符连接并再次md5,然后发送给后端,后端也进行相同的处理,然后比对,从而完成密码验证,全过程无明文密码传输。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号