在开发Windows 8时,微软面临一个重要的挑战就是如何帮助用户管理你的数据身份,而且是以一种既方便又安全的方式。
当前,人们用以验证自己数字身份的一个主要方式就是通过密码,用密码来登录计算机、银行、网络服务等等。微软研究发现,在美国用户中,每位PC用户都拥有25个左右在线账户,而这些账户的独立密码只有6个,也就是说每个人都会经常重复使用同一个密码登录不同的账户。
从一方面来讲,这很容易理解,人们很难铭记大量的不同密码,尤其是一些并不常用的账户。然而,密码重复使用对于黑客来说却是非常欢迎的,他们如果能从一个网站破解你的密码,那么意味着很可能使用这个密码登录你其它的账户,省去了不少力气。更有甚者,他们可以利用你的个人信息将你其它账户的密码进行重置。
显然,现在的用户名+密码机制并不是十分安全。微软希望实现一种流畅、轻松、安全的Web体验,但是记住一串长而复杂的密码让网络体验变得不痛快,使用简短的密码又不安全。理想的方案就是找到一种方法,让你既轻松又安全地使用所有的数字身份。
微软认为要应对这个挑战,有两种基本的方法。其一,让Windows来帮助你管理密码。如果你在访问每个网站时用的都是非常复杂而又独立的密码,这些密码又不需要你来记忆,那么比你使用便于记忆但是十分简单的密码安全多了,黑客们也不容易下手了。
第二种方法是,使用其它东西替代密码来保护你的身份。密码的替代品有很多,例如OTP(一次性口令)、证书、智能卡等。然而这些技术虽然已经出现了很久却并未被大众所接受,一个主要原因就是不易于使用,没有密码使用起来那么便捷。
在Windows 8中,微软提供了一种安全存储用户名/密码的机制,引入了一种支持可替代身份验证的技术。这些可以帮助用户增强密码安全、使用最新最强大的技术来保护你的数字身份。
密码的缺点
攻击者会利用很多方法来获取你的密码,最常见的有:
— 钓鱼:发送恶意邮件、误导用户点击链接、重置密码等来获取你的密码;
— 猜测:根据用户习惯、个人信息等进行猜测;
— 技术破解:攻击者可以从网上下载一些数据(通常是密码的散列值)用以破解你的密码;
— 键盘记录;如果攻击者能顺利在你的机器上安装一个键盘记录器,那么就能盗取你的用户名和密码。
完善密码的安全性和可用性
你可以采取很多方法来保护自己的密码免受上述类型的攻击,最重要的一点就是时刻保持你的PC是安全清洁的,确保没有恶意软件。Windows 8包含一系列的防护功能,例如安全启动(Secure Boot)、智能筛选器(SmartScreen)和Windows Defender。
不过,有些攻击(例如猜测)则仅仅要靠密码强度来防护,所以你需要为每个账户设置一个复杂的密码。
Windows 8通过两种方法简化了管理复杂密码的难度。第一,自动将你访问的网站、使用的应用程序的多个用户名和密码进行存储、检索,当然是以一种受保护的方式。
IE10就采用了一种证书,存储你所访问的网站的用户名和密码。另外,任何开发人员在开发Metro风格应用程序的时候都可以直接使用一个API来安全地存储和检索证书。
Windows 8允许你存储和管理所有登录认证
第二,使用Windows Live ID登录Windows 8。这样做的好处是,当你使用Windows Live ID登录Windows 8后,就能同步你存储在所有“可信赖”Windows 8计算机上的认证。
当你使用Windows Live ID登录Windows并存储了相关认证后,Windows 8将以你的名义自动提交证书,而不需要你来记忆这些复杂的密码。如果你想要查看这些密码,那么可以到任何一台“可信赖”PC的认证管理器中查看。
创建一种简单的密码替代品
虽然使用复杂的密码不容易别攻击者猜到或是破解,但是却可能会遭受钓鱼攻击或键盘记录。不过,也有很多替代品可以防止你受到此类攻击。
一种就是公共/私人金钥组(key pairs),不过尽管这种技术已经很常见,但是却仍未能替代传统的密码登录。为什么呢?主要原因就是一个私人密钥的强大保护需要特殊的硬件,例如硬件安全模块(HSMs)和智能卡,而通常使用这些硬件也是很不方便的。
不过,Windows 8的一些新功能就能让用户和应用程序开发人员都能轻松使用公共/私人密钥技术。Windows 8采用了一种新的密钥存储提供器(Key Storage Provider,KSP),该功能对于银行或商业应用非常有用,因为它提供了一种非常强大的保护,使得用户免受现在网络上常见的身份攻击。
本文来源:驱动之家 作者:佚名