端点识别和安全的制作方法

文档序号:7627263阅读:117来源:国知局
专利名称:端点识别和安全的制作方法
技术领域
本发明涉及端点间通信领域。本发明尤其涉及识别实体端点的地址并且提供用于端点间安全通信的安全信息。
背景技术
现代计算机网络已变得无处不在,使得几乎所有的通信类型中都存在网络的身影。作为实例,可使用计算机网络传输电子邮件数据。可使用计算机网络访问海量的静态和动态数据资源,例如可以通过互联网或其他广域网和局域网。此外,计算机网络还可以是在现代电话应用中用来在交换点之间传输语音和传真数据的主要介质。
网络上的数据从一个端点传播到另一个端点。在传输至端点期间,该数据可以传播通过其他端点。端点通常是可寻址的,这就意味着可使用诸如互联网协议(IP)、媒体访问控制(MAC)地址、统一资源标识符(URI)之类的一个指定地址来识别该端点。典型的端点包括处理器、服务器、Web服务、电邮地址和资源等等。
大量有用数据在网络上传输的同时,也有恶意和/或不道德的个人预谋占用无数的资源以危及整个网络。这些个人可以从受攻击的网络中提取数据用于欺骗或恶意使用。例如包括了在端点间传递信用卡信息的电子商务交易可能会受到攻击使得个人能够欺骗性地使用该信用卡信息以获取商品或服务。
个人使用各种方法让网络泄密。例如,个人可以“窃取”网络线路以“收听”网络上的通信。个人还可以使用“哄骗(spoofing)”技术。哄骗包括从诸如计算机、CPU、Web服务器等等的资源处发送信息,而显示出的资源并不是发送信息的资源。例如,一个欺骗性的Web服务器会使用一个访问Web服务器的个人所信赖的互联网协议(IP)发送自我识别信息,而实际上所述Web服务器的IP地址与其宣称的IP地址不同。
业已使用各种技术来抵御网络攻击行为。举几个例子来说,使用加密技术对数据进行扰乱以使得窃听网络的个人无法理解这些数据。为了防止哄骗,已实现了要求识别信息表达的各种认证技术。这样资源就提供诸如口令之类的令牌为网络上的其他资源验证它的标识。
某些安全系统使用预先会话引导程序。预会话引导程序涉及端点间的信息交换用以在发送和接收该会话主题的数据之前认证这些端点。而发送认证信息之前,用户试图访问的端点是不能够验证进行通信的端点就是可信任端点或者期望端点。这样,预会话引导程序交换实际上就是可能发送和接收哄骗信息的不可信交换。因此需要一种新的并且是有效的系统,它无需预会话引导程序安全交换或者能够让预会话引导程序安全交换更为安全。
现存系统的另一个挑战是参考存储地址通常包括在其中可以发送信息的单地址。例如,一个参考可包括个人的电邮地址。要是该电邮地址是工作电邮地址的话,所述个人就可能无法及时接收到送至该地址的信息,比如在个人不工作的时候。此外,个人可能会有多个能够联系到他们的地址。当前的系统通过发送消息给个人请求用户期望用于为该用户选择合适的地址。因此需要一种全新并有效的系统,它允许个人用特定标识为消息写上地址并且用该特定标识让所述消息到达最合适端点。

发明内容
一个实施例包括了含有地址字段的数据结构。所述地址字段包括一个或更多用于实体的端点地址。为了便于与所述实体进行安全通信,所述数据结构还包括了含有一个或多个(诸如密钥的)钥匙的安全字段。地址字段和安全字段的内容串行地位于数据结构内。所述数据结构是可扩展的,从而能够添加新的地址字段和安全字段。
另一个实施例包括了含有标识字段的数据结构。所述标识字段识别一个实体。该数据结构还包括一个或更多用于实体的端点地址。标识字段和地址字段的内容串行地位于数据结构内。所述数据结构是可扩展的,从而能够添加新的标识字段和地址字段。
另一个实施例包括了一种创建参考数据结构的方法。该方法包括创建地址字段的动作,所述地址字段含有一个或更多用于实体的端点地址。本方法还包括创建含有一个或更多密钥的安全字段以便于与实体进行安全通信。本方法也包括串行排列地址字段和安全字段内的数据以创建串行化可扩展的数据结构。
再一个实施例包括了一种创建参考数据结构的方法。该方法包括创建含有识别实体的数据的标识字段的动作。本方法还包括创建含有一个或更多用于实体的端点地址的地址字段。此外,本方法也包括串行排列标识字段和地址字段内的数据以创建串行化可扩展的数据结构。
一个实施例包括在网络上端点间进行通信的方法。该方法包括访问串行化可扩展的数据结构以获取网络上实体的端点地址。该方法还包括访问所述串行化可扩展的数据结构用以获取安全密钥。而且本发明还包括使用安全密钥加密数据。此外,本发明包括发送数据给网络上实体的端点地址。
在此描述的某些实施例在无需预会话安全引导程序安全交换的情况下就能方便网络上的通信。这是通过将安全信息与端点地址信息串行排列来实现的。实施例也考虑了要将标识用于实体,在所述实体中可使用该标识对用于访问该实体的多个端点地址进行识别。
本发明的这些或其他好处和特性将在如下的描述和附加权利要求中变得更为显而易见,或者可以通过对其后阐述的本发明实践而探知。


