加了 https,敏感信息还要加密吗?

2017-05-05 12:15:24 +08:00
 WhyAreYouSoSad

比如传输账号密码

19926 次点击
所在节点    SSL
87 条回复
sobigfish
2017-05-05 13:07:54 +08:00
传回服务器的不用加,在浏览器上显示的敏感信息要 防止 xss
justfly
2017-05-05 13:15:42 +08:00
@lovedebug 对 这是建立在信任链顶层的 CA 可靠的基础上 CA 不可靠后面的就无从谈起了
mcspring
2017-05-05 13:35:40 +08:00
问题不是这样滴,你虽然用 HTTPS 加密了传输,但 HTTPS 的证书是谁给你的?这个证书链向上的任何一级都可以解密你的传输数据!

也许你会说“人家都是颁发机构了,你防他们有什么意义?”,这个问题的回答就是他们持有根证书,但他们无法防止别人也持有他们的根证书!
atc
2017-05-05 13:56:50 +08:00
单就账号密码而言,请倡导用户使用两步验证,不要只关注加密的问题,密码总会有其他途径泄露的
ExploreWay
2017-05-05 14:07:03 +08:00
不太了解 https 协议,不过看大家的评论倒是学到了不少。
wevsty
2017-05-05 14:16:50 +08:00
@mcspring
证书链向上的任何一级都可以解密你的传输数据这个认识从根本上就是错误的。
如果是自己生成的私钥,那么即使是证书颁发者也不能解密通信。

HTTPS 面临的问题是,CA 可信度的问题,预防中间人这样的攻击行为关键在于是否能发现虚假的服务器,而验证服务器身份又依赖于 CA 的信任关系。只不过目前来看,没有一种更可靠的体系来代替目前的 CA 体系。
otakustay
2017-05-05 14:26:44 +08:00
@DoraJDJ HTTPS 难道不就是用来解决中间人攻击的吗
zealot0630
2017-05-05 14:27:34 +08:00
在客户端对密码做 hash 是世界上最蠢的

打个比方,你把大门钥匙锁在家门口保险箱里面,然后出门拿着保险箱钥匙

大门钥匙=hash 后密码
保险箱钥匙=原密码

服务器(大门)只认 hash 后的密码,从原密码可以轻松得到 hash 后的密码(打开保险箱)

然而 一旦黑客拿走了你的大门钥匙,他还需要保险箱钥匙么?

黑客直接拿你 hash 后的密码登录服务器就拥有你所有权限了,根本不需要去拿原密码
wshcdr
2017-05-05 14:35:13 +08:00
HTTPS 有三个作用:1.身份认证 2.传输保密 3.传输过程中的数据完整
XDA
2017-05-05 14:42:00 +08:00
# 搭车问个问题,买了 Symantec 的泛域名证书,怎么用在对外提供的服务接口上?
ryd994
2017-05-05 14:47:25 +08:00
我就问一点:要是自己加一层更好,为什么 TLS 不自动帮你加这一层?
是该有多自(sha)信(bi)才会觉得自己的姿势比业界学界的专家们几十年的结论更高?
这可不是单纯的理论,黑客白客一直都在不停的攻防。也就国内网银还玩插件这傻逼玩意。BoA https,密码直接传。
ryd994
2017-05-05 14:49:40 +08:00
@atc 最好是不要密码登录……
上客户端证书,如果还不够的话上智能卡,银行 U 盾也不过这级别
hsmocc
2017-05-05 14:53:39 +08:00
加密后,爬虫抓数据会困难点
imherer
2017-05-05 15:02:17 +08:00
感觉能加最好还是加一下。
ryd994
2017-05-05 15:04:09 +08:00
@lovedebug
@DoraJDJ
人家都能破你 HTTPS 了,怎么不能在你页面上插脚本?
@tony1016 不知道你说的哪家银行。BoA, Chase, 都是 HTTPS 而已,里面就是明文
RqPS6rhmP3Nyn3Tm
2017-05-05 15:06:27 +08:00
要看有多敏感。如果 1Password 只有 https 加密了,我看没人敢用。
ryd994
2017-05-05 15:06:33 +08:00
@mcspring 无法保护好私钥的 CA,乱签证书的 CA,结果看 WoSign 就知道
真要无法相信 CA,你有何必用 HTTPS ?自己发明一套宇宙无敌安全协议不是更好?
ryd994
2017-05-05 15:10:40 +08:00
用作数据接口的话,你是说想要加密防协议泄露么?
分发客户端的前提下,最终都是能逆向客户端取得的,成本问题而已
基础的话做下 pinning,防止客户自己替换 CA 中间人自己
复杂的话你还是先考虑下客户端防逆向
ryd994
2017-05-05 15:19:30 +08:00
@BXIA 那是因为
1.服务器不完全可信,我会担心 1password 的 admin 看我密码。而 CA 想要中间人我,还要控制网络
2.不需要向其他人传输,密码只有我需要知道。我不需要信任链,只需要 PSK
1password 的应用场景和 TLS 截然不同,不能一概而论。要是自己加密就能可靠的话,GPG 应该比 TLS 更流行才对。

实际上 1password 的安全性最终还是取决于 HTTPS:如果 HTTPS 破了,下到的是带后门的客户端,什么都泄露了
lovedebug
2017-05-05 15:19:47 +08:00
@mcspring 这样理解其实不太对。证书公钥主要是用来加密后续数据传输使用的私钥。只有公钥拿不到对称密钥也不能解密数据。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/359310

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX