《针对计算设备保护用户证书.pdf》由会员分享,可在线阅读,更多相关《针对计算设备保护用户证书.pdf(31页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104094270A43申请公布日20141008CN104094270A21申请号201380008804X22申请日2013012313/368,73120120208USG06F21/31200601G06F21/6220060171申请人微软公司地址美国华盛顿州72发明人MF诺瓦克AJ莱曼74专利代理机构中国专利代理香港有限公司72001代理人苏赫峰汪扬54发明名称针对计算设备保护用户证书57摘要针对计算设备保护用户证书包括在计算设备和标识提供方(例如,WEB服务)之间建立安全会话。该安全会话的参数被传输至证书服务,其重新协商或恢复该安全会话以在证书服务和标识提供方之。
2、间建立新的安全会话。用户证书经由该新的安全会话从证书服务传递至标识提供方,但是该计算设备并没有新的安全会话的参数并且因此无权访问所传递的用户证书。该证书服务随后再次重新协商或恢复该安全会话以在证书服务和标识提供方之间建立附加安全会话。该附加安全会话的参数被传输至计算设备以允许该计算设备继续与标识提供方安全通信。30优先权数据85PCT国际申请进入国家阶段日2014080886PCT国际申请的申请数据PCT/US2013/0226112013012387PCT国际申请的公布数据WO2013/119385EN2013081551INTCL权利要求书2页说明书20页附图8页19中华人民共和国国家知识。
3、产权局12发明专利申请权利要求书2页说明书20页附图8页10申请公布号CN104094270ACN104094270A1/2页21一种由证书服务所实施的方法,该方法包括从计算设备接收将与该计算设备的用户相关联的用户证书提供至标识提供方的请求;从该计算设备接收该计算设备和标识提供方之间的第一安全会话的安全会话参数;从证书服务重新协商或恢复该第一安全会话,这导致证书服务和标识提供方之间的第二安全会话;并且经由该第二安全会话将与用户相关联的用户证书提供至标识提供方。2根据权利要求1的方法,该标识提供方是多个标识提供方之一,该方法进一步包括保存与用户相关联的多个不同用户证书,多个不同用户证书中的每一个。
4、与多个标识提供方中不同的一个相关联;并且基于该标识提供方识别多个不同用户证书中的哪一个要作为用户证书而提供。3根据权利要求1的方法,进一步包括保存被加密的用户证书;从计算设备接收基于该计算设备的密钥所解密的数值;并且在向标识提供方提供用户证书之前,基于证书服务的密钥和基于计算设备的密钥所解密的数值对用户证书进行解密。4根据权利要求1的方法,进一步包括响应于针对临时信用卡号码的用户请求而从另外的标识提供方获得与该标识提供方相关联的临时信用卡号;并且在计算设备不了解该临时信用卡号的情况下将该临时信用卡号提供给标识提供方。5根据权利要求1的方法,进一步包括从计算设备接收向证书服务认证该用户以便用户证。
5、书被提供给标识提供方的信息,其中与计算设备是已知设备的情况相比,在计算设备是未知设备的情况下用来认证的信息数量更大。6根据权利要求1的方法,进一步包括与用户证书相关联地保存策略,该策略指示要被满足以便用户证书被提供给标识提供方的一个或多个条件;并且仅在该一个或多个条件得以满足的情况下才将用户证书提供给标识提供方。7一种计算设备,包括处理器;和一个或多个具有存储于其上的多个指令的计算机可读媒体,当被一个或多个处理器所执行时,该指令使得该一个或多个处理器从标识提供方接收针对计算设备的用户的用户证书的请求;接收针对要由证书服务所提供的与标识提供方相关联的用户证书的用户请求;响应于该用户请求,向证书服。
6、务提供计算设备和标识提供方之间的第一安全会话的安全会话参数;并且将从证书服务所接收的用户证书经由证书服务和标识提供方之间的第二安全会话传输至标识提供方。8根据权利要求7的计算设备,该指令使得该一个或多个处理器接收针对用户证书的请求并且接收包括在计算设备的WEB浏览器中的用户请求。权利要求书CN104094270A2/2页39根据权利要求7的计算设备,该多个指令进一步使得该一个或多个处理器从证书服务接收与用户和标识提供方相关联的多个用户证书中的每一个的至少一部分的指示;显示与用户和标识提供方相关联的多个用户证书中的每一个的至少一部分;并且作为用户请求而接收用户对与用户和标识提供方相关联的多个用户。
7、证书中的每一个的至少一部分之一的选择。10根据权利要求7的计算设备,该计算设备是第二安全会话中的中介,其并不了解第二安全会话的安全会话参数。权利要求书CN104094270A1/20页4针对计算设备保护用户证书背景技术0001随着计算机已经变得日益普及,用户期望从各种不同的计算机对万维网(也被简称为WEB)上的资源或其它服务进行访问。这些资源或其它服务经常要求用户提供诸如用户名和密码之类的用户证书以便对该资源或服务进行访问。用户经常期望从多个不同计算机访问这些资源,而其中的许多计算机由于它们并不属于用户而并不被用户所信任。此外,即使可能被用户所信任的计算机可会被恶意程序所感染。用户所输入的用户。
8、证书因此由于被恶意程序所窃取而暴露于一定程度的风险之中,这降低了这样的资源或其它服务以及整体WEB的安全性。发明内容0002提供该发明内容而以随后在具体实施方式中进一步描述的简化形式引入概念的选集。该发明内容并非意在标示出所请求保护主题的关键特征或必要特征,也并非意在被用来限制所请求保护主题的范围。0003依据一个或多个方面,(例如,由证书服务)从计算设备接收用于将与该计算设备的用户相关联的用户证书提供至标识提供方的请求。还接收该计算设备和标识提供方之间的第一安全会话的安全会话参数。从证书服务重新协商或恢复该第一安全会话,这导致证书服务和标识提供方之间的第二安全会话。与用户相关联的用户证书经由。
9、该第二安全会话被提供至标识提供方。0004依据一个或多个方面,从标识提供方接收针对计算设备的用户的用户证书的请求。还接收针对要由证书服务所提供的与标识提供方相关联的用户证书的用户请求。响应于该用户请求,计算设备和标识提供方之间的第一安全会话的安全会话参数被提供至证书服务。从证书服务所接收的用户证书经由证书服务和标识提供方之间的第二安全会话传输至标识提供方。附图说明0005贯穿附图使用相同的附图标记来指代同样的特征。0006图1图示了依据一个或多个实施例的针对计算设备保护用户证书的示例系统。0007图2图示了依据一个或多个实施例的针对计算设备保护用户证书的另一个示例系统。0008图3图示了依据一。
10、个或多个实施例的针对计算设备保护用户证书的另一个示例系统。0009图4图示了依据一个或多个实施例的示例证书服务。0010图5是图示依据一个或多个实施例的用于针对计算设备保护用户证书的示例处理的流程图。0011图6是图示依据一个或多个实施例的用于针对计算设备保护用户证书的另一个示例处理的流程图。说明书CN104094270A2/20页50012图7是图示依据一个或多个实施例的用于针对计算设备保护用户证书的另一个示例处理的流程图。0013图8图示了依据一个或多个实施例的能够被配置为实施针对计算设备保护用户证书的示例计算设备。具体实施方式0014本文对针对计算设备保护用户证书进行了讨论。用户可以是任。
11、意的各种不同安全当事人。在计算设备和标识提供方(例如,WEB服务)之间建立安全会话。该安全会话的诸如一个或多个密钥之类的参数被传输至证书服务,这允许证书服务安全地与标识提供方进行通信。证书服务在证书服务和标识提供方之间建立新的安全会话,并且用户证书经由该新的安全会话从证书服务传递至标识提供方。计算设备并没有新的安全会话的参数并且因此不能访问所传递的用户证书。该证书服务随后在证书服务和标识提供方之间建立附加安全会话。该附加安全会话的诸如一个或多个密钥的参数被传输至计算设备。因此,即使用户证书在计算设备并不了解该用户证书的情况下被提供至标识提供方,该计算设备也能够继续(经由该附加安全会话)与标识提。
12、供方安全通信。0015图1图示了依据一个或多个实施例的针对计算设备保护用户证书的示例系统100。系统100包括计算设备102、标识提供方104、证书服务106和信赖方108,它们中的每一个由一个或多个各种不同类型的计算设备所实施。例如,计算设备102、标识提供方104、证书服务106和信赖方108中的每一个可以由台式计算机、服务器计算机、计算集群(例如,网络或云服务)、移动站点、娱乐电器、通信耦合至显示设备的机顶盒、电视机、膝上或上网本电脑、记事板或平板电脑、蜂窝或其它无线电话、游戏机、汽车用电脑等来实施。虽然系统100被图示为具有一个计算设备102、一个标识提供方104、一个证书服务106和。
13、一个信赖方108,但是系统100可以包括任意数量的计算设备102、任意数量的标识提供方104、任意数量的证书服务106和任意数量的信赖方108。0016计算设备102接收来自计算设备102的用户的用户输入。用户(也被称作安全当事人)经常是人类,但是可替换地可以是一种或多种的各种其它形式,诸如计算机(例如,计算设备102自身)、耦合至计算设备102或与之通信的另一设备、汇集(例如,多个用户和/或多个设备),等等。用户输入可以以各种不同方式来提供,诸如通过按压设备102的小键盘或键盘的一个或多个键,按压设备102的控制器(例如,遥控器、鼠标、轨迹板等)的一个或多个键,在设备102的触摸板或触摸屏上。
14、做出特定手势,和/或在设备102的控制器(例如,遥控器、鼠标、轨迹板等)上做出特定手势。用户输入还可以经由其它物理反馈输入提供至设备102,诸如敲击设备102的任意部分,能够被设备102的运动检测组件所识别的动作(诸如摇动设备102、旋转设备102等),弯曲或折叠设备102,等等。用户输入还可以以其它方式来提供,诸如经由针对麦克风的语音或其它可听输入,经由图像捕捉设备所观察到的手部或其它身体部分的运动,等等。0017计算设备102、标识提供方104、证书服务106和信赖方108能够经由各种不同网络互相通信,该网络诸如互联网、局域网(LAN)、电话网络、企业内部网、其它公众和/或私有网络、它们的。
15、组合,等等。计算设备102、标识提供方104、证书服务106和信赖方108中的一个或多个还能够使用不同协议或技术互相通信,诸如通用串行总线(USB)连接、无线USB说明书CN104094270A3/20页6连接、红外连接、蓝牙连接等。0018信赖方108可以是计算设备102或(例如,计算设备102的)用户可能期望访问的任意的各种不同服务或资源。标识提供方104为信赖方108提供认证功能。例如,信赖方108可以是提供信息或其它信赖方服务的WEB服务,上述信赖方服务诸如社交网络WEB服务、电子邮件WEB服务、经销商WEB服务、银行或其它金融机构WEB服务,等等。作为另一个示例,信赖方108能够提供。
16、对其它功能或网络的访问,诸如对公司网络的访问,对银行账户的访问,等等。信赖方108还可以是计算设备102或者计算设备102的用户可能期望访问的资源或资源接口,诸如文件共享、打印机或其它输出设备、相机或其它输入设备,等等。0019为了访问信赖方108的至少一些功能,用户证书被提供至标识提供方104。在作为汇集(例如,多个用户和/或多个设备)的用户的情况下,汇集的用户证书能够将该汇集作为一个单元进行引用和/或由其成员的证书所组成。这些用户证书可以是标识提供方104的用户名(也被称作用户ID)和密码。可替换地,这些用户证书可以是其它类型的用户证书,诸如生物计量数据(例如,指纹扫描、视网膜扫描、脸部扫。
17、描等)、数字证书和/或从用户的智能卡所获得的其它识别数据、其它标识符、证书或令牌,等等。这些用户证书向标识提供方104认证计算设备102的用户的身份和/或角色。使用哪个用书证书可以基于实施标识提供方104的方式和/或用户的期望而有所变化。例如,如果用户偏向于不使用生物计量数据作为用户证书,则用户可以选择使用其它用户证书和/或选择不访问标识提供方104。0020通常,计算设备102的用户在证书服务106上具有相关联的用户账户,其在本文中也被称作证书服务用户账户。证书服务106针对每个证书服务用户账户保存与标识提供方104相关联的用户账户的用户证书,并且可选地保存与一个或多个另外的标识提供方相关联。
18、的用户账户。在一个或多个实施例中,当用户证书要被提供至标识提供方104时,在标识提供方104和计算设备102之间建立安全会话。计算设备102向证书服务106提供安全会话的安全会话参数。证书服务106对该安全会话进行重新协商,经由计算设备102而在标识提供方104和证书服务106之间形成新的安全会话。该新的安全会话具有计算设备102所未知的新的安全会话参数。证书服务106经由该新的安全会话向标识提供方104提供与标识提供方104相关联的用户证书,并且随后再次重新协商该安全会话。该附加安全会话的安全会话参数被提供至计算设备102,这允许计算设备102按照需要与标识提供方104进行通信,其中计算设备。
19、102的用户已经利用与标识提供方104相关联的用户证书而针对标识提供方104进行了认证。0021可替换地,不同于重新协商安全会话,证书服务106能够恢复其安全会话参数被计算设备102提供给证书服务106的先前的安全会话。安全会话恢复与安全会话重新协商的差别在于,安全会话参数中所包括的所有密钥(和/或安全会话参数中所包括的密钥来自于其的密钥)都随着安全会话重新协商而重新生成。然而,随着安全会话恢复,安全会话参数中所包括的一个或多个密钥(和/或安全会话参数中所包括的密钥来自于其的密钥)被再次使用而无需由证书服务106和/或标识提供方104重新生成。此外,由于安全会话重新协商,证书服务106和标识提。
20、供方104能够(但无需如此)与作为中间方进行操作的计算设备102进行通信,而随着安全会话恢复,证书服务106和标识提供方104能够绕开计算设备102互相通信。0022还应当注意的是,能够执行安全会话恢复和安全会话重新协商的各种组合。例如,说明书CN104094270A4/20页7证书服务106可以首先恢复会话,并且随后重新协商该会话。应当进一步注意的是,能够使用安全会话协商和/或安全会话恢复以外的其它技术。证书服务106能够使用允许计算设备102向证书服务106提供安全会话参数的任意技术,并且允许证书服务106以某种方式对那些安全会话参数进行利用而将用户证书从证书服务106安全地传送至标识提供。
21、方104,而无需计算设备102能够看到或了解该用户证书。0023虽然本文主要参考用户证书进行讨论,但是应当注意的是,如以下更为详细讨论的,证书服务106可替换地(除了用户证书之外或者作为其替代)能够与提供用户证书类似地向标识提供方104提供附加用户特定信息。该附加用户特定信息可以包括有关计算设备102的用户和/或与标识提供方104相关联的用户账户的各种信息,诸如收货地址、账单地址、联系电话号码、信用卡号码等。在一个或多个实施例中,这样的附加用户特定信息仅在计算设备102的用户进行请求的情况下才由证书服务106进行保存并提供。例如,附加用户特定信息可以由用户提供(或者具有来自其的授权),并且因此。
22、仅在用户提供或授权该信息的保存时才能给进行保存。此外,在一个或多个实施例中,如以下更为详细讨论的,与向标识提供方14提供用户证书类似,附加用户特定信息仅响应于指示用户想要令附加用户特定信息提供给标识提供方104的用户输入(例如,选择菜单选项、按钮、图标、链接等)才由证书服务106提供给标识提供方104。0024图2图示了依据一个或多个实施例的针对计算设备保护用户证书的示例系统200。系统200与图1的系统100类似,包括计算设备202、多个(X)WEB服务204和证书服务206。计算设备102是图1的计算设备102的示例,WEB服务204是图1的标识提供方104的每个示例(或者图1的标识提供方。
23、104和信赖方108的组合),而证书服务206是图1的证书服务106的示例。虽然图2参考WEB服务对示例系统加以讨论,但是应当注意的是,参考图2所讨论的技术也能够随其它标识提供方(例如,图1的标识提供方104)使用。0025每个WEB服务204托管一个或多个网页212,使得这些网页可被计算设备202所使用。计算设备202包括从WEB服务204接收网页212的WEB浏览器214,其通常在计算设备202显示或以其它方式呈现所接收的网页。在一个或多个实施例中,WEB浏览器214自动检测在计算设备202所接收的网页何时请求用户证书。0026系统200图示了请求用户证书的示例网页216。网页216是从W。
24、EB服务204所接收并且被WEB浏览器214进行显示的网页212。如所图示的,网页216请求作为用户ID和密码的用户证书。网页216包括提示和数据输入字段,其供计算设备202的用户输入用户的ABC公司或服务的账户的用户ID和密码。0027WEB浏览器214能够以不同方式自动检测在计算设备202所接收的网页正在请求用户证书。在一个或多个实施例中,WEB浏览器214对所接收的网页进行分析并且识别包括用于用户证书的提示和/或数据输入字段的网页,诸如用于用户ID、用户标识符、用户电子邮件地址、密码、个人标识号码(PIN)数值等的提示和/或数据输入字段。该分析和识别能够以不同方式来执行,诸如通过针对包括。
25、“用户ID”、“用户标识符”、“密码”等的标签而分析网页的源描述(例如,HTML(超文本标记语言)或其它标记语言),通过针对文本“用户ID”、“用户标识符”、“密码”等分析所显示的网页。可替换地,网页可以包括向WEB浏览器214指示该网页正在请求用户证书的标签或数值。可替换地,WEB服务204可以独立于网页而提供该网页正在请求用户证书的指示(例如,WEB服务204可以提供一个指示从WEB服务204说明书CN104094270A5/20页8所接收的下一个网页将请求用户证书的网页或其它信号)。可替换地,WEB浏览器214能够被配置以WEB服务204请求用户证书的方式或以其它方式对其加以了解。002。
26、8响应于检测到请求用户证书的网页,WEB浏览器214提示计算设备202的用户该用户证书能够由证书服务206所提供。例如,能够显示指示用户证书能够由证书服务206所提供的菜单选项、按钮、图标、链接等,并且计算设备202的用户能够选择菜单选项、按钮、图标、链接等来指示其期望用户证书由证书服务206所提供。可替换地,响应于检测到请求用户证书的网页,WEB浏览器214能够自动向证书服务206指示证书服务206要提供用户证书。0029不同于WEB浏览器214自动检测网页正在请求用户证书,可替换地,计算设备202的用户能够指示网页正在请求用户证书。该指示可以以各种方式来提供。例如,WEB浏览器214能够将。
27、特定用户输入(例如,特定菜单选项的选择,执行特定手势等)认为是使得证书服务206为该用户提供用户证书的用户请求。响应于这样的用户输入,WEB浏览器214能够确定网页正在请求用户证书,并且能够向证书服务206指示证书服务206要提供用户证书。0030虽然在图2中参考网页进行了讨论,但是应当注意的是,证书服务206能够类似地自动检测来自标识提供方(例如,图1的标识提供方104)的页面或其它请求正在请求用户证书,或者接收这样的用户指示。0031证书服务206保存WEB服务204的WEB服务用户证书218。WEB服务用户证书218能够包括任意数量的计算设备202的任意数量的用户(任意数量的证书服务用户。
28、账户)的用户证书和任意数量的WEB服务204。计算设备202的用户在证书服务206上具有证书服务用户账户,并且为了登录到其证书服务用户账户,计算设备202的用户向证书服务206认证其自己。该认证可以在接收网页216之前和/或接收网页216之后执行。用户能够以各种不同方式向证书服务206认证其自己,诸如通过向证书服务206证明用户拥有有效证书,诸如秘密短语(例如,密码或个人标识号码(PIN)、特定特征(例如,指纹)、对应于证书的私钥(例如,基于智能卡或信任平台模块(TPM)的认证(例如,基于可从TRUSTEDCOMPUTINGGROUP获得的2011年3月的TPM主要规范12修订本116)、临时。
29、秘密(例如,一次性密码),等等。用户向证书服务206认证其自己的方式可以基于证书服务206所实施的方式和/或用户的期望而变化。例如,如果用户偏向于不使用指纹来认证用户,则该用户能够选择向证书服务206认证其自己的其它方式和/或选择不使用证书服务206。0032证书服务206将计算设备202的用户的一个或多个用户证书集合(通过其证书服务用户账户)与特定WEB服务204相关联。用户证书最初被计算设备202的用户提供给证书服务206,或者可替换地由另一设备或服务(例如,具有来自计算设备202的用户的许可)所提供,或者能够由证书服务206所生成并且被其进行保存。用户能够仅提供一次其特定WEB服务204。
30、的用户证书,因为用户证书被证书服务206所保存。当在计算设备202接收到请求用户证书的网页,并且证书服务206要提供用户证书时,证书服务206识别与计算设备202的用户相关联的用户证书以及要从其接收网页的WEB服务204。从其接收网页的WEB服务204能够以不同方式来识别,诸如被包括为统一资源定位符(URL)或其它网页标识符的一部分,被包括为网页的源描述(例如,HTML或其它标记语言)中的标签或其它标识符,等等。0033证书服务206自动为网页216输入计算设备202的用户的用户证书。可替换地,如说明书CN104094270A6/20页9果证书服务206为用户保存了与WEB服务204相关联的多。
31、个用户证书集合,则用户能够被给予针对用户的多个用户证书集合中的哪一个的选择(或者集合之一能够被证书服务206所选择,诸如基于配置设置或者用户之前提供给证书服务206的输入)。证书服务206所输入的特定用户证书可以取决于网页所请求的用户证书。例如,在网页216上针对计算设备202的用户输入用户ID和密码。如以下更为详细讨论的,用户证书在无需计算设备202了解用户证书的情况下由证书服务206在网页216上输入并且经由计算设备202提供至WEB服务204。0034图3图示了依据一个或多个实施例的针对计算设备保护用户证书的示例系统300。系统300类似于图1的系统100和图2的系统200,包括计算设备。
32、302、标识提供方304和证书服务306。计算设备302是图1的计算设备102和/或图2的计算设备202的示例,标识提供方304是图1的标识提供方104和/或图2的WEB服务204的示例,并且证书服务306是图1的证书服务106和/或图2的证书服务206的示例。0035安全会话是指两个实体之间的安全连接,诸如实体提供方304和计算设备302之间,实体提供方304和证书服务306之间,等等。安全会话被保护而防止(在其间建立该安全会话的两个实体以外的)其它实体看到或篡改经由该安全会话传送的数据。安全会话能够以各种不同方式中的任意方式来实施,通常使用一个或多个安全密钥对经由安全会话传输的数据进行加密。
33、和/或解密。在一个或多个实施例中,安全会话使用安全套接字层(SSL)或传输层安全(TLS)而被实施为传输工具,但是可替换地也能够使用其它安全通信技术。因此,虽然其它各方能够看到加密数据,但是其它各方并不知道会话密钥并且因此无法看到或修改数据。0036安全会话具有一个或多个相关联的安全会话参数。这些安全会话参数可以包括一个或多个密钥(例如,一个或多个SSL密钥)、一个或多个COOKIE、一个或多个证书,等等。这些参数与安全会话相关联并且因此也被称作安全会话参数,但是并非这些参数中的全部都需要被保护(例如,SSL密钥通常被保持安全,而COOKIE则通常并不需要如此)。与安全会话相关联的特定安全会话。
34、参数包括足以实施该安全会话的参数,并且可选地可以包括一个或多个另外的参数。例如,对于安全超文本传输协议(HTTPS)连接而言,安全会话参数包括一个或多个SSL或TLS密钥以及一个或多个COOKIE。使用SSL密钥所实施的安全会话的安全会话参数通常包括单个主密钥,从该单个主密钥所得出的四个会话密钥(用于每个方向的加密和签名),并非安全敏感(并且无需保护)的状态(序列号),以及信道绑定令牌(来自重新协商的先前会话的TLS“完成”消息)。0037当用户证书要被提供至标识提供方304时,在标识提供方304和计算设备302之间建立安全会话。该安全会话在图3中被图示为安全会话1(312)。计算设备302向。
35、证书服务306提供安全会话参数314。安全会话参数314是与安全会话1相关联的安全会话参数。计算设备302还可以像证书服务306提供各种附加信息以便促进证书服务306向标识提供方304提供用户证书。所提供的特定附加信息能够根据用户证书被请求和/或提供至标识提供方304的方式而有所变化。例如,如果用户证书由网页(例如,图2的网页216)所请求,则附加信息可以包括各种网页状态,诸如JAVASCRIPT状态、COOKIE、文档对象模块(DOM)存储、闪存等。0038利用与安全会话1相关联的安全会话参数的知识,证书服务306能够读取标识提说明书CN104094270A7/20页10供方304经由安全会。
36、话1所发送的数据并且还经由安全会话1向标识提供方304发送数据。证书服务306能够使用计算设备302作为中介经由安全会话1与标识提供方304进行通信,这在图3中被图示为安全会话1(316)。使用计算设备302作为中介,来自标识提供方304的数据经由安全会话1被传输至计算设备302,并且随后经由安全会话1从计算设备302传输至证书服务306,并且来自证书服务306的数据经由安全会话1被传输至计算设备302并且随后经由安全会话1从计算设备302被传输至标识提供方304。作为中介的计算设备302是指将从标识提供方304所接收的数据经由安全会话简单地传递至证书服务306,并且将从证书服务306所接收的。
37、数据经由安全会话传递至标识提供方304的计算设备302。0039利用作为标识提供方304和证书服务306之间的中介进行操作的计算设备302,标识提供方304向计算设备302发送数据并从其接收数据。标识提供方304无需了解(但是可替换地可以对其有所了解)证书服务306和/或由证书服务306提供给标识提供方304的数据,因为该数据是由标识提供方304从计算设备302所接收。类似地,标识提供方304无需了解从标识提供方304提供给计算设备302的数据被传递至证书服务306(但是可替换地可以对其有所了解)。因此,标识提供方304实际上相信标识提供方304是在与计算设备302而不是证书服务306进行通信。
38、。0040证书服务306随后重新协商安全会话1。该重新协商导致在标识提供方304和证书服务306之间建立新的安全会话,并且在图3中被图示为安全会话2(318)。重新协商安全会话是指为安全会话生成一个或多个新的安全会话参数(例如,一个或多个安全密钥)。重新协商安全会话可以使用所涉及各方(例如,证书服务306和标识提供方304)所公知的各种技术以各种方式来执行。例如,安全会话重新协商能够使用SSL重新协商或者如2010年2月INTERNETENGINEERINGTASKFORCERFC5746的“TRANSPORTLAYERSECURITY(TLS)RENEGOTIATIONEXTENSION”中。
39、所讨论的重新协商来执行。0041安全会话的重新协商利用计算设备302作为中介而在标识提供方304和证书服务306之间完成。因此,虽然重新识别在标识提供方304和证书服务306之间执行,但是标识提供方304继续与计算设备302进行通信而无需了解到安全会话2是与证书服务306而不是计算设备302所建立。然而,由于安全会话的重新协商在标识提供方304和证书服务306之间完成并且计算设备302作为中介,所以计算设备302并不了解与安全会话2相关联的安全会话参数。0042证书服务306经由安全会话2向标识提供方304提供所请求的用户证书。用户证书能够以任意的各种不同方式来提供,诸如使用HTTPSPOST。
40、请求、使用超文本传输协议(HTTP)PUT请求、使用JAVASCRIPTSUBMIT方法、使用基本认证方案、使用摘要认证方案等提供。可替换地,用户证书能够基于用户证书自身的属性而以其它方式来提供(例如,针对数字认证证书,安全会话自身的建立能够提供用户证书)。标识提供方304因此就像用户证书由计算设备302所提供那样而接收用户证书,但是计算设备302并不了解该用户证书。0043证书服务306随后重新协商安全会话2。该重新协商导致了在标识提供方304和证书服务306之间建立新的安全会话,并且其在图3中被图示为安全会话3(320)。安全会话的重新协商利用计算设备302作为中介而在标识提供方304和证。
41、书服务306之间完成。因此,虽然重新协商在标识提供方304和证书服务306之间执行,但是标识提供方继续说明书CN104094270A108/20页11与计算设备302进行通信并且无需了解到安全会话3是与证书服务306而不是计算设备302所建立。然而,由于安全会话的重新建立是在标识提供方304和证书服务306之间完成并且计算设备302作为中介,所以计算设备302并不了解与安全会话3相关联的安全会话参数。0044证书服务306向计算设备302提供安全会话参数322。安全会话参数322是与安全会话3相关联的安全会话参数。利用对与安全会话3相关联的安全会话参数的知识,计算设备302能够读取标识提供方3。
42、04经由安全会话3所发送的数据并且还经由安全会话3向标识提供方304发送数据。计算设备302能够经由安全会话3与标识提供方304进行通信,其在图3中被图示为安全会话3(24)。因此,计算设备302能够继续经由安全会话与标识提供方304进行通信,并且用户证书由证书服务306利用计算设备302而经由安全连接提供给标识提供方304,尽管计算设备302并不了解该用户证书。0045参考重新协商安全会话而对系统300进行讨论。可替换地,不同于使用安全会话重新协商,证书服务306能够使用安全会话恢复。如果使用安全会话恢复,则与安全会话1相关联的安全会话参数中所包括的一个或多个密钥(和/或安全会话参数中所包括。
43、的密钥所属的密钥)被重新使用并且无需由证书服务306和/或标识提供方304重新生成。因此,不同于重新协商安全会话1以建立安全会话2,安全会话1能够被恢复以建立安全会话2。类似地,不同于重新协商安全会话2以建立安全会话3,安全会话1能够被恢复以建立安全会话3。还应当注意的是,如果使用了安全会话恢复,则证书服务306和标识提供方304之间的通信并不通过计算设备302;证书服务306和标识提供方304之间的通信绕过计算设备302,以使得计算设备302并不操作为证书服务306和标识提供方304之间的中介。0046恢复安全会话恢复能够使用所涉及各方(例如,证书服务306和标识提供方304)所知的各种技术。
44、以各种方式来执行。例如,安全会话能够使用SSL恢复来执行,或者使用2008年1月的NETWORKWORKINGGROUPRFC5077“TRANSPORTLAYERSECURITY(TLS)SESSIONRESUMPTIONWITHOUTSERVERSIDESTATE”中所讨论的恢复来执行。0047应当注意的是,虽然在图3中并未图示,但是计算设备302能够重新协商安全会话3,这使得在标识提供方304和计算设备302之间建立了新的安全会话4。与安全会话4相关联的安全会话参数将不会被证书服务306所知,因此这将无法读取经由安全会话4所发送的数据并且无法经由安全会话4发送数据。0048还应当注意的是。
45、,当安全会话参数从计算设备302传输至证书服务306,或者从证书服务306传输至计算设备302时,安全会话参数以安全的方式进行传输以防止任何干涉设备获得安全会话参数。安全会话参数(以及在计算设备302和证书服务306之间传输的其它数据)能够以各种不同的安全方式进行传输,诸如计算设备302利用证书服务306的公/私钥配对中的公钥或者计算设备302和证书服务306双方所知的密钥对安全会话参数进行加密,证书服务306利用计算设备302的公/私钥配对中的公钥或者计算设备302和证书服务306双方所知的密钥对安全会话参数进行加密,等等。0049此外,在一个或多个实施例中,安全会话参数(或至少安全密钥)被。
46、计算设备302和证书服务306以安全方式进行保存。例如,安全会话参数能够被保存在计算设备302的信任计算库或信任平台模块中,并且从计算设备302的信任计算库或信任平台模块而不是计算设备302的WEB浏览器传输至证书服务306。类似地,安全会话参数能够被保存在证书服说明书CN104094270A119/20页12务306的设备的信任计算库或信任平台模块中,并且从证书服务306的信任计算库或信任平台模块而不是证书服务306的其它组件或模块被传输至计算设备302。0050应当注意的是,如以上所讨论的,证书服务306能够经由其中计算设备302作为中介的安全会话与标识提供方304进行通信,在这种情况下,。
47、标识提供方304实际上相信标识提供方304正在与计算设备302而不是证书服务306进行通信。因此,在这样的情况下,无需对标识提供方304进行改变以支持本文中所讨论的针对计算设备保护用户证书的技术。标识提供方304在没有针对其的任何修改的情况下继续与计算设备302进行通信,这允许标识提供方304不会注意到其从证书服务306接收用户证书的事实。0051还应当注意的是,虽然图3中图示了三个安全会话,但是安全会话能够被重新协商或恢复任意次数。例如,安全会话能够在建立安全会话1之后以及建立安全会话2之前被重新协商或恢复任意次数。作为另一个示例,安全会话能够在建立安全会话2之后以及建立安全会话3之前被重新。
48、协商或恢复任意次数。0052返回图2,本文包括关于计算设备202和证书服务206之间的各种数据或信息的通信(例如,用户证书的至少一部分、特定数值等)的讨论。这样的数据或信息能够以各种不同的安全方式进行通信,诸如计算设备202利用证书服务206的公/私钥配对中的公钥或者计算设备202和证书服务206双方所知的密钥对该数据或信息进行加密,证书服务306利用计算设备202的公/私钥配对中的公钥或者计算设备202和证书服务206双方所知的密钥对该数据或信息进行加密,等等。0053在一个或多个实施例中,WEB浏览器214向计算设备202的用户提示用户证书能够由证书服务206所提供,并且用户输入请求证书服。
49、务206提供能够被接收的用户证书。针对用户的提示无需指定任何部分的用户证书。可替换地,WEB浏览器214能够在提示中显示或者以其它方式呈现至少一部分用户证书。例如,能够出现用户具有与相同WEB服务204相关联的多个不同用户证书的情形。在这样的情况下,WEB浏览器214能够与证书服务206进行通信以获得与提供请求用户证书的网页的WEB服务204相关联的用户证书的至少一部分(例如,用户名但没有密码)。WEB浏览器214能够在提示中显示所获得的用户证书的各个不同部分(例如,各个用户名)并且接收用户对用户证书之一的选择(例如,经由菜单选项、按钮、图标、链接等的选择)。如以上所讨论的,WEB浏览器214将所选择的用户证书之一的指示传输至证书服务206,后者继续将所选择的用户证书之一(例如,用户名和密码)提供给WEB服务204。0054作为另一个示例,WEB浏览器214能够与证书服务206进行通信以获得与提供请求用户证书的网页的WEB服务204相关联的用户证书的至少一部分(例如,用户名但没有密码)。WEB浏览器214能够在提示中显示所获得的用户证书的部分。例如,如果与WEB服务214相关联的用户名是“ALICETHEGREAT”,则WEB浏览器214能够显示引用“单击此处作为ALICETHEGREAT签到”的菜单选项、按钮或链接。如以上所讨论的,如果被提供至WEB服务204的请求该用户证书。