现在密码朝着几个方向发展 但是我却感觉不到安全 因为能记忆的密码组合很少 在未来我们如何设计才安全呢?我说说目前确保安全有几种策略。
问题:由于人类能记忆的密码组合实在太少,在未来如何确保密码安全呢?计算机的运算速度越来越快,加密算法的可靠性也在逐渐降低(设备变快则破解速度变快),难道在未来每个网站都要配置一个强大的服务器来计算密码,生成的密码复杂度够高,别人获取后无法在短时间内获得密码原文?(坏人也会买好服务器来破解啊),我突然想到一个方案,就是一个巨无霸公司,拥有世界上最强大的计算机,运算密码够复杂,就算其他人获得了密文,以当代运算速度也是无法暴力破解获得原文的。然后其他需要验证密码的,都发送到这家公司,就像现在的支付网关一样,为了安全,全部由它来中转。然而全世界这么多人要使用密码,这个公司也顶不住啊……
说说现有的。
第一类:银行卡密码,计算过程未知,密码 hash 未知,一个银行卡只能尝试几次,所以安全性高,但是现在“ 6 位数纯数字密码”的类型越来越常见,很多人其实使用是和银行卡密码完全一致的(包括我), 6 位密码如果只用在银行卡上是没有安全问题的,但是到处都采用这种密码方式作为密码,那我就只能呵呵了。
第二类:原始密码 http 传输 js 也不进行加密密码 只要一劫持就完蛋。
第三类:那时候在 csdn 泄露的时候,有人提出每个网站设计一套加密方式,其实就是一个主密码,加上这个域名或者名称进行 hash 处理,一套密码在不同的地方生成出来不同的 hash 作为密码,第一个被设计出来的工具叫花密。缺点是如果更换主密码,还得去每个网站更换,简直是得不偿失,如果不换,下次来输入绝对是错误的,然而能想到的加密组合大多数是可以猜测的,所以理论上安全,实际上并不是非常安全。
第四类:每个网站生成一个随机密码,用密码管理软件进行输入和存储,安全性高,但是最大的 bug 就是主密码的安全性决定了所有密码的安全性,如果主密码被破解被记录(含被劫持)……后果不堪设想!(也可能这个公司被攻破,劫持到用户的主密码)
第五类:优盾类,属于两步验证(手机短信也归类到这里),也就是说必须有两个方式确认,才让登陆。但是设备丢失……
第六类:没有密码,所谓没有密码就是用 QQ 或其他网站的账号绑定,只要 QQ 或其他网站账号安全,那么就给予授权。然而常常还是听到看到有人被盗
就目前而言,最安全的方式也就是使用 https 全程加密,同时采用 js 或安全控件来加密密码,外加另外一个设备验证。在未来,会有咋样的密码方式呢,大家开动一下大脑猜测一下吧。
问题:由于人类能记忆的密码组合实在太少,在未来如何确保密码安全呢?计算机的运算速度越来越快,加密算法的可靠性也在逐渐降低(设备变快则破解速度变快),难道在未来每个网站都要配置一个强大的服务器来计算密码,生成的密码复杂度够高,别人获取后无法在短时间内获得密码原文?(坏人也会买好服务器来破解啊),我突然想到一个方案,就是一个巨无霸公司,拥有世界上最强大的计算机,运算密码够复杂,就算其他人获得了密文,以当代运算速度也是无法暴力破解获得原文的。然后其他需要验证密码的,都发送到这家公司,就像现在的支付网关一样,为了安全,全部由它来中转。然而全世界这么多人要使用密码,这个公司也顶不住啊……
说说现有的。
第一类:银行卡密码,计算过程未知,密码 hash 未知,一个银行卡只能尝试几次,所以安全性高,但是现在“ 6 位数纯数字密码”的类型越来越常见,很多人其实使用是和银行卡密码完全一致的(包括我), 6 位密码如果只用在银行卡上是没有安全问题的,但是到处都采用这种密码方式作为密码,那我就只能呵呵了。
第二类:原始密码 http 传输 js 也不进行加密密码 只要一劫持就完蛋。
第三类:那时候在 csdn 泄露的时候,有人提出每个网站设计一套加密方式,其实就是一个主密码,加上这个域名或者名称进行 hash 处理,一套密码在不同的地方生成出来不同的 hash 作为密码,第一个被设计出来的工具叫花密。缺点是如果更换主密码,还得去每个网站更换,简直是得不偿失,如果不换,下次来输入绝对是错误的,然而能想到的加密组合大多数是可以猜测的,所以理论上安全,实际上并不是非常安全。
第四类:每个网站生成一个随机密码,用密码管理软件进行输入和存储,安全性高,但是最大的 bug 就是主密码的安全性决定了所有密码的安全性,如果主密码被破解被记录(含被劫持)……后果不堪设想!(也可能这个公司被攻破,劫持到用户的主密码)
第五类:优盾类,属于两步验证(手机短信也归类到这里),也就是说必须有两个方式确认,才让登陆。但是设备丢失……
第六类:没有密码,所谓没有密码就是用 QQ 或其他网站的账号绑定,只要 QQ 或其他网站账号安全,那么就给予授权。然而常常还是听到看到有人被盗
就目前而言,最安全的方式也就是使用 https 全程加密,同时采用 js 或安全控件来加密密码,外加另外一个设备验证。在未来,会有咋样的密码方式呢,大家开动一下大脑猜测一下吧。