为了以可获取的方式对本发明上述的和其他的优点和特征进行描述,以上被简述的本发明的详尽说明将参考附图中示出的特定实施例进行阐述。应该理解这些附图仅描述本发明的典型实施例因此不考虑其范围的限制,将通过使用附图来描述和说明本发明另外的特性和细节,这些附图包括图1示出了典型的端点通信,其中在参考内存储端点和安全信息;图2示出了包括了多个端点地址的样本参考;图3示出了将参考合并以形成合并参考的实例;图4示出了在本发明一个实施例中实现的方法;图5示出了可以在其中实施本发明某些方面的一个环境。
具体实施例方式
在一个实施例中,通过一个已经具有参考地址的期望安全信息以寻址另一实体地址的实体,就可以不再需要预会话引导程序。若所述安全信息包括加密钥,那么只要具有参考的实体与其他实体一开始通信,就可发送加密信息给其他实体并且接收来自这些实体的加密信息。
图1示出了可在其中实施本发明实施例的一个环境。实体A 102需要与实体B104开始会话。实体A 102具有由卷轴示出的数据结构106。在此实施例中,所述数据结构106是包括地址字段108和安全信息字段110的参考。
地址字段108包括至少一个地址用于实体B。该地址可以是,例如处理器的MAC地址、网络服务器的统一资源定位器(URL)或者统一资源标识符(URI)、电邮通信的电邮地址、电话、传真、寻呼机和/或蜂窝电话通信的电话号码、互联网消息(IM)地址、物理邮件地址等等。
安全信息字段110可以包括,例如身份标识、可验证证明、加密钥、证书、密码等等的安全信息。在一个实施例中,当实体A尝试开启与实体B的会话时,所述安全信息包括期望从实体B返回的信息。可选地,所述安全信息有益于识别会话过程中由实体B发送的作为该会话数据传输的部分的信息。在某些实施例中,所述安全信息字段可包含用于加密和解密数据的公钥。当所述安全信息字段包括加密数据的密钥时,实体A 102能够开始发送加密数据给实体B 104。如果实体B 104无法响应,那么实体B 104很可能不具备对应了B 104使用的公钥的私钥,这样实体B 104就可能是哄骗者。因此实体A 102关闭与实体B 104的任何开启的会话以阻止实体B 104的恶意动作。
包含在安全信息字段110内的某些指定的安全信息包括服务主体名称(SPN)、用户主体名称(UPN)、X.509流量分析(thumbprint)、安全令牌、发行和序列号、来自优秀密钥(PGP)方案的公钥、嵌入证书、可验证DNS声明等等。
安全信息也可包括生物测定认证数据的数据表示。例如,安全信息字段110可以包括代表了指纹、虹膜扫描、语音识别、DNA识别等等的信息。
在一个实施例中,如图1所示可由实体A 102从诸如实体C 112的第三方处带外(out-of-band)接收数据结构106。实施例允许包括地址信息和安全信息的数据被串行化。例如在一个实施例中,数据结构106可以是可扩展标记语言(XML)文档。一个包括了地址和安全信息的样本XML块可以如下构造
<wsaEndpointReference>
<wsaAddress>http//wh1.fabrikam123.com/Purchasing</wsaAddress>
<wsiSecurity>
<wsiDnsClaim>fabrikam123.com</wsiDnsClaim>
</wsiSecurity>
</wsaEndpointReference>
在此实例中,安全字段包括在地址字段中网站识别的可验证DNS声明。该可验证DNS声明可按照与安全HTTPS(TLS/SSL)协议类似的方式使用。会话期间从实体B 104送至实体A 102的安全信息可由实体A 102,即信息消费者进行验证。本发明的实施例还允许对现存安全规范的扩展。例如,实施例可包括通过https或通过由网络服务(WS)安全规范之一描述的方法来提供标识信息。
本发明的实施例允许安全信息字段110内包含多片安全信息。这样就可以通过要求多片安全信息来增加安全性。该实例与个人被要求提供两个(或更多)识别形式以验证它们的标识的情况相类似。具有多片安全信息的XML块的实例如下<wsaEndpointReference>
<wsaAddress>http//wh1.fabrikam123.com/Purchasing</wsaAddress>
<wsiSecurity>
<wsiSecurityChoices>
<wsiSecurity>
...choice 1...
</wsiSecurity>
<wsiSecurity>
...choice 2...
</wsiSecurity>
<wsiMultipleSecuritiesRequired>
<wsiSecurity>
...required security 1...
</wsiSecurity>
<wsiSecurity>
...required security 2...
</wsiSecurity>
</wsiMultipleSecuritiesRequired>
</wsiSecurityChoices>
</wsiSecurity>
</wsaEndpointReference>
可以实现允许使用各种安全信息片段用于认证的各种要求和规则。例如,安全信息字段110可考虑到安全信息片段的布尔组合。该安全规则可要求两个指定的安全信息片段。可选地,该安全规则会允许一个安全信息片段被另一个安全信息片段所取代。其他规则会允许这些安全信息片段对于指定种类的交互、通信信道、当时时刻、消息大小、消息内容类型等等都是可用的。
此外,因为参考包括安全信息,所以可基于Web服务通信中诸如“送至(To)”、“来自(From)”和“回复(Reply To)”之类的可寻址字段在实体处建立安全规则。例如在实体A 102具有的数据结构106内含关于另一实体B 104的安全信息并且该实体A 102接收来自实体B 104的消息的情况下,因为访问可以是预先授权的,所以安全访问的认证就可基于“送往”、“来自”和“回复”或其他字段。
当接收到诸如数据结构106的参考时,就需要确保安全信息字段110内的安全信息是可靠的并值得信赖的。在一个实施例中,当接收来自第三方实体C 112的参考时,是可以完成在第三方的是可信源并且参考仅发送通过可信赖的第三方实体C 112。当无法建立可信链接时,本发明的某些实施例允许由要嵌入的签名包封的参考。签名可以包封该参考和它的数据。在一个实施例中,该情况可使用XML包封的签名实现。也可使用其他的签名表示。而且其他的实施例可以使用嵌入参考内的安全首部,诸如WS-安全的安全首部。使用安全首部就允许多重签名和加密。在另一个实施例中,可使用与数据结构106分开存储的签名来签署该数据结构106。
现参见图2,示出了包括实体的Uber(或者Global)标识的其他方面。特别地,数据结构202可以指定消息能够发送给实体的地址。数据结构202包括标识字段和端点地址字段。标识字段通常包括用于对实体寻址消息的标识。地址字段包括所述消息可以发送到的指定端点地址。这样,无需明确提供用于访问实体的特定介质或端点类型地址,用户就可使用实体的Uber-identity。数据结构202可能是图1中示出的数据结构102的部分。可选地,数据结构102也可以是数据结构202的部分。在另一个实施例中,数据结构202可以包括诸如图1所述数据结构102之类的多个不同的参考。
图2示出了包含有为实体指定各种端点地址的字段的数据结构202。在此实例中,数据结构202内的所述字段指定了用于互联网消息(IM)客户机250、陆上线路电话号码252、蜂窝电话号码254、传真机号码256、物理邮件地址258、电邮地址260等等的地址。在一个实施例中,委托也可被用作实体的地址。例如,属于不同实体的地址可以用作某一实体的地址。例如在一个实体把特定任务类型委托给其他实体时,上述功能是很有用的。例如若是一个实体把管理任务委托给管理助理,就可以把涉及管理项目的电邮指向包含在参考内的电邮地址,但是属于管理助理。在一个可选实施例中,数据结构还可包括关于被委托任务的实体的信息。这些信息可包括识别信息、委托范围等等。
在本实施例中,使用了诸如XML文档的可扩展数据结构202。这样,这些地址就不限于预置的地址组,而是可以按需或者在技术发展的情况下添加各种地址。
实施例允许在数据结构202内指定关于可使用何种通信介质和地址来访问实体的指定端点的规则。也可使用指示了在何时、为何和怎样使用标识的指定端点的地址来存储策略规则。如下是一个数据结构实施例实现的实例<UberIdentity>
<GlobalIdentity>...</GlobalIdentity>
<GlobalIdentityVersion>...</GlobalIdentityVersion>
<Endpoints>
<Endpoint>
...endpoint identification...
<SelectionPolicy Preference=”...”>
<Transports>...</Transports>
<Protocols>...</Protocols>
<DateTimeRange>...</DateTimeRange>
<Sensitivities>...</Sensitivities>
<Size>...</Size>
<Urgency>...</Urgency>
<Priority>...</Priority>
<Classification>...</Classification>
<Topics>...</Topics>
</SelectionPolicy>
<Endpoint>
...
</Endpoints>
</UberIdentity>
在此实例中,XML块包括了端点地址列表。端点地址内是描述了应该何时使用特定端点的优先策略。特别地,该实例示出了基于一组传输或可用协议、日期和/或时间范围、发送给实体的数据敏感度、发送给实体的数据的紧急或优先权、发送给实体的数据的分类(工作或个人)和发送给实体的数据的主题等等来选择端点的准则。
其他的实施例允许在数据结构202内的策略说明列表中列出的端点地址。另一些实施例预料到无策略信息可提供。这样,可以使用其他机制选择端点地址。可以通过已被安全提示的用户解决冲突、使用机器已注册默认、使用应用程序已注册默认、使用用户已注册默认、调用应用程序指导逻辑、使用习惯已注册扩展、考虑数据或期望动作的其他方面等等来选择地址。
在某些实施例中,端点地址的决定也可以基于指定的接收器或接收器的属性。例如对端点地址的选择可以基于诸如标识、地址分类、通用属性、私人策略之类的属性。也可以使用其他复杂的表述来确定使用哪个端点地址联系实体。例如,如果实体登录到IM并且演示软件不在演示模式下运行,那么表述可以指导营业时间内特定地址的使用。
此外,也可基于可以通过端点地址参考被联系位置处存在的实体做出地址端点的决定。可以使用各种机制确定在一个端点地址处是否存在于一个实体。例如像微软消息器(Microsoft Messenger)、雅虎消息器(Yahoo Messenger)和ICU之类的IM服务可在实体在线时公布。可以使用端点参考来确定实体的存在。可以使用端点和Web服务器描述语言(WSDL)联系来确定实体的存在。可使用如客户机列表中显示的网络上机器的存在来确定一个实体存在于该机器。可以使用基于当时时刻的实体期望位置来确定实体的存在。可使用诸如通过ping地址或请求开启会话来联系的尝试以确定实体的存在。可使用对等存在数据来确定一实体存在于特定的端点地址。可使用特定应用程序的运行来确定实体的存在。可使用诸如显示给用户的显示模式的应用程序模式来确定实体存在。
某些实施例便于两个实体或更多Uber-identity的合并。例如,像图3中示出的实体A 102的实体,可接收来自于实体C 112的用于实体B 104的参考数据结构106中的端点地址信息。可由实体A 102用实体B 104的附加端点地址从实体D 372接收数据结构370中的附加参考。来自数据结构106和数据结构370的地址组合成由数据结构306代表的合并参考。
当合并参考时,可能会出现冲突信息。例如,数据结构106和数据结构370可以具有某一实体的不同工作电邮地址。可以使用多种方法解决冲突数据的问题。这些方法包括安全提示用户解决冲突、使用机器已注册默认、使用应用程序已注册默认、使用用户已注册默认、调用应用程序特定的逻辑、使用定制的已注册扩展、考虑发送给实体的数据或期望动作的各个方面以及选择最近输入地址等等。
当在此示出的实施例已经将Uber-identity显示成参考文档时,其他的实施例允许Uber-identity作为指向其他参考文档的指针的集合。例如,XML的Uber-identity文档可以包括对XML参考文档的参考,其中所述参考文档包括地址和安全信息字段。
在某些实施例中,UberIdentity还可包括如上所述的全局标识版本(GlobalIdentity Version)的增量值。在UberIdentity的EndPoints部分内任何值的改变都导致上述值的增加。这样,就可兑现UberIdentity参考以使得能够检测到更为新近的参考。
本发明提出的实施例考虑到转发标识文档或参考文档给其他实体的方法。因此某些实施例能够指明信息在什么时候被共享。例如,参考可以包括多个地址。可将某些地址标识为可共享,而其他的则不能。这样当转发参考给其他实体时,就在发送到其他实体前从参考中移除非共享地址。在一个实例中,良好性态的程序可以认出参考的可共享属性或非共享属性以及地址。该良好性态的程序可以在该参考被转发给其他应用程序或实体前就从所述参考中移除非共享属性。
实施例中包括Uber-identity的安全和检验参考与上述结合进行图1描述的参考的安全相类似。检验带有Uber-identity的参考的方法包括带有Uber-identity的参考的接收器在接受和/或使用密钥和令牌之前都要对全部密钥和令牌进行检验。例如可以通过安全提示用户、在可信赖或已检验存储装置内放置密钥或令牌、与信赖方的交叉证明或检验、发送备用形式标识、使用密钥或其他密码检查来保护之类的方式来完成检验。在一个实例中,可以由与前述相类似的含有签名成分的Uber-identity来实现交叉证明。此外,该Uber-identity包括一个或更多含有来自其他实体的交叉证明、认证和/或验证说明的证明元素。在一个实施例中,证明元素可包括指示出证明类型和/或声明的验证强度的信息。某些实施例允许对Uber-identity参考进行加密。特别地在一个实施例中,可以明文提供安全策略,然而组成Ubcr标识的实际数据可以对于某些实体被加密。
现在参见图4,本发明的一个实施例示出了一种包括各种动作的方法。图4示出的方法方便了计算机网络上端点间的通信。方法400包括访问串行化可扩展数据结构以获取网络上实体的端点地址(动作402)。所述数据结构可以是诸如图1示出的数据结构106、图2示出的数据结构202、图3示出的数据结构306和数据结构372。端点地址可以包括如图1所示存储在地址字段108内的一个或更多的地址。访问串行化可扩展数据结构以获取端点地址的动作(动作402)还可包括访问策略规则以确定从多个端点地址中为实体选择哪个端点地址。选择端点地址的规则已在上述讨论。
方法400还包括访问串行化可扩展数据结构以获取安全密钥的动作(动作404)。安全密钥可以是在图1中示出的安全信息字段110内的安全信息。如上所述,安全密钥可以是公钥或者为加密数据的使用的其他加密钥。访问串行化可扩展数据结构以获取安全密钥的动作(动作404)还可包括访问安全规则以确定获取合适的安全密钥。
方法400还包括使用安全密钥加密数据的动作。可以使用任何合适的加密方法完成加密。加密方法已在之前讨论过。
方法400还包括发送数据给端点地址的动作。这样,方法400在无需预会话安全引导的情况下就能在网络上的端点间方便地发送数据。
参见图5,用于实现本发明的典型系统包括传统计算机520形式的计算设备,计算机520包括处理单元521、系统存储器522以及把包括系统存储器522在内的各种系统组件耦合至处理单元521的系统总线523。所述系统总线523可以是任何若干类型的总线结构,这些结构包括存储器总线或存储器控制器、外围总线和使用任何多种的总线架构的本地总线。系统存储器包括只读存储器(ROM)524和随机存取存储器(RAM)525。包含基本例程的基本输入/输出系统(BIOS)526可以存储在ROM 524中,其中所述BIOS 526帮助诸如在启动期间在计算机520内各个元件间信息传递。
计算机520还可包括用于对磁性硬盘539进行读取和写入的磁性硬盘驱动器527,用于对可移动磁盘529进行读取和写入的磁盘驱动器528以及用于对诸如CD-ROM或其他光学媒介的可移动光盘531进行读取和写入的光盘驱动530。磁性硬盘驱动器527、磁盘驱动器528以及光盘驱动器530分别通过硬盘驱动器接口532、磁盘驱动器接口533以及光盘驱动器接口534与系统总线523相连。这些驱动器和它们相应的计算机可读媒介为计算机520提供计算机可执行指令、数据结构、程序模块以及其他数据的非易失性存储。虽然这里描述的典型环境使用了磁性硬盘539、可移动磁盘529以及可移动光盘531,但是可以使用用于存储数据的其他类型的计算机可读媒介,包括磁带、闪存卡、数字通用盘、柏努利磁带、RAM以及ROM等等。包括一个或多个程序模块的程序代码集合可以存储在硬盘539、磁盘529、光盘531、ROM 524或RAM 525内,这些代码集合包括操作系统535、一个或更多应用程序536、其他程序模块537和程序数据538。用户可以使用键盘540、定位设备542或者其他诸如麦克风、操纵杆、游戏操纵杆、卫星电视天线、扫描仪之类的输入设备(未示出)将命令和信息输入给计算机520。这些和其他的输入设备常可以通过串行端口接口546耦合至系统总线523而与处理单元521相连。可选地,输入设备可以连接到诸如并行端口、游戏端口或通用串行接口(USB)的其他接口上。监视器547或其他显示设备也可以经由诸如视频适配器548的接口与系统总线523相连。除了监视器,个人计算机通常还包括诸如扬声器和打印机的其他外围输出设备(未示出)。
计算机520使用逻辑连接到诸如远程计算机583和593的远程计算机来实现网络环境内的操作。远程计算机583和593可以是个人计算机、服务器、路由器、网络PC、对等设备或者其他的公共网络节点,并且通常包括与上述计算机520相关的许多或全部元件。图5描述的逻辑连接包括作为实例而非限制的局域网(LAN)551和广域网(WAN)552。这些联网环境在办公室范围或公司范围计算机网络、内联网和因特网中是常见的。
在使用LAN网络环境时,计算机520通过网络接口或适配器553与本地网络551相连。在使用WAN网络环境时,计算机520可以包括调制解调器554、无线链路或其他装置以建立与诸如因特网的广域网552的通信。可以内置或外置的调制解调器554经由串行端口接口546与系统总线523相连。在网络环境中,所述涉及计算机520或其部分的程序模块可以存储在远程存储器存储设备内。可以理解所示网络连接是示意性的并且也可以使用其他方法建立与广域网552的通信。
在不背离本发明精神或本质特征的情况下,还能以其他特定形式具体表达本发明。应该认为所述实施例只是出于示意性而非限制性的目的。因此本发明范围由所附权利要求而不是前述说明书所指示。所有在权利要求等效意义和范围内的改变都包含在权利要求范围之内。
权利要求
1.一种数据结构,该数据结构包括包含指向某实体的一个或更多端点地址的地址字段;包含一个或更多密钥以便于与所述实体在一个或更多端点地址中的至少一个上进行安全通信的安全字段;以及其中地址字段和安全字段的内容在所述数据结构内被串行化并且所述数据结构是可扩展的,从而能够添加新的地址字段和安全字段。
2.如权利要求1所述的数据结构,其特征在于,该数据结构还包括识别所述实体的标识字段。
3.如权利要求1所述的数据结构,其特征在于,所述地址字段包括一个或更多含有地址和安全信息的参考。
4.如权利要求1所述的数据结构,其特征在于,所述端点地址包括MAC地址、URL、URI、电邮地址、电话号码、IM地址或物理邮件地址中的至少一个。
5.如权利要求1所述的数据结构,其特征在于,所述地址字段包括用于识别该实体的委托实体的地址。
6.如权利要求1所述的数据结构,其特征在于,所述安全字段包括SPN、UPN、X.509流量分析、安全令牌、发行号或序列号、公钥、嵌入式证书和可验证DNS声明中的至少一个。
7.如权利要求1所述的数据结构,其特征在于,所述安全字段包含生物认证数据,该数据包括了代表指纹、虹膜扫描、语音识别和DNA识别数据中的至少一个。
8.如权利要求1所述的数据结构,其特征在于,所述数据结构在XML块中是串行化的。
9.如权利要求1所述的数据结构,其特征在于,所述安全字段包含安全规则。
10.如权利要求9所述的数据结构,其特征在于,所述安全规则包含安全信息的布尔组合。
11.如权利要求9所述的数据结构,其特征在于,所述安全规则使用来自网络服务器通信的诸如“送至”、“来自”以及“回复”字段之类的可寻址字段。
12.如权利要求1所述的数据结构,其特征在于,所述数据结构还包括在使用特定端点地址发送消息给实体时的策略描述。
13.如权利要求12所述的数据结构,其特征在于,所述策略包括了含有日期和/或时间范围、数据敏感度、数据紧急程度或优先权、数据分类、数据主题、提示结果的用户选择、机器已注册默认、应用程序已注册默认、用户已注册默认、应用程序特定的逻辑、定制的已注册扩展、接收器属性以及实体存在中的至少一个的准则。
14.如权利要求13所述的数据结构,其特征在于,由已公布IM数据、端点参考、WSDL联系、端点联系、网络上机器存在、当时时刻、联系尝试、对等存在数据、特定应用程序运行以及应用模式中的至少一个来确定所述实体存在。
15.如权利要求1所述的数据结构,其特征在于,所述数据结构由嵌入签名包封。
16.如权利要求15所述的数据结构,其特征在于,所述嵌入签名是XML包封签名。
17.如权利要求1所述的数据结构,其特征在于,该数据结构还包括嵌入的安全首部。
18.如权利要求1所述的数据结构,其特征在于,在地址字段内的一个或更多端点地址被指定为可共享或非共享。
19.一种数据结构,该数据结构包括标识一实体的标识字段;包含该实体的一个或更多端点地址的地址字段;以及其中标识字段和地址字段的内容在所述数据结构内被串行化并且所述数据结构是可扩展的,从而能够添加新的标识字段和地址字段。
20.如权利要求19所述的数据结构,其特征在于,所述地址字段包含参考。
21.如权利要求19所述的数据结构,其特征在于,所述端点地址包含MAC地址、URL、URI、电邮地址、电话号码、IM地址或物理邮件地址中的至少一个。
22.如权利要求19所述的数据结构,其特征在于,所述地址字段包括用于识别该实体的委托实体的地址。
23.如权利要求19所述的数据结构,其特征在于,所述数据结构在XML块中是串行化的。
24.如权利要求19所述的数据结构,其特征在于,所述数据结构还包括何时使用特定的端点地址发送消息给实体的策略描述。
25.如权利要求24所述的数据结构,其特征在于,所述策略包括了含有日期和/或时间范围、数据敏感度、数据紧急程度或优先权、数据分类、数据主题、提示结果的用户选择、机器已注册默认、应用程序已注册默认、用户已注册默认、应用程序指定逻辑、定制的已注册扩展、接收器属性以及实体存在中的至少一个的标准。
26.如权利要求25所述的数据结构,其特征在于,由已公布IM数据、端点参考、WSDL联系、端点联系、网络上机器存在、当时时刻、联系尝试、对等存在数据、特定应用程序运行以及应用模式中的至少一个来确定所述实体存在。
27.如权利要求19所述的数据结构,其特征在于,所述数据结构由嵌入的签名包封。
28.如权利要求27所述的数据结构,其特征在于,所述嵌入的签名是XML包封签名。
29.如权利要求19所述的数据结构,其特征在于,该数据结构还包括嵌入的安全首部。
30.如权利要求19所述的数据结构,其特征在于,在地址字段内的一个或更多端点地址可以指定为可共享或非共享。
31.如权利要求19所述的数据结构,其特征在于,该数据结构包括了一个全球标识版本,该版本含有一个在所述地址字段的内容被改变时增加的值。
32.一种创建参考数据结构的方法,该方法包括如下动作创建含有某实体的一个或更多端点地址的地址字段;创建含有一个或更多密钥以便于与所述实体在一个或更多端点地址中的至少一个上进行安全通信的安全字段;以及串行化地址字段和安全字段内的数据以创建一串行化可扩展数据结构。
33.如权利要求32所述的方法,其特征在于,所述方法还包括创建一个识别所述实体的标识字段。
34.如权利要求32所述的方法,其特征在于,所述方法还包括将所述串行化数据结构与另一个串行化数据结构合并,从而添加至少一个附加端点地址给地址字段和/或添加一个附加密钥给安全字段。
35.如权利要求34所述的方法,其特征在于,所述方法还包括解决所述地址字段内和另一个串行化数据结构内的端点地址之间的冲突。
36.如权利要求35所述的方法,其特征在于,解决冲突包括安全提示用户解决冲突、使用机器已注册默认、使用应用程序已注册默认、使用用户已注册默认、调用应用程序特定的逻辑、使用定制的已注册扩展、考虑发送给实体或期望动作的数据的各方面以及选择最近输入的端点地址中的至少一个。
37.一种计算机可读介质,它具有用于执行权利要求32所述的动作的计算机可执行指令。
38.一种创建参考数据结构的方法,该方法包括如下动作创建含有标识某实体的数据的标识字段;创建含有该实体的一个或更多端点地址的地址字段;以及串行化标识字段和地址字段内的数据以创建一串行化可扩展的数据结构。
39.如权利要求38所述的方法,其特征在于,所述方法还包括将所述串行化数据结构与另一个串行化数据结构合并,从而添加至少一个附加端点地址给地址字段。
40.如权利要求39所述的方法,其特征在于,所述方法还包括解决所述地址字段内和另一个串行化数据结构内的端点地址之间的冲突。
41.如权利要求40所述的方法,其特征在于,解决冲突包括安全提示用户解决冲突、使用机器已注册默认、使用应用程序已注册默认、使用用户已注册默认、调用应用程序特定的逻辑、使用定制的已注册扩展、考虑发送给实体或期望动作的数据的各方面以及选择最近输入的端点地址中的至少一个。
42.一种计算机可读介质,它具有执行权利要求38所述动作的计算机可执行指令。
43.一种在网络上端点间通信的方法,该方法包括访问串行化可扩展数据结构以获取在网络上某实体的端点地址;访问该串行化可扩展数据结构以获取安全密钥;使用该安全密钥加密数据;以及发送所述数据给在网络上该实体的端点地址。
44.如权利要求43所述的方法,其特征在于,该方法还包括访问所述串行化可扩展数据结构内的安全规则以确定要获取的合适安全密钥。
45.如权利要求43所述的方法,其特征在于,该方法还包括接收来自第三方的串行化可扩展数据结构。
46.如权利要求43所述的方法,其特征在于,访问串行化可扩展数据结构以获取端点地址还包括访问策略规则以确定从指向该实体的多个端点地址中选择哪一个端点地址。
47.如权利要求46所述的方法,其特征在于,确定选择哪一个端点地址包括基于一组可用传输协议、日期和/或时间范围、被发送的数据敏感度、数据紧急程度或优先权、数据分类和数据主题中的至少一个来实现规则。
全文摘要
具有端点地址和安全信息的数据结构。该数据结构包括了其中含有一个或更多指向某实体的端点地址的地址字段。该数据结构还包括了其中含有一个或更多密钥以方便与实体进行通信的安全字段。在该数据结构内也可以串行排列地址字段和安全字段的内容。该数据结构可以是可扩展的,从而可以添加新的地址字段和安全字段。
文档编号H04L9/00GK1801816SQ20051012016
公开日2006年7月12日 申请日期2005年11月10日 优先权日2004年12月10日
发明者C·G·卡莱, D·A·沃尔特, G·M·德拉-利贝拉, M·W·邓恩, R·L·哈沙, T·扬克苏科 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1