首页 > 人工智能 > 正文

OpenID:身份认证技术要革命?

2008-06-27 08:42:48  来源:IT168

摘要:传统的密码网络认证方式非常容易被攻破,因为,我们需要安全的、新的网络身份认证,从而有效防止网络钓鱼、网络欺骗和黑客破解等。OpenID就是其中一种较好的网络身份认证系统。
关键词: 网络通信 身份认证

    OpenID是什么?

    OpenID是一种网络身份认证系统,它的特点是用一个OpenID帐号就可登录多个不同的网站,而不用重复注册,仅仅需要这些网站支持OpenID即可。而且,OpenID可以有效防止网络钓鱼和网络欺骗。

   OpenID最初是由大型社区LiveJournal的创办人Brad Fitzpatrick 在2005年6月27日开发推出的一套身份识别系统。微软已经宣布在其下一代网络身份认证系统CardSpace中支持OpenID,使得OpenID和Windows CardSpace能够互通。另外,Digg、AOL等大型网站最近都宣布将支持OpenID。
  
    OpenID身份认证系统中采用了YADIS协议进行核心的URI验证,YADIS的含义是非集中身份验证互用系统(Yet Another Decentralized Identity Interoperability System)。

    要得到一个属于自己的OpenID,仅仅需要在任一个OpenID提供商处注册即可。目前国外有MyOpenID、GetOpenID、LiveJournal等OpenID提供商,中文的提供商是OpenID.cn。
  
    注册后可以得到一个类似chenweiyi.openid.cn这样的一个OpenID,用chenweiyi.openid.cn就可以直接登录很多网站。目前支持OpenID登录的网站有ClaimID、Zooomr、Litepost、LifeWiki、LiveJournal、NerdBank等,国内一些新兴网站也跃跃欲试,即将支持OpenID。

    OpenID登录的过程
  
    当采用chenweiyi.openid.cn类似的OpenID登录网站A的时候,网站A并不直接验证,而是把这个OpenID转发到它归属的提供商处进行认证。比如chenweiyi.openid.cn就被跳转到openid.cn网站上进行认证,用户输入当初在openid.cn注册的时候输入的密码,就可以进入到openid.cn提供的审核页面,用户自己决定是否把自己的资料发给该网站A,而且可以选择到底发送哪些资料给网站A。一旦用户选择了需要发送给网站A的资料并确认认证后,网站A得到了提供商openid.cn发来的用户资料,认证结束。

网络通信

    图1 OpenID的认证过程
  
    在图1中,各个过程是这样的:
  
    (1)用户在Form中提交OpenID字符串给用户登录系统(Consumer)
  
    (2)用户登录系统(Consumer)去访问提交上来的OpenID URI,从返回的HTML中找到OpenID提供商的信息。<LINK REL='openid.server' HREF=(the server)>
  
    (3)用户登录系统(Consumer)和OpenID服务器进行安全通讯。
  
    (4)用户登录系统(Consumer)把用户跳转到OpenID服务器
  
    (5)用户在OpenID服务器端进行身份验证 ,并且询问用户是否确认验证此Consumer。
  
    (6)服务器把用户跳转到用户登录系统(Consumer)
  
    (7)用户登录系统(Consumer)验证来自服务器的相应,并取得返回的验证数据。

    OpenID相对目前的认证协议,有哪些优势

    OpenID和现在大型门户网站流行的“通行证”系统完全不同,“通行证”系统注册一个帐号就可以同时登录使用该门户网站的多项服务。但这仅仅解决了一个网站的问题,不能在多个不同的网站中使用。“通行证”系统是私有协议,不开放。

    OpenID和微软Passport身份认证系统也有很大的不同,微软Passport虽然可以提供给多个不同的网站使用,但是它还是属于集中式身份认证系统,系统的掌控权还是在微软手中,这样垄断的手法使得Passport一直没有得到很大的认同。OpenID是一种分布式身份认证系统。用户完全可以自由选择自己的OpenID提供商。支持OpenID登录的网站不限定OpenID的来源,只要支持OpenID标准协议即可。

    OpenID的核心思想是,用户采用一个自己拥有的URI来代表自己的身份,而OpenID提供了一种技术手段来确保用户拥有这个URI。针对chenweiyi.openid.cn这个OpenID,openid.cn这个OpenID提供商来提供对chenweiyi.openid.cn的密码验证。

    chenweiyi.openid.cn的拥有者在使用这个OpenID的时候,有两种办法:
  
    一是直接输入chenweiyi.openid.cn进行身份验证。
  
    另外的办法是在自己拥有的域名或者blog地址中,在index.htm(或者其它的默认静态页面)中的<HEAD></HEAD>中插入以下的代码:
  
    <link rel="openid.server" href="http://www.openid.cn/openid.server">
    <link rel="openid.delegate" href="http://chenweiyi.openid.cn/">
  
    这样,使用任何一个插入了以上代码的域名,都将作为和chenweiyi.openid.cn具有同等效力的OpenID。在支持OpenID的网站登录的时候,输入任何一个插入了以上代码的域名作为OpenID登录,结果都将跳转到openid.cn进行身份验证,而且用户名必须也只能是chenweiyi。

    如果验证成功,用户输入的域名或者blog的地址就代表了用户的身份。由于在域名的首页中插入代码的权限属于域名的拥有者,这就确保了该域名就直接代表了用户的身份。而且,由于从OpenID提供商得到的URI可能很长,不方便记忆,而采用用户自己拥有的域名首页插入代码的方法,可以使得用户自己的OpenID很方便用户记忆。

    比如用户如果拥有www.chen.com这个域名,那么插入首页代码后,使用这个域名作为OpenID显然比chenweiyi.openid.cn更有优势。

    而且,还有一个重要的原因,推荐用户使用自己的域名来作为自己的OpenID。由于OpenID是一个分布式的身份验证方式,用户可以在多个OpenID提供商处注册,得到不同的OpenID。自己想使用哪个OpenID提供商提供的身份验证时,就在自己域名的首页中放置不同的验证服务器。这样即使更换OpenID提供商,自己的域名无需更改,在登录其它网站时还是使用自己的域名进行登录。这样可以有效防止OpenID崩溃或者速度缓慢,可以使自己不依赖任何一家提供商。这也是OpenID的分布式验证体系的可贵之处。


第三十六届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。