腾讯QQ令牌是腾讯推出的一项保护QQ帐号及游戏帐号安全的密保产品,该令牌是一款锁扣型的实物产品,可挂在钥匙扣上随身携带。当QQ用户完成令牌绑定后,按下QQ令牌的按键,会在液晶屏上显示6位动态密码用于QQ身份验证,用户在电脑上输入正确密码才能继续操作。
在几年前,腾讯曾经推出类似的“QQ密保卡”免费服务,通过纸质的卡片模拟动态密码形式登录,月光博客曾经分析过,“QQ密保卡”虽然节省了成本,但是安全性却远远低于动态密码锁,QQ密保卡并没有使得QQ的登录安全性发生本质的变化,要想实现真正的网络安全,具有硬件介质的动态密码锁和USB Key才能使得安全性得到一个质的突破,而现在,腾讯终于推出了具有硬件介质的动态密码锁产品:QQ令牌,那么QQ令牌的安全性到底如何呢?
QQ密保卡
QQ令牌
动态密码认证技术
QQ令牌使用的是动态密码技术,这是目前较为流行的身份认证硬件产品,可以实现较为安全的身份认证。
动态密码(Dynamic Password)也称一次性密码,它指用户的密码按照时间或使用次数不断动态变化,每个密码只使用一次。动态密码采用一种称之为动态令牌的专用硬件,内置电源、密码生成芯片和显示屏。下图是这种产品的外观,其中数字键用于输入用户PIN码,显示屏用于显示一次性密码。每次输入正确的PIN码,都可以得到一个当前可用的一次性动态密码。
动态密码锁
这种产品的密码生成芯片运行专门的密码算法,根据当前时间以及使用次数生成当前密码并显示在显示屏上。认证服务器采用相同的算法计算当前的有效密码。由于每次使用的密码必须由动态令牌来产生,只有合法用户才持有该硬件,所以只要密码验证通过,系统就可以认为该用户的身份是可靠的。而用户每次使用的密码都不相同,即使黑客截获了一次密码,也无法利用这个密码来仿冒合法用户的身份,因为下一次登录必须使用另外一个动态密码。
基于PIN码保护的动态密码
动态密码锁需要两个密码要素,一个要素是静态PIN码,由用户自行设置、保管。另一个要素是动态密码,由密码令牌动态生成,不可预测,并且与后台服务器的接入控制保持同步,由后台服务器进行检验。因此,用户必需输入正确的静态PIN码和动态密码,才能通过身份认证。
动态密码锁本身需要输入PIN码才能使用,静态PIN码的安全要素在于,这个PIN码不是在电脑上输入的,而是在密码锁上输入的,这样,所有的黑客木马程序从理论上讲都全部失效,因为这些木马根本不可能在另外一个硬件密码锁上运行。
黑客要想破解用户密码,首先要从物理上获得用户的动态密码锁,其次还要获得用户的PIN码,这样,黑客必须潜入用户家中(电脑黑客还需要学习普通窃贼的技术),偷取了动态密码锁,然后再破解PIN码。没有用户PIN码依旧无法使用,而通常情况下动态密码锁本身具有一定安全保护功能,录入PIN码错误10次就会自动锁死而无法使用。这也保证了动态密码锁物理上的安全性。
动态密码技术可以完美解决客户端用户的安全性问题,因为黑客无论使用什么方法,也无法方便的窃取用户的密码,即使黑客窃取了一次密码也无法登录使用。
动态密码的类型
动态口令硬件令牌从技术角度分析包括以下三种形式:基于时间同步、基于事件同步、挑战应答方式。
时间同步:基于动态口令令牌和服务器的时间同步,通过运算来生成一致的动态口令,一般更新率为60秒,每60秒产生一个新口令,要求服务器能够十分精确的保持正确的时钟,同时对其令牌的晶振频率有严格的要求。
从另一方面,基于时间同步的令牌在每次进行认证时,服务器端将会检测令牌的时钟偏移量,相应不断的微调自己的时间记录,从而保证了令牌和服务器的同步,确保日常的使用,目前可以通过增大偏移量的技术(前后10分钟)来进行远程同步,确保其能够继续使用,降低对应用的影响。
事件同步:基于事件同步的令牌,其原理是通过某一特定的事件次序及相同的种子值作为输入,通过加密算法运算出一致的密码,不受时钟的影响,由于其算法的一致性,其口令是预先可知的,通过令牌,你可以预先知道今后的多个密码。基于事件同步的令牌同样存在失去同步的风险,例如用户多次无目的的生成口令等,事件同步的服务器使用增大偏移量的方式进行再同步,其服务器端会自动向后推算一定次数的密码,来同步令牌和服务器。
挑战应答方式:常用于客户端软件,在软件上输入服务端下发的挑战码,客户端上生成一个随机数字,这个动态口令只能使用一次,可以充分的保证登录认证的安全。
QQ令牌动态密码的优点
QQ令牌
价格低:从技术上讲,动态密码技术是比较完美的方案,然而可惜的是,动态密码锁的成本过高,不太利于大规模使用。基于时间同步的“QQ令牌”相比而言价格较低,比较易于批量使用,QQ令牌就是使用的基于时间同步的动态令牌,这种动态令牌由于成本限制,就没有保护PIN码,别人偷盗这张卡片即可冒名登录,其安全性相比具有PIN码的动态密码锁还有一定差距。
使用简便:在使用上,QQ令牌较为简单易用,当正常启动时,会在液晶屏上显示6位动态密码,在一分钟后,动态密码自动消失,用户需要再次按下按键,重新获取动态密码。
跨平台:QQ令牌无需安装,无需USB接口,没有驱动,可在任何平台上使用,相比USB Key来说安装和使用很简单。
QQ令牌动态密码的缺点
缺少PIN码:QQ令牌因为节省成本,没有键盘,因此也就没有PIN码保护,用户每按一次按钮就可以生成一个密码,一旦QQ令牌被盗,用户的密码即被破解,用户需要努力保护自己的QQ令牌在物理层面不被他人盗取,一旦被盗,也应该及时挂失。相比来说有PIN码保护动态密码锁,硬件和PIN码构成了的两个安全因素。如果用户PIN码被泄漏,只要密码锁本身不被盗用即安全。即使密码锁被盗,黑客不知道PIN码也无法使用,破解PIN码并不容易,大部分动态密码锁对于多次错误输入PIN码后,都会自动锁定,无法使用,需要管理员来解锁。
单钥加密的认证安全:虽然动态密码锁的安全性的确不错,然而,动态密码技术也有一个安全隐患,就是服务器端的安全性。动态密码的本质是单钥加密,密钥只有一个。在服务器端的认证系统里,可以计算出所有动态密码,因此黑客如果将精力放在破解认证服务器系统,那么还是有可能对系统造成一定安全威胁,另外这个系统也依赖于服务器的管理员,服务器的管理员可以在服务器端修改动态密码锁的规则,模拟用户登录,也具有一定的安全隐患。而USB Key通过双钥加密的技术实现安全的认证,将私钥保存在USB Key中,服务器端无法模拟,就可以弥补动态密码锁的某些安全性的隐患。
USB Key
结论
总的来说,“QQ令牌”的安全性远远高于“QQ密保卡”,但因为节省成本而缺少PIN码,其安全性还是低于常规的动态密码产品,因此,“QQ令牌”应随身携带,并尽量避免“QQ令牌”被他人借用或通过其他方式获得,否则会给自己的QQ帐号带来很大的安全问题。一旦“QQ令牌”丢失,应该在第一时间内登录系统挂失,以免账户安全受到威胁。
转自月光博客