CN100474851C - 对等网络名字解析协议的安全基础结构和方法 - Google Patents

对等网络名字解析协议的安全基础结构和方法 Download PDF

Info

Publication number
CN100474851C
CN100474851C CNB031241549A CN03124154A CN100474851C CN 100474851 C CN100474851 C CN 100474851C CN B031241549 A CNB031241549 A CN B031241549A CN 03124154 A CN03124154 A CN 03124154A CN 100474851 C CN100474851 C CN 100474851C
Authority
CN
China
Prior art keywords
node
same level
certificate
message
pac
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB031241549A
Other languages
English (en)
Other versions
CN1455569A (zh
Inventor
R·古普塔
A·加弗瑞莱斯卒
J·L·米勒
G·A·威勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1455569A publication Critical patent/CN1455569A/zh
Application granted granted Critical
Publication of CN100474851C publication Critical patent/CN100474851C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99939Privileged access

Abstract

描述一种安全基础结构和几种方法,能抑制恶意节点破坏对等网络正常运行的能力。本发明的方法允许节点通过进行自检使用安全和不安全的身份。当需要或有机会时,通过捎带对已存消息的确认来检验ID所有权。通过随机地选择要连接的节点,可减少初次连接到恶意节点的可能性。此外,通过维持有关需要即将响应的先前通信的信息,识别和不理睬来自恶意节点的信息。当其资源利用率超过某一预定限制值时,通过允许该节点不理睬请求可抑制拒绝服务攻击。通过请求移去由该节点签署的所述取消证书,可减少恶意节点移去一个有效节点的能力。

Description

对等网络名字解析协议的安全基础结构和方法
发明领域
本发明一般涉及对等网络协议,尤其涉及用于对等网络协议的安全框架基础结构。
发明背景
对等网络通信,及事实上所有通信类型都取决于所选择实体之间建立有效连接的可能性。然而,因为拓朴变化,或因为地址租期不能更新,故由于实体在网络内移动,实体可以有一个或多个可变化的地址。这样,对该编址问题的典型结构解决方法是给每个实体赋予一个稳定名称,并在需要连接时,将这个名称解析为一个当前的地址。这个名称到地址的翻译必须是非常坚固的,并且也必须能允许方便和快速地更新。
为了提高由那些搜索发现的连接到它的实体地址的可靠性,许多对等网络协议允许实体经过各种机构公布它们的地址。某些协议同样允许客户通过处理来自网络内其他客户的请求获得其他实体地址资料。的确,真是获得这些地址资料,使这些对等网络能成功地运行。即,网络中有关其他同等级的资料越好,收敛搜索某一特定资源的可能性就越高。
然而,如果在对等网络协议下没有坚固的安全基础结构,恶意实体可能很容易破坏这种对等网络系统的收敛能力。例如,从事身份偷窃的实体可引起这种破坏。在这种对等网络上的身份偷窃攻击中,恶意节点公布ID的地址信息,该地址信息不具有授权关系,即,该地址信息既不是所有者的,也不是同组成员等的。恶意实体可以在良好节点响应之前先截取和/或先响应,这样,该恶意实体看来似乎是良好节点。
恶意实体通过用劣质信息充满网络,也可妨碍PNRP的解析,以使网络内的其他实体倾向将请求传送到并不存在的节点(会不利地影响到搜索的收敛性),或传送到由攻击者控制的节点。通过在转送之前修改用于发现资源的RESOLVE包,或者通过给产生RESOLVE包的请求者发回一条无效的RESPONSE,就可达到妨碍PNRP的目的。恶意实体通过确保该搜索不会收敛,也可试图破坏对等网络的正常运行,例如,通过将该搜索传送到离所请求的ID更远的一个节点,而不是将该搜索转送到离该ID更近的能有助于该搜索收敛的高速缓冲区内的一个节点。替代地,恶意实体只要简单地根本不响应搜索请求,就可破坏对等网络的正常运行。通过恶意节点发送一条代表有效ID的无效BYE消息,可进一步妨碍PNRP的解析。结果,在网云中(cloud)的其他节点会从它们的高速缓冲存储器中移去这条有效的ID,减少储存在该高速缓冲存储器内的有效节点数。
虽然确认地址证书可以防止身份偷窃问题,这不能有效地防止第二种妨碍PNRP解析的攻击。攻击者可继续产生能证实的地址证书(或使它们预先产生),并将相应的ID充满对等网络云。如果任何一个节点都试图检验ID的所有权,攻击者也能检验它是泛滥ID的所有者,因为事实上它是所有者。然而,如果攻击者设法产生足够的ID,这将导致对等网络内的大量节点搜索由攻击者控制的节点中的一个。在这一点上,攻击者能相当好地控制并指挥该网络的运行。
如果对等网络协议要求所有新的地址信息先进行检验,以防止上面论述的身份偷窃问题,第三种攻击可能变成恶意实体可用的。对易受影响的那些类型的对等网络的攻击是拒绝服务攻击形式(DoS)。如果所有了解新记录的节点都试图进行ID所有权检验,将会发生一场反对广告式ID所有者的网络活动风暴。利用该弱点,攻击者可安装一个IP DoS,通过使目标变成非常大众化来攻击该目标。例如,如果一个恶意实体把微软网页的IP地址通告成ID的IP,接收到该通告IP的对等网络内的所有节点将试图连接到该IP(微软网页服务器的IP)以检验该记录的权限。当然,因为是攻击者产生这条信息,微软服务器不能够检验该ID的所有权。然而,已经产生了损害。即,攻击者已设法确认了攻击微软的对等网络通讯的较好部分。
由恶意节点者通过将大量无效的/有效的PAC发送给单个结点,所犯的另一种类型的DoS攻击是通过耗尽一个或多个资源淹没一个节点或网云,例如通过使用FLOOD/RESOLVE/SOLICIT包。接收这些PAC的节点将消耗所有CPU的资源,试图检验所有的PAC。相似地,通过发送无效的FLOOD/RESOLVE包,一个恶意节点将使在网云内的消息包数量倍增。即,恶意节点能够用小量的这种消息包消耗PNRR网云的网络带宽,因为接收这些包的节点通过发送另外信息包来响应。恶意节点通过给良好节点发送假的REQUEST消息,也可使网络带宽倍增,该良好节点通过充满PACs来响应,其量比请求信息大得多。
恶意节点通过妨碍初始节点的同步,也可实现在PNRP网云内的攻击。即,为了连接到PNRP网云,一个节点试图连接到已在PNRP网云内的一个节点。如果该节点试图连接到恶意节点,该节点就完全由那个恶意节点控制。此外,当两个节点都处于同步处理时,恶意节点能发送无效的REQUEST包。这是一种DoS的攻击,因为无效的REQUEST包在响应中将初始化FLOOD信息的产生,这种DoS攻击将妨碍同步处理。
因此,技术上存在一种安全结构的需要,该安全结构能通过防止或减轻这些攻击的影响,保证P2P网云的完整性。
发明简述
在本专利申请内披露的发明内容包括一种新的和改进的方法,用于抑制恶意节点的破坏对等网络正常工作的能力。特别地,本发明描述对各种类型的攻击进行应对的方法,这些攻击可能由恶意节点发动的,包括身份偷窃攻击,拒绝服务攻击,仅试图妨碍对等网络中地址解析的攻击,以及试图妨碍新节点参加和加入对等网络能力的攻击。
所述的安全基层结构和方法允许通过自检由节点使用这两种安全和不安全的身份。当需要或有机会时,通过捎带确认已有信息的有效期,或如需要,通过发送小的查询消息来确认ID所有权。通过随机地选择要连接的节点能减少初始连接到恶意节点的可能性。此外,通过维持要求进一步响应的先前通信的信息,能够识别和忽略来自恶意节点的信息。当资源利用量超过某一预定限止值时,通过允许节点忽略请求消息,能抑制拒绝服务的攻击。通过请求移去由该节点签署的取消证书,能减少恶意节点移去有效节点的能力。
按照本发明的一个实施例,将描述一种能产生自检不安全的同级编址证书(PAC)的方法,该方法能防止恶意节点在对等网络的一个不安全PAC内公布另一个节点安全标识符。该方法包括能为对等网络上发现的一个资源产生一个不安全PAC的步骤。该资源具有一个对等网络的识别符(ID)。该方法进一步包括在不安全PAC内含有统一资源识别符(URI)的步骤,对等网络ID来自从该统一资源识别符(URI)。较佳地,URI是“p2p:/URI”的格式。对等网络ID也可以不安全的。
在又一个实施例中,描述了在对等网络内的第一个节点,适切地确认一个同级地址证书的方法。第一个节点利用多级高速缓冲存储器储存同级地址证书,并且该方法包括接收据称来自第二个节点的同级地址证书(PAC),并确定将PAC储存在多层高速缓冲存储器的哪一层的步骤。当PAC是储存在高速缓冲器最低两层中的一层时,该方法将PAC放置在忽略列表内,产生一个INQUIRE(查询)消息,该信息含有待检验的一条PAC的ID,并将该INQUIRE消息发送给第二个节点。当PAC储存在高层的高速缓冲存储器,而不是储存在高速缓冲存储器最低两层中的一层时,该方法将PAC储存在高速缓冲存储器上层,标志为“无效”。假若这样,第一次使用时该PAC是有效的。该方法也可为PAC请求一条证书链。
在一个较佳实实施例中,INQUIRE消息的产生包括产生一条事务处理ID的步骤,该事务处理ID包含在INQUIRE信息内。当从第二个节点接收响应INQUIRE消息的AUTHORITY消息时,从那张忽略列表移去PAC,并将该PAC储存在高速缓冲存储器最低两层中的一层内。如果需要一条证书链,检查AUTHORITY消息,以确定该证书链是否存在和有效。如果是,将PAC储存在高速缓冲存储器最低两层中的一层,如果不是,就删除该PAC。事务处理ID也可用于本发明的一个实施例中,以保证该AUTHORITY消息能响应先前的通信。
在本发明的又一个实施例中,描述在对等网络中发现某一个节点的方法,该该方法在某种意义上能减少连接到恶意节点的可能性。这种方法包括步骤:在对等网络广播不含有任何本地注册的ID的发现消息;从对等网络的一个节点接收响应消息;以及与该节点建立同级关系。在一个实施例中,接收来自节点响应的步骤包括从对等网络中的至少两个节点接收一个响应的步骤。在这种情况,与该节点建立同级关系的步骤包括步骤:随机选择至少两个节点中的一个节点,和与该随机选择的至少两个节点中的一个节点建立同级关系。
又在本发明的另一个实施例中,描述依据对等网络中的同步处理,防止拒绝服务攻击的一种方法。该方法包括步骤:从含有同级地址证书(PAC)的第一个节点接收请求高速缓冲存储器同步的一条SOLICIT消息;检查该PAC,确定它的有效性;以及当检查PAC步骤确认该PAC是无效时,丢弃该SOLICIT包。较佳地,当检查PAC步骤确认该PAC是有效时,该方法进一步包括步骤:产生现时标志(nonce),用第一个节点的公共密钥对该现时标志进行加密,产生一条含有加密现时标志的ADVERTISE(广告)消息,并将ADVERTISE信息送给第一个节点。当从第一个节点接收到一个REQUEST(请求)消息时,该方法检查该REQUEST信息,确定第一节点是否能对该加密现时标志进行解密,并当第一节点能对加密的现时标志进行解密时,处理该请求消息。
较佳地,这种方法进一步包括步骤:维持特别标识的与第一节点通信的连接信息;检查请求(REQUEST)消息,以保证该信息特别涉及ADVERTISE消息;并当REQUEST消息不是特别涉及ADVERTISE消息时,拒绝该REQUEST消息。在一个实施例中,维持特别标识的与第一节点通信的连接消息的步骤包括:计算作为现时标志和第一个节点身份的混编码(hash)的第一个比特位置(bitpos)的步骤,和在比特向量的第一个比特位置设置一个比特的步骤。当执行完该步骤,检查REQUREST消息步骤包括步骤:检查现时标志和来自请求消息的第一个节点标识符;计算作为现时标志和第一个节点标识符的混编码的第二个比特位置;检查比特向量,以确定是否具有相应于第二个比特位置的比特设置;及,当检查比特向量步骤没有发现相应于第二个比特位置的比特设置时,表示该REQUEST不是特别涉及ADVERTISE消息。替代地,现时标志可直接用作比特位置。假若这样,当接收到REQUEST时,检查相应于封装的现时标志的比特位置。如果设置了,这就是有效的REQUEST,并清除该比特位置。否则,这是无效的REQUEST或重放的攻击,并丢弃该REQUEST。
还在另一个本发明实施例,一种依据对等网络内的同步处理,禁止拒绝服务攻击的方法包括步骤:从第一个节点接收据称为一条REQUEST消息的步骤;确定REQUEST是否是响应于先前与第一个节点通信;以及当该REQUEST不是响应先前与第一个节点通信时,拒绝该REQUEST。较佳地,检查该请求是否响应先前通信的步骤包括步骤:从该请求提取第一个节点的据称为现时标志和标识符;计算作为该现时标志和标识符的比特位置;检查比特向量,以确定是否具有相应于比特位置的比特设置;及当没有相应于比特位置的比特设置时,表明该REQUEST不是响应先前与第一节点的通信。
也描述了依据对等网络内的节点资源消耗,禁止拒绝服务攻击的一种方法。该方法包括步骤:从对等网络的一个节点接收一条消息;检查当前资源利用量;及当前资源利用量高于预定程度时,拒绝信息处理。当接收到RESOLVE消息时,拒绝信息处理步骤包括将AUTHORITY消息发给第一个节点的步骤。该AUTHORITY消息含有一个表示因为当前资源利用的太多,不能处理该RESOLVE消息的标记。当接收到含有同级地址证书(PAC)的一条FLOOD消息,并且该方法确定该PAC应当储存在高速缓冲存储器最低两层中的一层时,拒绝消息处理步骤包括将该PAC放置在一张忽略表内,以待后处理的步骤。如果该方法确定PAC应当储存在比高速缓冲器最低两层高的高速缓冲存储器层时,拒绝信息处理步骤包括拒绝FLOOD消息的步骤。
在本发明另一个实施例中,描述了依据对等网络的节点带宽消耗,禁止拒绝服务攻击的一种方法。该方法包括步骤:从该对等网络一个节点接收高速缓冲存储器同步请求;检查表示在过去执行高速缓冲存储器同步次数的一个量度;以及当过去执行高速缓冲存储器的同步次数超过某一预定最大值时,拒绝请求高速缓冲器同步处理。在又一个实施例中,该方法检查该量度,以在确定前述某一预定时间周期内执行高速缓冲存储器同步的次数。在该实施例中,拒绝处理请求的步骤包括:当在前述的时间周期内执行高速缓冲存储器同步的次数超过某一预定最大值时,拒绝处理高速缓冲存储器同步请求的步骤。
在本发明另一个实施例中,禁止对等网络内的基于搜索的拒绝服务攻击的一种方法包括步骤:检查已知同级地址证书的高速缓冲存储器记录,以确定某些节点,将一个解析请求送给这些节点;随机地从这些合适节点中选择一个节点;以及将该解析请求送给该随机选择节点。在一个实施例中,随机地选择一个合适节点的步骤包括依据PNRP ID离目标ID的距离,为每个合适节点计算权重概率的步骤。然后,将选择下一个特定路程段的概率确定为与那个节点和目标节点之间的ID距离成反比。
在本发明又一个实施例中,禁止对等网络内的基于搜索的拒绝服务攻击的一种方法包括步骤:接收RESPONSE消息;判断RESPONSE消息是否响应先前的RESOLVE消息;以及当RESPONSE消息不是响应先前的RESOLVE消息时,拒绝RESPONSE消息。较佳地,判断RESPONSE消息是否响应先前的RESPONSE消息的步骤包括步骤:将比特位置计算为RESPONSE消息的混编码;以及检查一个比特向量,以判断相应于该比特位置的一个比特是在那里设置。
在含有地址列表的RESPONSE消息的一个实施例中,该方法进一步包括步骤:判断是否已经修改了RESPONSE消息,试图妨碍解析;以及当已经修改了RESPONSE消息,试图妨碍解析时,拒绝RESPONSE消息。较佳地,判断是否已经修改了RESPONSE消息,试图妨碍解析的步骤包括步骤:将比特位置计算为RESPONSE消息内一张地址列表的混编码;以及检查比特向量,以判断相应于该比特位置的比特是否是在那里设置。
在本发明另一个实施例中,禁止一个恶意节点从对等网络内移去一个有效节点的一种方法包括步骤:从具有储存在高速缓冲存储器内的同级地址证书(PAC)的有效节点接收据称为取消证书;以及由有效节点签署该取消证书。
附图说明
并入和形成本说明的附图描述了本发明的几个方面,并与本描述一起解析了本发明的原理。在图中:
图1是一张描述示范计算机系统框图,本发明居留在该示范计算机系统内;
图2是一张简化流程图,描述按照本发明实施例的AUTORITY包处理的安全性方面;
图3是一张简化通信处理流程图,描述按照本发明实施例的P2P发现(DISCOVERY)的同步阶段的安全性方面;
图4是一张简化流程图,描述按照本发明实施例的RESOLVE包处理的安全性方面;
图5是一张简化流程图,描述按照本发明实施例的FLOOD包处理的安全性方面;
图6是一张简化流程图,描述按照本发明实施例的RESPONSE包处理的安全性方面。
虽然连同某些较佳实施例一起描述本发明时,但不限于这些实施例。相反地,打算覆盖如由附加权利要求中定义的本发明精神和范畴内的所有替代的,修改的和相似的实施例。
具体实施方式
转向附图,其中相似的参考数字涉及相类似的成分。将本发明描述为在合适的计算环境中实现的。虽然并没要求但仍按个人计算机执行的计算机可执行指令(例如程序模块)的一般概念普通内容描述本发明。一般地,程序模块包括那些能实现特殊任务或实行特殊的抽象数据类型的例行程序,程序,目标,组件,数据结构等。而且,那些技术熟练人员将会理解:可以用其他计算机系统配置,包括手提式装置,多处理器系统,基于微处理器的或可编程用户电子设备,网络PC机,微型计算机,大型计算机,及类似装置实行本发明。本发明也可以在分布式计算机环境实行,在该分布计算环境中,由通过通讯网络连接的远程处理装置执行各项任务。在分布式计算环境中,程序模块可以放置在本地的和远程的存储器装置内。
图1描述一种合适的计算系统环境100的一个例子。在该环境可以实现本发明。该计算系统环境100仅是一种合适计算环境的一个例子,并不想提出有关本发明应用和功能范围的任何限制。也不应将该计算环境100解析为对该示范工作环境100内描述元件中的任何一个元件或它们组合具有任何依赖性,或者需求。
本发明可在许多其他通用或专用计算系统环境或配置内实行。适用于本发明使用的已知计算系统,环境,和/或配置的例子包括,但不受限制,个人计算机,服务计算机,掌上型或膝上型电脑装置,微处理器系统,基于微处理器系统,机顶盒,可编程用户电子设备,网络PC机,小型计算机,大型计算机,包含上述系统或装置的任何一种的分布式计算环境,和类似的装置。
按计算机可执行指令(例如程序模块)的一般概念(context)描述本发明。通常,程序模块包括能实现特殊任务或实现特殊的抽象数据类型的例行程序,程序,目标,组件,数据结构等等。本发明也可按分布式计算环境实现,在分布式环境中,由经过通信网络连接的远程处理装置执行某些任务。在分布式计算环境中,程序模块可以放置在本地和远程计算机的包括存储器装置的存储介质内。
参考图1,实现本发明的一个示范性系统包括按计算机110形式的通用计算装置。计算机110的部件包括,但不受限制,处理单元120,系统存储器130,和系统总线121。系统总线121把包括系统存储器到处理器单元120的各个系统部件连接起来。系统总线121可以是包括存储总线或存储控制器,外围总线,和本地总线等几种总线结构中的任意一种总线。这些总线可是各种总线结构中的任意一种结构。为作例子,但不受限制,这些结构包括工业标准结构(ISA)总线,微通道结构总线(MAC),加强ISA(EISA)总线,视频电子标准协会(VESA)本地总线,外围元件互连总线(PCI)。外围元件互连总线也称为Mezzanine(中层)总线。
计算机110通常包括各种计算机可读介质。计算机可读介质可以是能由计算机110访问的任何可用的介质,并包括易失性和非易失性介质,可移动的和非移动介质。作为例子,但不受限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括易失性和非易失性介质,可移动的和非移动介质,这些介质可以按任意一种方法和技术实现,能用于储存例如计算机可读指令,数据结构,程序模块或其他数据的信息。计算机存储介质包括,但不受限制,RAM,ROM,EEPROM,快闪存储器或其他存储技术,CD-ROM,数字通用盘(DVD)或其他光盘存储器,磁带盒,磁带,磁盘存储器或其他磁存储装置,或其他能用于储存所希望信息并可由计算机110访问的介质。通信介质通常收录计算机可读指令,数据结构,程序模块或在某一调制数据信号(例如载波或其他传送机构)内的其他数据,并包括任何信息传递介质。术语“调制数据信号”意指含有一种或多种特征集的或按该信号的编码信息改变的信号。作为例子,但不受限制,通信介质包括,例如有线网络或线直接连接的有线媒体,和无线媒体,例如声音,射频,红外及其他无线媒体。上述的任何组合也应当包含在计算机可读介质的范围内。
系统存储器130包括易失和/或非易失存储器形式的计算机存储介质,例如只读存储器(ROM)131和随机存储器(RAM)132。基本的输入/输出系统133(BIOS)通常储存在ROM131内,例如在启动期间,该基本输入/输出系统133含有帮助在计算机110内的部件之间传送信息的基本例行程序。RAM132通常含有处理单元120立即访问和/或当前进行操作的数据/和/或程序模块。作为一个例子,但不受限制,图1描述操作系统134,应用程序135,其他程序模块136,和程序数据137。
计算机110也可包括其他可移动的/非移动的,易失/非易失计算机存储介质。仅作为例子,图1描述了磁盘驱动器141,在非移动,非易失磁介质上进行读或写;磁盘驱动器151,在可移动,非易失磁盘152上进行读或写;和光盘驱动器155,在例如CD ROM或其他光介质的可移动,非易失光盘156上进行读或写。能用在示范性工作环境的其他可移动/非移动的,易失/非易失计算机存储介质包括,但不受限制,盒式磁带,快闪存储卡,数字通用盘,数字视频磁带,固态RAM,固态ROM,及类似的存储介质。硬盘驱动器141通常经过例如接口140的非移动存储接口连接到系统总线121,而硬盘驱动器151和光盘驱动器155通常经过例如接口150的可移动存储接口连接到系统总线121。
上面论述和图1描述的驱动器和相关的计算机存储介质为计算机110提供计算机可读指令,数据结构,程序模块和其他数据的存储。例如在图1,将硬盘驱动器141描述为能用于储存操作系统144,应用程序145,其他程序模块146,和程序数据147。注意,这些部件可以与操作系统134,应用程序135,其他程序模块136和程序数据137相同的,也可以不同的。将不同的数字赋给操作系统144,应用程序145,其他程序模块146和程序数据147,至此仅最低限度地说明它们是不同的复制物。用户可以通过输入装置,例如键盘162和定点装置161将命令和信息输入到计算机110。该定点装置通常称为鼠标,跟踪球和触摸板。其他输入装置(未示出)也可包括传声器,操纵杆,游戏垫,圆盘式卫星电视天线。扫描仪,或类似的装置。这些和其他的输入装置常常经过用户输入接口160连接到处理单元120,该用户输入接口连接到系统总线,但也可以通过其他接口和总线结构(例如平行口,游戏口或通用串行总线(USB))连接。监视器191或其他类型的显示装置也可经过一个接口,例如视频接口190,连接到系统总线121。除了监视器外,计算机也可包括其他,例如扬声器197和打印机196,的外围输出装置,这些外围输出装置可能经过输出外围接口195连接。
计算机110可在利用本地连接到一台或多台远程计算机,例如远程计算机180的网络环境内工作。远程计算机180可以是另一台个人计算机,服务器,路由器,网络PC,同级装置或其他公共网络节点,并且,虽然图1仅描述了一个存储装置181,远程计算机通常包括许多或所有上述的,有关个人计算机110的部件。图1描述的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可包括其他网络。这些网络环境通常是在办公室,企业范围的计算机网络,企业内部互联网和因特网。
当用在LAN网络环境时,个人计算机110经过网络接口或适配器170连接到LAN171。当用于WAN网络环境时,计算机110通常包括调制解调器172和用于在WAN173(例如因特网)上建立通信的其他装置。调制解调器172可经过用户输入接口160或其他合适的机构,连接到系统总线121。该调制解调器172可以是内置的或是外置的。在网络环境,表示与个人计算机110有关的,或部分有关的程序模块可以储存在远地存储装置内。作为例子,但不受限制,图1将远地应用程序185描述为驻留在存储装置181内。应当明白,所示的网络连接是示范性的,而且可以使用能在计算机间建立通信线路的其他装置。
在下列的描述中,除了另外指明外,将依据由一台或多台计算机执行操作的动作和符号表示法描述本发明。同样地,应当明白,这些动作和操作(有时称作为是计算机执行的)包括由计算机的处理单元对表示某一结构格式数据的电信号进行的处理。该处理将数据传送到或储存在计算机存储系统的单元内,按那些技术熟练的人员懂得的方式重新配置或另外改变计算机的操作。保存数据的数据结构是存储器的物理单元,该存储器单元具有由数据格式定义的特定属性。然而,当按前述概念描述本发明时,并不意指限制于:那些技术熟练人员将理解的,也可以用硬件实现下文中描述的各种动作和操作。
如上所介绍的,对等网络(P2P)协议的成功性取决于在选择的实体之间建立有效连接的协议能力。因为一个特定用户可以按各种方法,在具有不同地址的各个位置连接到网络上,一种较佳的途径是将独特身份赋给该用户,然后通过该协议将那个身份解析给一个特定地址。在共同待批的专利申请号09/942164,标题为对等网络名字解析协议(PNRP)和随其使用的多层高速缓冲存储器(申请日期为2001年8月29日)中描述了这样一种对等网络名字解析协议(PNRP),对该协议,本发明的安全基础结构发现有特殊的应用,将该专利讲授的和披露的一起并入整体作参考。然而,技术熟练人员将从下列讲授中认识到,本发明的安全基础结构和方法不限制于该共同待批的专利申请特定的对等网络协议,而且也可应用到其他具有相同约束力的协议中。
如在上面并入的共同待批专利申请中所论述的,同级名字解析协议(PNRP)是基于同级的名称对地址解析协议。名称是称为PNRP ID(同级名字解析协议身份)的256比特数字。地址包括IPv4或IPv6地址,一个端口,和一个协议数字。当将PNRP ID解析为一个地址时,返回同级地址证书(PAC)。这证书包括目标PNRP ID,当前IP地址,共公密钥,和许多其他字段。将PNRP协议的一个实例称作为一个节点。一个节点可以有一个或多个当地注册的PNRP ID。一个节点可经过注册,可在PNRP发现ID对地址的映像。每次注册包括本地构成的同级证书,并需要一个适合查看的PNRP高速缓冲存储器。不是PNRP节点的主机经过PNRP域名管理系统(DNS)网关可以将PNRP ID解析成IP地址。PNRP DNS网关接受DNS‘A’和‘AAAA’询问,进行一条PNRP搜索,查找指定的主机名的子集,并返回查询结果,作为DNS询问回答。
如上指明的,PNRP提供有关P2P和PNRP ID的一种带有同级地址证书(PAC)的基于同级结构。P2P ID是一条永久性128比特的标识符。通过对一条正确格式化的P2P名进行混编,建立P2P ID。有二种类型的P2P ID,安全和不安全。一条安全的P2P ID是一条带有能证明与公共密钥关系的ID。一条不安全P2P ID是任何不安全的ID。可以由许多不同节点公布一个给定P2P ID。PNRP使用一个‘服务单元’后缀,以保证每个公布的实例是一条唯一的PNRP ID。一个‘服务单元’是一串相应于单一网络服务终点的128比特的数字。服务单元具有一些可识别的元素,但对PNRP客户来说应当是不透明的。服务单元有两种重要的特性。在任何时刻,网云中只能有一个插座相应于一个给定的服务单元。当两个服务单元进行比较时,每条的公共前缀的长度是网络邻近的合理测量。两个以相同的4比特开始的服务单元不再分隔成以相同的3比特开始的两个服务单元。
只能通过与该服务单元连锁的单独地识别P2P ID。256比特的结果标识符称为PNRP ID。PNRP节点通过调用带有P2P名,权限,和几个其他参数的PNRP服务,注册一个PNRP ID。然后,PNRP服务建立并维持含有提交数据的同级地址证书(PAC)。PAC最小程度地应包括:一条PNRP ID,证书有效期,服务和PNRP地址,公共密钥,及在选择的PAC内容上产生密码签名。
PNRP ID的建立和注册仅是PNRP服务的一部分。PNRP服务的执行能够分成四个阶段。首先,发现PNRP网云。在该阶段,新节点必须在网云中找到希望加入的一个已存在的节点。该网云可是全球PNRP网云,站点本地(企业)网云,或链路本地网云。一旦找到,进入加入PNRP网云的第二阶段。一旦该新节点已经找到一个已存在的节点,就执行SYNCHRONIZE(同步)处理过程,以获得一份已存在节点的顶部高速缓冲器层。单一的高速缓冲器层为新节点开始加入该网云提供足够主要成分。一旦完成SYNCHRONIZATION(同步)处理,下一个阶段,可开始动态地参加网云。在完成初始化后,该节点可以参加PNRP ID注册和解析。在这个阶段,同级单元也进行定期高速缓冲器维护。当该节点完成时,进入第四阶段,离开该网云。该节点未注册任何本地注册的PNRP ID,然后,中止PNRP服务。
PNRP协议包括9种不同的消息包,上面已经介绍了其中的一些消息包。然而,应当注意,在这种应用中,消息包的名称只不过有利于功能的理解,并不能用于限制消息包或信息本身的形式或格式。RESOLVE包请求目标PNRP ID到一条PAC的解析。RESPONSE包是RESOLVE请求的结果。FLOOD包含有打算供给接收者的PNRP高速缓冲器用的一条PAC。SOLICIT包用于请PNRP节点通告(ADVERTISE)它的顶层高速缓冲器。该请求的ADVERTISE包含有一张PNRP ID列表,该列表是有关一个节点顶层高速缓冲器中的PAC。REQUEST包用于请求一个节点充满一个ADVERTISE的PAC子集。INQUIRE包用于不安全地询问一个节点是在那个节点注册了一个特殊的PNRP ID。为了确认PNRP ID的本地注册,要使用AUTHORITY(权限)包。该消息包选择性地提供证明链,以有助于验证的那个ID的PAC。ACK包肯定某些信息的接收和/或成功地进行处理。最后,REPAIR包用于试图合并可能分裂的网云。
一旦完全初始化了一个节点,可通过执行5种类型的动作加入PNRP网云。首先,一个节点可以注册或不注册PNRP ID。当注册了一个PNRP ID时,PNRP服务建立同级地址证书(PAC),该地址证书连带有:PNRP ID,服务地址口和协议,PNRP地址口和协议,和公共密钥。这个PAC进入本地高速缓冲器,并且初始化RESOLVE包,将新的PAC用为信息源,而将[PNRP ID+1]用作目标。具有与注册的ID类似的PNRP ID的许多个节点对这个RESOLVE包进行处理。每个RESOLVE的接收者将新节点的PAC加入它们的高速缓冲器内,因此,在网云内通告新PNRP ID。当未注册PNRP ID时,用一个‘取消’标记设置建立一个更新的PAC。将更新的PAC充满本地高速缓冲器最低层的所有记录。每个FLOOD的接收者检查它的高速缓冲器内的一个旧版本的PAC。如果找到,接收者从它的高速缓冲器内移去该条PAC。如果从高速缓冲器的最低层移去PAC,接收者依次将取消充满(FLOOD)PNRP节点,这些PNRP节点是由高速缓冲器最低层的所有其他PAC表示的。
PNRP节点也可加入PNRP ID解析。如在上面并入的应用中所述,通过将RESOLVE信息成功地引导到接近目标PNRP ID,使PNRP ID分解为PAC。当一个节点接收RESOLVE时,该节点可以拒绝这条RESOLVE,返回给先前的路程段,用RESPONSE回答先前的路程段,或将这条RESOLVE传送给某一个节点,它的PNRP ID比该节点自有的更接目标ID。该节点也接收或传送作为解析部分的RESPONSE包。为代替本地用户,该PNRP节点也可初始化RESOLVE。该PNRP服务提供一个API,允许异步地解析请求。该本地节点引起RESOLVE包,并最后接收一个相应的RESPONSE。
PNRP节点也尊重高速缓冲器同步的请求。依据接收的SOLICIT包,该节点用ADVERTISE包回答,在它的高速缓冲器的最高层列出PNRP ID。然后,恳求节点发送一个REQUEST,为任何它想要的ADVERTISE的PAC列出PNRP ID。然后,给请求者充满每条请求的高速缓冲器记录。最后,并如下面将更全面论述的,PNRP也进行身份检验。身份检验是用于检验PAC的一种威胁缓冲装置。身份检验基本上有两种目的。第一个目的,身份检验保证在PAC内指明的PNRP节点具有来自PAC本地注册的PNRP ID。第二个目的,为了安全的PNRP ID(下面论述),身份检验确认该PAC是用一个密钥签名的,与PNRP ID内的权限具有一种密码可验证的关系。
现在已经提供了PNRP系统的应用知识,对于该PNRP系统,本发明的安全基础结构的一个实施例发现有特别的相关性,现在注意力应转向由本发明安全基础结构提供的安全机构。由本发明系统提供的这些机构能消除,或最低限度地减轻,由P2P网云中的恶意节点引起各种攻击的影响,如上所论述的。该PNRP协议并没有防止这些攻击的任何机构,也没有处理所有这些威胁的一种简单解决方法。然而,本发明的安全基础结构可使由恶意节点引起的破坏减少到最小,并可并入该PNRP协议。
如用许多成功的P2P协议,可以公布易发现的实体。然而,为了给P2P协议提供安全性和不完整性,每条身份应较佳地包括附加身份证书。然而,坚固的安全结构能够处理安全的和不安全的实体。按照本发明的一个实施例,通过使用自检的PAC提供这种坚固性。
一条安全PAC是通过在ID和公共密钥之间提供一种映像进行自检。这可防止不带有签署PAC的私人密钥的任何人公布一条安全PAC,而这样,可防止大量身份偷窃攻击。ID私人密钥的保持者使用该证书将附加信息添加到该ID,该附加信息例如为IP地址,友谊名等。较佳地,虽然是由信任的供应者提供这些附加信息,每个节点应产生它自己的一对私-公密钥。然后,将公共密钥作为该节点身份的一部分。只有建立这对密钥的节点才有私人密钥,用该密钥证明它是该节点身份的建立者。这样,可以发现身份偷窃,并因此可阻止身份偷窃。
这种证书的一般格式可描述为[版本,ID,<ID相关信息>,有效期,算法,PIssuer]KIssuer。的确,不管它是安全的或不安全的ID,P2P名/URL是基本证书格式的一部分。如按这种证书表示法,版本是这证书的版本,ID是要公布的身份,<ID相关信息>表示与该ID有关的一些信息,有效期表示在一对起始-终止日期中表示的有效周期,该有效期按通用日期类型(aka GMT(格林尼治标准时间))表示。算法涉及用于产生密钥对,及用于签名的算法,而PIssuer是证书发行者的公共密钥。如果证书发行者和ID所有者相同,那么,这就是PID,ID所有者的公共密钥。KIssuer项是与PIssuer相关的私人密钥。如果证书发行者是ID所有者,那么这是KID,ID所有者的私人密钥。
在一个较佳实施例中,<ID相关信息>包括地址多元组,在这儿可以找到这个ID,和发行者PNRP服务的地址多元组。在这个实施例中,地址证书变为:[版本,ID,<地址>ID,<地址>PNRP,有效期,取消标志,算法,PIssuer]KIssuer。在该扩展的表达式中,ID是要公布的身份,可以是组ID或同级ID。<地址>是IPv6地址,端口,和协议的的多元组。<地址>ID是与该ID相关的地址多元组。<地址>PNRP是在公布机器上的PNRP服务(或其他P2P服务)的地址多元组。较佳地,这是发行者的PNRP地址的地址。由其他PNRP节点使用该<地址>PNRP,以检验证书的有效性。有效期是在一对起始-终止日期中表示的有效周期。取消标志,当设置时,标记一条取消的证书。PIssuer是证书发行者的公共密钥,而KIssuer是与PIssuer对应的私人密钥。如果证书发行者是该ID所有者,那么这就是KID,该ID的私人密钥。
在本发明的一个较佳实施例中,有效证书必须满足下列条件。证书的签名必须有效,而证书不能过期。即,表示为UDT的当前日期必须在由有效期指明的范围内。公共密钥的混编码也必须匹配于该ID。如果发行者和该ID所有者相同,那么,必须检验将公共密钥混编进该ID的混编码(也就是ID=(P)混编码)。如果PIssuer不同于PID,那么必须有一条证书链,引向用KID签名的证书。这样一条证书链检验发行者和ID所有者间的关系。另外,假若这样,当为那类ID和CRL发表一张证书取消列表(CRL),并且该CRL可接受时,然后,认证者能够检验在该CRL内没有出现证书链中的证书。
本发明的安全基础结构也处理不安全的PAC。按照本发明,可通过含有统一资源标识符(URI)使不安全PAC进行自检,该ID来自统一资源标识符。的确,安全和不安全的ID两者包含PAC内的URI。该URI具有“p2p://URI”格式。这可防止恶意节点公布不安全的PAC内的另一个节点的安全ID。
本发明的安全基础结构也允许使用不安全ID。使用这种不安全ID的问题是它们非常容易被伪造。恶意节点能够公布任何一个其他节点的一条不安全ID。不安全ID还可打开安全窗口,就可能变得难以发现一个良好节点。然而,通过包含按照本发明的一条URI,不安全ID就不能以任何方式影响安全ID。此外,本发明的基础结构要求含有不安全ID的PAC的格式和安全PAC的格式相同,即,它们都含有公共密钥和私人密钥。通过迫使不安全PAC的结构和安全PAC的结构相同。不会降低产生PAC的标准(the bar)。此外,通过在该PAC中包含一条URI,就不可能计算地产生与一条特定安全ID映射的URI。
当应当检验PAC时,发生的一个问题是考虑增加P2P网云的安全和增加总开销之间的折衷选择。然而,上述各种包内含有的PAC必须在某一点进行检验。该PAC检验包括检查ID签名是有效的还是无效的,及检查该ID是否是符合安全ID的公共密钥。为了平衡总开销和安全问题,本发明一个实施例在处理那个消息包之前检验该PAC。这保证不再处理无效数据。然而,考虑到PAC检验可能降低消息包处理的速度,这种情况可能不适合于某些类型的消息包,例如,RESOLVE包,本发明的一个替代实施例不需检验这些消息包内的PAC。
除检验PAC外,本发明的安全基础结构还进行ID所有权检查,以检验PAC。如上所论述的,通过在使用PNRP或其他P2P协议内的地址之前,进行地址证书的简单确认,可发现身份偷窃。这种确认可以使用简单的检验:该ID是包含在证书内的公共密钥的混编码。所有权确认也可使用将一条INQUIRE包发送给那个PAC内的地址。该INQUIRE包含有待检验的ID,和事务处理ID。如果在那个地址存在这条ID,节点就承认INQUIRE包。如果在那个地址内不存在这条ID,该节点就不承认INQUIRE包。如果证书链不要求检验身份,节点就返回完整的证书链。虽然,签名和ID->URL的确认还比较复杂,并在检验一条所提供的证书链内的信任链时有效地使用资源,本发明的系统避免任何类型的询问/响应协议,要达到PAC的检验,将添加额外的复杂程度。此外,包含事务处理ID可防止恶意节点对INQUIRE包预先产生响应消息。另外,这种结构按照PAC携带完整的证书链的需要进行发配。
通过修改标准RESOLVE包也有利于在本发明的系统内进行ID所有权检查,以便也能进行ID所有权检查。这种修改的RESOLVE包含有该RESOLVE传送的目的地址的ID。如果该ID是在那个目的地址,就发送ACK包,否则就发送NACK包。如果该ID不处理RESOLVE包或如果接收到NACK包,从高速缓冲器内移去该ID。这样,基本上通过捎带确认带有RESOLVER的一条INQUIRE消息,检验一条PAC,而不用采取任何类型的询问/响应协议并不需发送任何特殊的INQURE包。这种捎带确认处理将再一次参考图2进行论述。这种处理过程极易分出无效的或失效的PAC。
这种身份确认检查发生在两个不同时间。第一个时间是在节点进行到将一条PAC添加进它的高速缓冲器最低两层中的一层时。在高速缓冲器最低两层中的PAC的有效性对PNRP解析PNRP ID的能力是关键的。在将一条PAC添加进这两层以前,进行的身份确认可减轻几种攻击。如果因为在这些较高层内的更新,该PAC添加进高速缓冲器任何较高层,就不需执行ID所有权检验。在使用PAC记录之前,已经确认高速缓冲器最高层内的几乎所有PAC记录的85%已经替代了或期满了。同样地,注意到这些较高层含有一个无效PAC的影响的可能性已足够低,以致当PAC进入时,不能证明进行了ID的确认。
当确认一条记录属于高速缓冲器最低两层中的一层时,将该PAC放置在忽略列表内,直到它的身份已经确认为止。这第一种身份确认使用INQUIRE消息。这样一种身份检验确认一个PAC在它原来的节点还是有效(注册)的,并请求一些信息以帮助检验原节点公布那个PAC的权限。为“标志”字段,即RE_SEND_CHAIN,在INQUIRE消息内定义一个标志,请求接收者在AUTHORITY响应中发送一条证书链(如果有任何存在)。如果INQUIRE的接收者没有权限公布PAC或者如果PAC不再本地注册,接收者简单地丢弃该INQUIRE消息。因为该本地节点经过一条AUTHORITY消息没有收到一条合适的响应。该条坏的PAC将决不会进入它的高速缓冲器,并因此不能对P2P网云的正常工作产生恶意影响。
如果INQUIRE的接收者没有权限公布PAC,并如果它还在本地注册时,则在200,该节点将用一条AUTHORITY消息响应INQUIRE消息,如图2所述的。虽然在图2中没有描述,本发明一个实施例内的接收节点查看AUTHORITY消息是否说明了该ID还是在发送该AUTHORITY的节点注册的。在202,一旦本地节点确认这条AUTHORITY消息是响应于INQUIRE消息时,在204,该本地节点从忽略列表中移去该PAC。在206,如果请求该证书链,在208,检查该AUTHORITY消息,查看该证书链是否存在及有效。如果该证书链存在并有效,那么在210,将该PAC添加进高速缓冲器,并标记为有效。否则在212,删除该PAC。在206,如果没有请求该证书链,那么在210,将该PAC简单地添加进高速缓冲器,并标记为有效。
如现在可以明白的,这条AUTHORITY消息用于确认或否认一条PNRP ID还是在本地节点注册的,并随意地提供一条证书链,允许该AUTHORITY接受者检验该节点公布相应于目标ID的PAC的权力。除了该INQUIRE消息外,该AUTHORITY消息可以是对RESOLVE消息的合适响应,如下面将论述的。该AUTHORITY消息包括由接收节点设置的各种标志,以表明一条否定响应。一个这样的标志是AF_REJECT_TOO_BUSY标志,只在响应RESOLVE时有效。这标志指出主机太忙,不能接受RESOLVE包,并告诉发送者它应将RESOLVE传送给别处进行处理。当不能有助于身份确认时,正是本发明的另一个安全机构防止一种DoS攻击,如下面更全面论述的。标志AF_INVALID_SOURCE,仅在响应RESOLVE时有效,指明RESOLVE内的源PAC是无效的。AF_INVALID_BEST_MATCH标志,也仅在响应RESOLVE时有效,指明RESOLVE内的“最佳匹配”PAC是无效的。AF_UNKNOWN_ID标志指明特定的“有效”PNRP ID并不在该主机中注册。在AUTHORITY消息内的其他标志给接收节点指明包含了请求信息。AF_CERT_CHAIN标志指明包含一条证书链,该证书链能允许确认“有效”PNRP ID和用于签署它的PAC的公共密钥之间的关系。仅将AUTHORITY消息发送作为对INQUIRE或RESOLVE消息的一条应答/响应消息。如果曾经从这种环境外接收一条AUTHORITY,将丢弃该AUTHORITY。
进行身份确认的第二个时间是适切地在RESOLVE处理过程中。如论述的,PNRP高速缓冲器具有高转换率。因此,在使用之前,重写了该高速缓冲器内的大多数高速缓冲记录。因此,直到和除非在实际使用PAC之前,本发明的安全基础结构并不检验这些PAC。当一条PAC用于引导一条PRSOLVE路径时,本发明的系统捎带在RESOLVE包顶部进行身份确认,如上所述。RESOLVE含有‘下一路程段’ID,按与INQUIRE包内的‘目标ID’相同的方式处理该‘下一路程段’ID。然后,用AUTHORITY包回答这条RESOLVE,和上面论述的INQUIRE期望的相同。如果适切身份检验失败,RESOLVE的接收者就不是发送者信任的接收者。因此,将RESOLVE引导到别处,并从高速缓冲器内移去这条无效PAC。
图2中也描述该处理过程。在200,当一个PNRP节点接收了带有标题消息类型字段的一条AUTHORITY包时,在202将该标题消息类型字段设置成RESOLVE,在214,接收节点检查AUTHORITY标志,以确定这个AUTHORITY标志是不是否定的,如上面论述的。如果在AUTHORITY消息中设置了否定响应标志,在216,从高速缓冲器删除该PAC,并将RESOLVE引导到别处。将该RESOLVE要送到的目标地址附加到RESOLVE路径上,并标记为REJECTED。然后,将RESOLVE传送到一个新的目的地。在218,如果AUTHORITY不是否定的,以及如果请求了证书链,检查AUTHORITY消息标志AF_CERT_CHAIN,查看该证书链是否存在。如果存在,接收节点应当在高速缓冲的PAC为特指有效的PNRP ID进行链检验操作。应当检查这条链以保证链内所有的证书都是有效的,并且该链根和链叶之间的关系都是有效的。这条链根的公共密钥的混编码应当,最小限度地,与PAC的P2P名内的权限进行比较,以保证它们相匹配。链叶的公共密钥应当与用于签署PAC的密钥进行比较,以保证它们相匹配。在220,如果这些检查的任何一次失败了,或当请求时,如果证书链不存在,在222,应当从高速缓冲器内删除该PAC和重新处理RESOLVE。在220,如果包含请求的证书链,并且该请求证书链是有效的,在224,应当将相应于确认的PNRP ID的PAC标记为完全确认的。如果希望,可以从PAC中保留PNRP ID,PNRP服务地址,和有效时间,并从高速缓冲中删除PAC本身,以节省内存。
作为这种身份检验的一个例子,假定P为一个节点,为PNRP ID T请求一次身份检验,N是接收该身份检验请求的节点。这会发生这样一种结果:P节点不是接收带有目标ID=T的一个INQUIRE包,就是接收带有下条路程段=T的一个RESOLVE包。N节点检查本地注册的PNRP ID的列表。如果T节点不在那列表内,则检查所接收包的类型。如果是INQUIRE,N节点静静地丢弃该INQUIRE请求。在正常的重新发送尝试期满之后,P节点将该PAC作为无效而丢弃,并完成处理过程。如果是一条RESOLVE,N节点用AUTHORITY包响应,指明ID T不是本地注册的。然后,P节点将RESOLVE发送到别处。如果T是在N节点的PNRP ID的列表内,N节点构成一个AUTHORITY包,并将目标ID设置为T。如果T是一个不安全的ID,则N节点将AUTHORITY包发送给P节点。如果T节点是安全ID,并且该安全ID的权限是用于签署该PAC的密钥,则N节点将AUTHORITY包发送给P节点。如果这几个中的每个都不是真的并且如果设置了RP_SEND_CHAIN标志,则N节点给PNRP ID T的权限重新获得证书链,该证书链是与用于签署PAC的密钥有关。将该证书链插入该AUTHORITY包,并且然后,N节点将AUTHORITY包发送给P节点。在这点,如果T是不安全的ID,完成处理过程。否则,节点P检验签署密钥PAC和用于产生PNRP ID T的权限之间的关系。如果检验失败,丢弃该PAC。如果检验失败并且初始消息是一条RESOLVE,P节点将RESOLVE传送到别处。
如现在可从这两个时间明白:通过INQUIRE或修改的RESOLVE包进行身份所有权检验,不能用一个FLOOD使一个无效PAC居留于整个P2P网云内,并且不能将搜索传递给一个不存在的或者无效的ID。必须对FLOOD进行PAC检验,因为如果允许FLOOD包不经任何检验,在网络内传播,那么,就可能发生Dos攻击。通过这些机构,不能用ID所有权检验充满一个通用节点,因为它的ID仅属于少数几个节点的最低高速缓冲器层。
如在上面参考的共同待批专利申请中更全面论述的,PNRP节点N按四种途径中的一种了解一个新ID。可以通过邻近高速缓冲器的初次淹没荻悉一个新的ID。特别地,当一个P2P节点发生与P2P网云的另一个节点成员接触,并启动高速缓冲器同步顺序时。还可获悉一个新ID,作为一个邻近节点淹没它的最低高速缓冲器内一条新记录的结果。例如,假设节点N呈现为节点M的最低层高速缓冲器内的一条记录。当节点M了解一个新ID时,如果该ID将配在它的最低层高速缓冲器内,会将它淹没到该高速缓冲器层内的其他记录中,各自淹没到节点N。一个节点也可能获悉作为搜索请求结果的一个新ID。搜索请求的始发者将它的地址证书插进该请求内,并且迄今为止,“最佳匹配”搜索请求的PAC也将它的PAC插入该请求。这样,沿该搜索请求途径的所有节点将用该搜索始发者的地址,和最匹配的地址更新它们的高速缓冲器。相似地,一个节点可以获悉作为搜索响应结果的一个新ID。该搜索请求结果按相反顺序传播该请求途径的子集。沿该途径的节点用搜索结果更新它们的高速缓冲器。
按照PNRP,当该节点初次出现时,发现一个邻近节点。然而,如上所论述的,如果初次发现的节点是恶意节点,恶意节点能够控制该新节点。为了防止或使这种发生的情况降低到最小,本发明的安全基础结构提供两种机构保证安全节点的引导。第一种结构是随机发现。当节点试图发现允许它加入该PNRP网云的另一个节点时,对发现的最后选择是用多址通信/广播,因为这是PNRP网云的最不安全的发现方法。由于发现的性质,很难区别一个好的和坏的节点。因此,当需要这种多址通信/广播方法时,本发明的安全基础结构使该节点随机地选择一个节点,该选择的节点是响应广播发现(MARCOPOLO或一个已存在的多址通信发现协议,例如SSDP)消息。通过选择一个随机节点,本发明的系统能使选择坏节点的可能性降低到最小。本发明的系统也可进行这种发现,不需使用任何ID。通过在发现期间不使用ID,本发明的系统防止恶意节点瞄准一个特定ID。
通过修改的同步阶段提供第二种安全节点引导机构,在修改期间,该节点维持一个比特向量。通过图3的简化流图所描述的例子,可最清楚地理解这种修改的同步阶段机构。假设艾丽丝226将SOLICIT发送给鲍勃230,该SOLICIT带有她的PAC。在232,如果艾丽丝的PAC是无效的,在234,鲍勃230简单地丢弃SOLICIT。如果PAC是有效的,然后鲍勃230维持一个比特向量,用于储存这次连接的状态。当接收到这个SOLICIT时,在236,鲍勃230产生一个现时标志,并将该标志与艾丽的PNRP ID混合在一起。将结果数字用作由鲍勃设置的比特向量的索引。然后在238,鲍勃230用ADVERTISE消息回答艾丽丝226。除其他信息外,该ADVERTISE包将含有鲍勃的PAC和经艾丽丝的公共钥加密的现时标志,并且ADVERTISE包将由鲍勃230签署。当艾丽丝226接收到这条ADVERTISE时,在240,检验鲍勃的签名和他的PAC。如果检验不正确,在241,丢弃ADVERTISE包。如果检验正确,在242,艾丽丝226对该现时标志进行解密。然后在244,艾丽丝226将产生REQUST包,该包含有这个现时标志和艾丽丝的PNRP ID。在246,通过混编带有在REQUEST包内发送的现时标志的艾丽丝的PNRP ID,鲍勃230对该REQUEST进行处理。在248,如果在含有作为索引的混编结果的比特向量内设置了该比特,则在250,鲍勃将清除这些比特,并开始处理REQUEST。否则,在252鲍勃将忽略该REQUEST,因为它可能是一次回答攻击。
因为不能重放该顺序,这使该节点引导一种安全处理。这需要资源消耗的最小总开销,资源消耗包括CPU,网络端口,和网络通讯量。不需要计时器以维持状态信息,并且只有启动同步的ID才是要发送的数据。的确,这种修改的同步阶段是异步的,该异步阶段允许一个节点同时处理多条SOLICIT(恳求)。
通过控制消息包处理的速率能使上面论述的许多威胁减少到最小。即,限制节点资源的消耗。在这之后的主意是:一个节点不应消耗它的CPU试图处理PNRP包的100%。因此,按照本发明的一个实施例,当一个节点采样到这种处理将会妨碍它有效运行时,该节点可能拒绝进行某些消息的处理。
节点可能决定不预处理的这样一条消息是从另一个节点接收的RESOLVE消息。在图4中按简化形式描述这处理过程。在254,一旦接收到一条RESOLVE消息,在256,该节点会进行检查,以查看CPU当前运行量是否大于一个预定限止值。如果CPU太忙以致不能处理RESOVE消息时,在258,发送一条带有AF_REJECT_TOO_BUSY标志设置的AUTHORITY消息,表明因为太忙,不能处理该请求。在256,如果CPU不太忙,在260,该节点将判断RESOLVE消息内的所有PAC是否都有效,并且如果发现都是无效的,在262,拒绝处理该消息。在260,如果所有的PAC都是有效的,在264,该节点将对RESOLVE进行处理。
在266,如果节点能够响应RESOLVE消息,在268,节点将RESOLVE转换成RESPONSE,并将它发送给原节点,是从原节点接收到该RESOLVE消息。然而,如果目标ID不是本地注册的,在270,该节点将比特位置计算为RESOLVE内的字段的混编码,并将设置比特向量内相应的比特位置。如上详细论述的,这比特向量用作一种安全机构。当节点没有发送出期望回答的任何消息时,该安全机构防止对错误回答信息进行处理。该节点寻找下一条要传送RESOLVE消息的路程段,该RESOLVE消息已经过适当的修改,以证明该消息的处理过程。在272,如果已经验证了一个节点,要将RESOLVE消息传送到该节点,在276,只是简单地将RESOLVE传送到下一路程段。在272,如果不能验证所选择的下一条路程段,在274,节点在RESOLVE消息上加入一条ID所有权请求,并在276,将它传送给那个节点。在响应加入有ID所有权的请求时,节点期待接收如上所论述的一条AUTHORITY消息,在图2中描述这条消息的处理过程。如图2所描述的,如果在步骤214,没有接收到确认的AUTHORITY,在步骤216,从高速缓冲器删除将RESOLVE消息传送到的节点的PAC,并从图4的步骤254重新处理RESOLVE。
因为CPU太忙,节点决定不能处理的另一条消息是FLOOD消息。在图5按简化格式描述的这种处理过程中,在278,如果存在于FLOOD内的新消息进入高速缓冲器最低两层中的任意一层,在280,检查该PAC,以确认它是不是有效的。如果PAC是无效的,在284,拒绝FLOOD包。然而,在280如果PAC是有效的,在282将该条信息放入忽略(set-aside)列表中。当CPU不太忙时,随机地从忽略列表中读取记录,并对读出的记录进行处理。因为这些记录将进入高速缓冲器最低的两层,按上面论述的,进行ID验证和所有权确认。在278,如果存在于FLOOD内的新消息进入高速缓冲器的最高层,并且CPU太忙以致不能对这些新消息进行处理,那么在288,丢弃这些消息。在286,如果节点具有可用的CPU处理能力,在290,检查PAC,以确认PAC是否有效。如果有效,那么在292,将该PAC加入高速缓冲器,否则在294,拒绝FLOOD包。
节点引导(SYNCHRONIZE)是另一种在节点上消耗相当资源的处理,不仅包括CPU处理能力,也包括网络带宽。然而,同步处理要求允许新节点完全加入P2P网云。同样地,如果在给定时间内,有足够可用的资源,该节点将响应来自另一个节点的引导请求。也就是,如用刚论述的两条消息,如果CPU的利用率太高,节点会拒绝加入引导处理。然而,因为该处理要消耗那么多的处理能力,恶意节点通过发送大量的这类序列还能利用这弱点。同样地,本发明的安全基础结构实施例限制节点同步处理的数量,该节点同步处理是由一个给定节点执行的,以防止这种攻击。这种限制可以是附加的时间性限制,以致恶意节点不能取消一个节点后来再次进行这样一种同步处理。
上述的是许多基于搜索的攻击,可以由一个恶意节点发送或产生。为了消除或使这种基于搜索攻击减少到最小,本发明系统提供两种机构。第一种是随机选择。即,当节点搜索下一段合适的路程段,要给它传送一个搜索请求(RESOLVE)时,先检验可能的候选节点的数量,并然后,随机地从这些候选ID中选择一个ID,以给它传送该RESOLVE。在一个实施例中,鉴别出三个候选节点,可供随机选择。可以依据权重概率选择ID,作为总随机选择的替代方法。计算属于非恶意节点的ID权重概率的这样一种方法是依据PNRP ID离目标ID的距离。然后决定概率为该节点与目标节点间ID距离的反比例。在任何情况下,这种随机选择将减少给恶意节点发送RESOLVE请求的概率。
有效地反对基于搜索攻击的第二种安全机构是利用上面论述的比特向量,以维持状态信息。即,节点维持检验所有RESOLVE消息的信息,这些RESOLVE消息是还没有收到响应消息的已经处理过的消息。用于维护状态信息的字段是RESOLVE包内的目标ID和地址列表。第二个字段用于保证该地址列表没有被恶意节点在试图中断该搜索时修改过。如上面用比特向量使用的其他例子所描述的,该节点产生来自RESOLVE的这些字段的混编码,并设置比特向量内相应的比特位置,以维持RESOLVE处理过程的历史记录。
如图6简化流程图中所描述的,在296,当从另一个节点接收到一条RESPONSE消息时,在298,对这条RESPONSE消息内的字段进行混编,以计算比特位置。然后在300,该节点检查该比特向量,查看是否设置了比特位置。如果没有设置该比特,意指这条RESPONSE不是涉及一条先前处理的RESOLVE,那么,在302,丢弃该消息包。如果设置了比特位置,意指这条RESPONSE涉及一条先前处理的RESOLVE,在304。清除比特位置,通过清除比特位置,该节点将忽略更多相同的RESPONSE消息,这些相同的消息可能是恶意节点发送的作为重放攻击的一部分。然后在306,在处理这条RESPONSE和将它传递给下一段路程段之前,该节点再进行检查,肯定RESPONSE消息内的所有PAC都是有效的。在306,如果PAC中的任何一条是无效的,然后在310,节点就拒绝该消息包。
RESOLVE处理涉及将RESOLVE请求转换为RESPONSE。刚论述的这条RESPONSE的处理包括:保证RESPONSE相应于一条当前接收的RESOLVE,并将这条RESPONSE传递给所指定的下一路程段。作为一个例子,假设节点P接收到一个RESPONSE包S,该RESPONSE含有一个目标PNRPID,BestMatch PAC,和一条途径,该途径列出在该节点之前处理这条原始RESOLVE的所有节点地址,以节点自己的PNRP地址结束。节点P用ACK回答接收了RESPONSE。节点P对它自己地址检查RESPONSE途径。它的地址必须是该有效消息包的地址列表中最后的一条记录。节点P还检查所接收的比特向量,以保证该RESPONSE匹配于一条当前见到的RESOLVE。如果RESPONSE与接收的比特向量内的一个字段不匹配,或者如果节点P的地址不是途径列表内最后的一个地址,静静地丢弃这条RESPONSE,并中止处理。节点P确认BestMatch PAC并将它加入到它的本地高速缓冲器内。如果BestMatch是无效的,静静地丢弃该RESPONSE,并中止处理。节点P从RESPONSE途径的末端移去它的地址。节点P还继续从RESPONSE途径的末端移去记录,直到最末端的记录含有一个标志设置,该标志设置表示一个节点接收了相应的RESOLVE请求。如果该途径现在是空的,这条相应的RESOLVE是本地引起的。PNRP对BestMatch进行身份有效检查。如果身份有效检查成功,将BestMatch向上传递到请求管理器,否则向上传递一个故障指示。如果该途径是空的,完成处理过程。如果该途径不是空的,节点就将RESPONSE包传送给途径列表内的最末端记录。
无论何时,当公布的地址证书在证书截止日期(有效期/To field)之前变成无效时,就需要撤消PNRP地址证书。这种事件的例子发生在节点适度地脱离P2P网络时,或发生在节点离开一个组时,等等。本发明的取消机构利用公布的取消证书。取消证书含有:取消标志设置;和有效字段的起始日期(或证书开始有效的时间),设置到当前时间;和终止日期,设置成与先前通告的证书相同的日期。满足下列条件的所有证书都应考虑撤消:证书是由相同的发行者签名;ID与取消证书内的ID相匹配;地址字段与取消证书内的一条地址相匹配;有效字段的终止日期与取消证书内的有效字段的终止日期相同;有效字段的起始日期先于取消证书内的有效字段的起始日期;因为签署了取消证书,能保证一个恶意节点不能使任何一个节点脱离网云。
为了描述和介绍的目的,呈现了前述的本发明各种实施例的描述。这不打算是详尽的,或打算把本发明限制于精细的实施例披露内。按照上述的技术各种修改或变化都是可能的。选择和描述所论述的实施例,以提供本发明原理和它的实际应用的最好描述,因此使技术熟练人员在各种实施例中能利用本发明,并因为要适用预期的特殊应用,可用各种修改。当按照公平,合法,及公正地赋予的宽度进行解析时,所有这些修改和变化都在由附加权利要求确定的本发明的范畴内。

Claims (14)

1、一种适切地确认对等网络内第一个节点的同级地址证书的方法,所述第一个节点利用多层高速缓冲器储存同级地址证书,其特征在于,包括步骤:
从第二个节点据称地接收同级地址证书;
确定将所述同级地址证书储存在所述多层高速缓冲器的哪一层;
当所述同级地址证书储存在高速缓冲器最低两层中的一层时:
(a)、将所述同级地址证书放在忽略列表内;
(b)、产生一条INQUIRE消息,含有待确认的所述同级地址证书的ID;
(c)、将所述INQUIRE消息发送给所述第二个节点;及
当所述同级地址证书是有待储存在高速缓冲器顶层,而不是储存在高速缓冲器最低两层中的一层时,将所述同级地址证书储存在高速缓冲器的顶层。
2、按照权利要求1的所述方法,其特征在于,所述发送INQUIRE消息的步骤包括为所述同级地址证书请求一条证书链的步骤。
3、按照权利要求1的所述方法,其特征在于,所述产生INQUIRE消息的步骤包括产生一条将被包含在所述INQUIRE消息内的事务处理ID。
4、按照权利要求1的所述方法,其特征在于,进一步包括步骤:
响应于所述INQUIRE消息从所述第二个节点接收AUTHORITY消息;
从所述忽略列表中移去所述同级地址证书;及
将所述同级地址证书储存在所述高速缓冲器最低两层中的一层。
5、按照权利要求2的所述方法,其特征在于,进一步包括步骤:
响应于所述INQUIRE消息从所述第二节点接收AUTHORITY消息;
从所述忽略列表移去所述同级地址证书;
检查所述AUTHORITY消息,确定所述证书链是否存在和有效;
当所述证书链是存在的及有效时,将所述同级地址证书储存在所述高速缓冲器最低两层中的一层;及
当所述证书链不存在及无效时,删除所述同级地址证书。
6、按照权利要求3的所述方法,其特征在于,进一步包括步骤:
响应于所述INQUIRE消息从所述第二节点接收AUTHORITY消息;
从所述忽略列表移去所述同级地址证书;
检查所述AUTHORITY消息,确定所述事务处理ID是否存在;
当所述事务处理ID存在时,将所述同级地址证书储存在所述高速缓冲器最低两层中的一层;及
当所述事务处理ID不存在时,删除所述同级地址证书。
7、按照权利要求1的所述方法,其特征在于,进一步包括步骤:
选择储存在高速缓冲器顶层,而不是储存在所述高速缓冲器最低两层中的一层的所述同级地址证书,以发送一个RESOLVE包;
将所述RESOLVE包发送给所述第二个节点,所述RESOLVE包具有以前捎带确认的ID所有权确认信息;及
当所述第二个节点确认ID所有权时,将所述同级地址证书标记成有效。
8、按照权利要求7的所述方法,其特征在于,进一步包括步骤:
当所述第二个节点不能确认ID所有权时,从所述高速缓冲器的顶层,而不是从所述缓冲器最低两层中的一层删除所述同级地址证书。
用一个不同的同级地址证书对所述RESOLVE包进行重新处理。
9、按照权利要求8的所述方法,其特征在于,当所述第二个节点不能确认ID所有权时,从所述高速缓冲器的顶层,而不是从所述高速缓冲器最最低两层中的一层删除所述同级地址证书的所述步骤包括:在删除所述同级地址证书前,等待某一预定时间段,以使所述第二节点确认ID所有权的步骤。
10、按照权利要求8的所述方法,其特征在于,当所述第二个节点不能确认ID的所有权时,从所述高速缓冲器顶层,而不是从最低两层中的一层删除所述同级地址证书的步骤包括步骤:
从所述第二个节点接收AUTHORITY消息;
检查所述AUTHORITY消息,以确定所述第二个节点是否能确认ID所有权;
确定所述第二个节点不能确认ID所有权;及
删除所述同级地址证书。
11、按照权利要求10的所述方法,其特征在于,所述确定所述第二个节点不能确认ID所有权的步骤包括:确定所述第二个节点在所述AUTHORITY消息内设置的一个标志表明不能够确认所述同级地址证书的ID所有权的步骤。
12、按照权利要求10的所述方法,其特征在于,确定所述第二个节点不能确认ID所有权的所述步骤包括检查所述AUTHORITY消息,以确定一条证书链是不存在和无效的步骤。
13、按照权利要求7的所述方法,其特征在于,当所述第二个节点确认了ID所有权时,将所述同级地址证书标记成有效的所述步骤包括:从所述第二个节点接收一条AUTHORITY消息的步骤,确认ID所有权。
14、按照权利要求7的所述方法,其特征在于,当所述第二个节点确认了ID所有权时,将所述同级地址证书标记成有效的步骤包括:从所述第二个节点接收AUTHORITY消息的步骤,所述AUTHORITY消息具有确认ID所有权的一条证书链。
CNB031241549A 2002-04-29 2003-04-29 对等网络名字解析协议的安全基础结构和方法 Expired - Fee Related CN100474851C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/134,780 US7051102B2 (en) 2002-04-29 2002-04-29 Peer-to-peer name resolution protocol (PNRP) security infrastructure and method
US10/134,780 2002-04-29

Publications (2)

Publication Number Publication Date
CN1455569A CN1455569A (zh) 2003-11-12
CN100474851C true CN100474851C (zh) 2009-04-01

Family

ID=22464960

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031241549A Expired - Fee Related CN100474851C (zh) 2002-04-29 2003-04-29 对等网络名字解析协议的安全基础结构和方法

Country Status (17)

Country Link
US (7) US7051102B2 (zh)
EP (1) EP1361728B1 (zh)
JP (1) JP4716648B2 (zh)
KR (1) KR100965716B1 (zh)
CN (1) CN100474851C (zh)
AU (1) AU2003203717B2 (zh)
BR (1) BR0301300A (zh)
CA (1) CA2424067C (zh)
ES (1) ES2384964T3 (zh)
HK (1) HK1060459A1 (zh)
MX (1) MXPA03003318A (zh)
MY (1) MY135693A (zh)
NO (1) NO334257B1 (zh)
PL (1) PL359916A1 (zh)
RU (1) RU2320008C2 (zh)
TW (1) TWI310649B (zh)
ZA (1) ZA200302690B (zh)

Families Citing this family (147)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7111168B2 (en) * 2000-05-01 2006-09-19 Digimarc Corporation Digital watermarking systems
WO2002057917A2 (en) * 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
US7065587B2 (en) * 2001-04-02 2006-06-20 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
US7051102B2 (en) * 2002-04-29 2006-05-23 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) security infrastructure and method
US20040143670A1 (en) * 2002-07-02 2004-07-22 Pratik Roychowdhury System, method and computer program product to avoid server overload by controlling HTTP denial of service (DOS) attacks
WO2004025466A2 (en) * 2002-09-16 2004-03-25 Clearcube Technology, Inc. Distributed computing infrastructure
US7613812B2 (en) 2002-12-04 2009-11-03 Microsoft Corporation Peer-to-peer identity management interfaces and methods
US8261062B2 (en) 2003-03-27 2012-09-04 Microsoft Corporation Non-cryptographic addressing
US7209929B2 (en) * 2003-04-17 2007-04-24 Salesforce.Com, Inc. Java object cache server for databases
US7533184B2 (en) * 2003-06-13 2009-05-12 Microsoft Corporation Peer-to-peer name resolution wire protocol and message format data structure for use therein
US7397922B2 (en) 2003-06-27 2008-07-08 Microsoft Corporation Group security
US7581010B2 (en) * 2003-07-14 2009-08-25 Microsoft Corporation Virtual connectivity with local connection translation
US7769866B2 (en) 2003-07-14 2010-08-03 Microsoft Corporation Virtual connectivity with subscribe-notify service
US7516482B2 (en) * 2003-07-21 2009-04-07 Microsoft Corporation Secure hierarchical namespaces in peer-to-peer networks
US7188254B2 (en) * 2003-08-20 2007-03-06 Microsoft Corporation Peer-to-peer authorization method
WO2005020897A2 (en) 2003-08-22 2005-03-10 Dendreon Corporation Compositions and methods for the treatment of disease associated with trp-p8 expression
WO2005022397A1 (en) * 2003-08-28 2005-03-10 Trihedron Co., Ltd. Method of data synchronization in multiplayer network games
US7336623B2 (en) * 2003-10-30 2008-02-26 Microsoft Corporation Peer-to-peer cloud-split detection and repair methods
US8156175B2 (en) 2004-01-23 2012-04-10 Tiversa Inc. System and method for searching for specific types of people or information on a peer-to-peer network
US7761569B2 (en) * 2004-01-23 2010-07-20 Tiversa, Inc. Method for monitoring and providing information over a peer to peer network
US7603716B2 (en) 2004-02-13 2009-10-13 Microsoft Corporation Distributed network security service
US7716726B2 (en) 2004-02-13 2010-05-11 Microsoft Corporation System and method for protecting a computing device from computer exploits delivered over a networked environment in a secured communication
US7814543B2 (en) 2004-02-13 2010-10-12 Microsoft Corporation System and method for securing a computer system connected to a network from attacks
US7392295B2 (en) * 2004-02-19 2008-06-24 Microsoft Corporation Method and system for collecting information from computer systems based on a trusted relationship
US7467303B2 (en) * 2004-03-25 2008-12-16 International Business Machines Corporation Grid mutual authorization through proxy certificate generation
US7363513B2 (en) * 2004-04-15 2008-04-22 International Business Machines Corporation Server denial of service shield
US7478120B1 (en) 2004-04-27 2009-01-13 Xiaohai Zhang System and method for providing a peer indexing service
US7966661B2 (en) * 2004-04-29 2011-06-21 Microsoft Corporation Network amplification attack mitigation
US20060010251A1 (en) * 2004-06-16 2006-01-12 Nokia Corporation Global community naming authority
US7929689B2 (en) 2004-06-30 2011-04-19 Microsoft Corporation Call signs
US20060004837A1 (en) * 2004-06-30 2006-01-05 Genovker Victoria V Advanced switching peer-to-peer protocol
JP4664050B2 (ja) 2004-07-01 2011-04-06 株式会社エヌ・ティ・ティ・ドコモ 認証ベクトル生成装置、加入者認証モジュール、移動通信システム、認証ベクトル生成方法、演算方法及び加入者認証方法
US20070271317A1 (en) * 2004-08-16 2007-11-22 Beinsync Ltd. System and Method for the Synchronization of Data Across Multiple Computing Devices
EP1646205A1 (en) * 2004-10-08 2006-04-12 Deutsche Thomson-Brandt Gmbh Method for establishing communication between peer-groups
US7716727B2 (en) 2004-10-29 2010-05-11 Microsoft Corporation Network security device and method for protecting a computing device in a networked environment
US20060136512A1 (en) * 2004-12-20 2006-06-22 International Business Machines Corporation Method and system for replicating data between a community of distributed entities
JP4208920B2 (ja) 2005-01-28 2009-01-14 株式会社グリッド・ソリューションズ BitTorrentプロトコルによるファイルのダウンロード方法
US7640329B2 (en) * 2005-02-15 2009-12-29 Microsoft Corporation Scaling and extending UPnP v1.0 device discovery using peer groups
US7647394B2 (en) * 2005-02-15 2010-01-12 Microsoft Corporation Scaling UPnP v1.0 device eventing using peer groups
US20060193265A1 (en) * 2005-02-25 2006-08-31 Microsoft Corporation Peer-to-peer name resolution protocol with lightweight traffic
US7826396B2 (en) * 2005-03-07 2010-11-02 Miller John L System and method for implementing PNRP locality
US7656810B2 (en) * 2005-03-25 2010-02-02 Microsoft Corporation System and method for monitoring and reacting to peer-to-peer network metrics
JP4572719B2 (ja) * 2005-03-30 2010-11-04 日本電気株式会社 トラフィック制御装置及びトラフィック制御方法並びにプログラム
US7350074B2 (en) * 2005-04-20 2008-03-25 Microsoft Corporation Peer-to-peer authentication and authorization
US7817647B2 (en) * 2005-04-22 2010-10-19 Microsoft Corporation Flower-petal resolutions for PNRP
US7603482B2 (en) * 2005-04-22 2009-10-13 Microsoft Corporation DNS compatible PNRP peer name encoding
US8036140B2 (en) 2005-04-22 2011-10-11 Microsoft Corporation Application programming interface for inviting participants in a serverless peer to peer network
US7836306B2 (en) 2005-06-29 2010-11-16 Microsoft Corporation Establishing secure mutual trust using an insecure password
US20070011171A1 (en) * 2005-07-08 2007-01-11 Nurminen Jukka K System and method for operation control functionality
US7467155B2 (en) * 2005-07-12 2008-12-16 Sand Technology Systems International, Inc. Method and apparatus for representation of unstructured data
CA2622479C (en) * 2005-09-15 2018-03-06 Fringland Ltd. Incorporating a mobile device into a peer-to-peer network
US8255546B2 (en) * 2005-09-30 2012-08-28 Microsoft Corporation Peer name resolution protocol simple application program interface
US20070094304A1 (en) * 2005-09-30 2007-04-26 Horner Richard M Associating subscription information with media content
JP5254801B2 (ja) * 2005-11-15 2013-08-07 タイヴァーサ・インコーポレーテッド P2pネットワーク・ソフトウェア・アプリケーションの存在を識別するシステム
US8161549B2 (en) 2005-11-17 2012-04-17 Patrik Lahti Method for defending against denial-of-service attack on the IPV6 neighbor cache
US20080005562A1 (en) * 2005-12-13 2008-01-03 Microsoft Corporation Public key infrastructure certificate entrustment
US7680937B2 (en) * 2005-12-22 2010-03-16 Microsoft Corporation Content publication
EP1801720A1 (en) * 2005-12-22 2007-06-27 Microsoft Corporation Authorisation and authentication
EP1826695A1 (en) * 2006-02-28 2007-08-29 Microsoft Corporation Secure content descriptions
US8370928B1 (en) * 2006-01-26 2013-02-05 Mcafee, Inc. System, method and computer program product for behavioral partitioning of a network to detect undesirable nodes
US8622837B2 (en) 2006-03-20 2014-01-07 Sony Computer Entertainment America Llc Managing game metrics and authorizations
US7480656B2 (en) * 2006-03-20 2009-01-20 Sony Computer Entertainment America Inc. Active validation of network devices
US8771061B2 (en) 2006-03-20 2014-07-08 Sony Computer Entertainment America Llc Invalidating network devices with illicit peripherals
US20070233832A1 (en) * 2006-03-30 2007-10-04 Matsushita Electric Industrial Co., Ltd. Method of distributed hash table node ID collision detection
US7881223B2 (en) * 2006-03-31 2011-02-01 Panasonic Corporation Method for on demand distributed hash table update
US20070230468A1 (en) * 2006-03-31 2007-10-04 Matsushita Electric Industrial Co., Ltd. Method to support mobile devices in a peer-to-peer network
WO2007113836A2 (en) * 2006-04-03 2007-10-11 Beinsync Ltd. Peer to peer syncronization system and method
US8086842B2 (en) * 2006-04-21 2011-12-27 Microsoft Corporation Peer-to-peer contact exchange
JP4187010B2 (ja) * 2006-05-31 2008-11-26 ブラザー工業株式会社 ネットワーク機器及び情報処理装置並びにプログラム
US8041942B2 (en) * 2006-09-05 2011-10-18 Panasonic Corporation Robust peer-to-peer networks and methods of use thereof
GB2446169A (en) * 2006-12-01 2008-08-06 David Irvine Granular accessibility to data in a distributed and/or corporate network
US20080137663A1 (en) * 2006-12-06 2008-06-12 Electronics And Telecommunications Research Institute Identifier verification method in peer-to-peer networks
US8069216B2 (en) * 2006-12-08 2011-11-29 Motorola Solutions, Inc. Method and apparatus for alerting nodes of a malicious node in a mobile ad-hoc communication system
US8489701B2 (en) * 2007-01-30 2013-07-16 Microsoft Corporation Private virtual LAN spanning a public network for connection of arbitrary hosts
BRPI0813820A2 (pt) * 2007-06-11 2015-01-06 Tiversa Inc Sistema e método para publicidade em uma rede par a par.
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US8312541B2 (en) * 2007-07-17 2012-11-13 Cisco Technology, Inc. Detecting neighbor discovery denial of service attacks against a router
US9088605B2 (en) * 2007-09-19 2015-07-21 Intel Corporation Proactive network attack demand management
US8935748B2 (en) 2007-10-31 2015-01-13 Microsoft Corporation Secure DNS query
CN101436926B (zh) * 2007-11-16 2011-11-16 华为技术有限公司 一种在p2p网络中防止攻击的方法、网络节点及系统
US8464045B2 (en) * 2007-11-20 2013-06-11 Ncr Corporation Distributed digital certificate validation method and system
US8448218B2 (en) * 2008-01-17 2013-05-21 Josep Bori Method and apparatus for a cryptographically assisted computer system designed to deter viruses and malware via enforced accountability
US7958261B2 (en) * 2008-02-14 2011-06-07 Microsoft Corporation Domain name cache control system generating series of varying nonce-bearing domain names based on a function of time
US7865618B2 (en) * 2008-02-22 2011-01-04 Micorsoft Corporation Defeating cache resistant domain name systems
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US9848314B2 (en) 2008-05-19 2017-12-19 Qualcomm Incorporated Managing discovery in a wireless peer-to-peer network
US9198017B2 (en) * 2008-05-19 2015-11-24 Qualcomm Incorporated Infrastructure assisted discovery in a wireless peer-to-peer network
US9288216B2 (en) 2008-06-19 2016-03-15 Qualcomm Incorporated Methods and apparatus for reducing the effectiveness of chosen location attacks in a peer-to-peer overlay network
CA2741459C (en) * 2008-10-22 2018-01-02 Research In Motion Limited Pushing certificate chains to remote devices
US8498230B2 (en) * 2009-03-03 2013-07-30 Nokia Corporation Power management in wireless communication systems
US20100226309A1 (en) * 2009-03-03 2010-09-09 Nokia Corporation Beaconing mode for wireless communication
US9055105B2 (en) 2009-05-29 2015-06-09 Nokia Technologies Oy Method and apparatus for engaging in a service or activity using an ad-hoc mesh network
GB0910657D0 (en) 2009-06-22 2009-08-05 Unilever Plc Antiperspirant compositions
US8538188B2 (en) * 2009-08-04 2013-09-17 Mitre Corporation Method and apparatus for transferring and reconstructing an image of a computer readable medium
US8769285B2 (en) * 2009-08-13 2014-07-01 Qualcomm Incorporated Methods and apparatus for deriving, communicating and/or verifying ownership of expressions
CN101631056A (zh) * 2009-08-18 2010-01-20 腾讯科技(深圳)有限公司 一种点对点应用中种子群的构建方法及装置
KR101598886B1 (ko) 2009-10-13 2016-03-03 삼성전자주식회사 이동통신 단말기에서 무선랜을 이용한 피어투피어 연결 방법 및 장치
US20110142028A1 (en) * 2009-12-10 2011-06-16 Nokia Corporation Synchronization via additional beacon transmission
US8774021B2 (en) 2009-12-10 2014-07-08 Nokia Corporation Data-related task support in wireless communication systems
US8842605B2 (en) * 2009-12-10 2014-09-23 Nokia Corporation Network discovery in wireless communication systems
US8683259B2 (en) * 2010-05-19 2014-03-25 Cleversafe, Inc. Accessing data in multiple dispersed storage networks
US8924304B2 (en) * 2010-06-04 2014-12-30 Apple Inc. Methods for using unique identifiers to identify systems in collaborative interaction in a mesh network
CN101895541B (zh) * 2010-07-09 2012-12-26 浙江省公众信息产业有限公司 一种P2P网络中协作抵抗覆盖层DDoS攻击的方法
US8566596B2 (en) * 2010-08-24 2013-10-22 Cisco Technology, Inc. Pre-association mechanism to provide detailed description of wireless services
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US9636589B2 (en) 2010-11-02 2017-05-02 Sony Interactive Entertainment America Llc Detecting lag switch cheating in game
KR101225013B1 (ko) * 2010-12-29 2013-02-07 (주)트라이디커뮤니케이션 리소스 제공 시스템 및 방법
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US8806192B2 (en) * 2011-05-04 2014-08-12 Microsoft Corporation Protected authorization for untrusted clients
US8964741B2 (en) * 2011-06-21 2015-02-24 Cisco Technology, Inc. Adjacency discovery through multicast and single-hop messaging
KR101796532B1 (ko) * 2011-06-22 2017-11-10 삼성전자주식회사 수면 모드 제어를 통한 에너지 절감 시스템 및 시스템의 동작 방법
US8874769B2 (en) * 2011-06-30 2014-10-28 Qualcomm Incorporated Facilitating group access control to data objects in peer-to-peer overlay networks
US9021278B2 (en) * 2011-08-10 2015-04-28 Qualcomm Incorporated Network association of communication devices based on attenuation information
US8804589B2 (en) 2011-10-14 2014-08-12 Nokia Corporation Adaptive awake window
CN102368740A (zh) * 2011-12-01 2012-03-07 北京交通大学 一种网络寻址方法
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
TWI476626B (zh) 2012-08-24 2015-03-11 Ind Tech Res Inst 電子裝置之認證方法及密碼設定方法及認證系統
US9042828B2 (en) 2012-11-26 2015-05-26 Nokia Corporation Method, apparatus, and computer program product for optimized discovery between mobile devices
US9154483B1 (en) * 2013-02-21 2015-10-06 Amazon Technologies, Inc. Secure device configuration
US9294563B2 (en) * 2013-02-27 2016-03-22 Omnivision Technologies, Inc. Apparatus and method for level-based self-adjusting peer-to-peer media streaming
US9401850B2 (en) 2013-05-08 2016-07-26 Vringo Infrastructure Inc. Cognitive radio system and cognitive radio carrier device
CN104348614B (zh) * 2013-07-24 2019-02-01 腾讯科技(深圳)有限公司 身份合法性验证的方法、装置及服务器
CN103619011B (zh) * 2013-11-21 2016-08-03 东南大学 一种无线传感器网络中的恶意节点容忍方法
US9485145B1 (en) * 2013-11-25 2016-11-01 Vce Company, Llc System, method, apparatus, and computer program product for determining a configuration of a converged infrastructure
US9794218B2 (en) 2014-04-29 2017-10-17 Trustiosity, Llc Persistent network addressing system and method
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US20160335609A1 (en) * 2015-05-15 2016-11-17 Gareth Jenkins Representation of digital asset structure, ownership and evolution by virtue of a hierarchical, compounding tagging mechanism on a transaction-based network
US9673937B2 (en) 2015-10-12 2017-06-06 International Business Machines Corporation Adaptive network communication protocols
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US10349259B2 (en) * 2016-09-23 2019-07-09 Apple Inc. Broadcasting a device state in a wireless communication network
US10616250B2 (en) * 2016-10-05 2020-04-07 Amazon Technologies, Inc. Network addresses with encoded DNS-level information
DE102016219475A1 (de) * 2016-10-07 2018-04-12 Robert Bosch Gmbh Verfahren und Vorrichtung zum Betreiben eines Bussystems
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10601591B2 (en) * 2017-01-25 2020-03-24 Microsoft Technology Licensing, Llc Close proximity inner circle discovery
TW201906535A (zh) 2017-05-23 2019-02-16 日商大正製藥股份有限公司 糖果
EP3506547A1 (en) * 2017-12-28 2019-07-03 Flytxt B.V. Providing security against user collusion in data analytics using random group selection
KR102651436B1 (ko) 2018-11-02 2024-03-25 아싸 아브로이 에이비 액세스 제어를 위한 시스템들, 방법들, 및 디바이스들
US10841393B2 (en) 2018-11-12 2020-11-17 Citrix Systems, Inc. Systems and methods for secure peer-to-peer caching
JP7391987B2 (ja) * 2019-03-25 2023-12-05 アッサ アブロイ アーベー アクセス制御読取機システム用の超広帯域装置
CN113631947A (zh) 2019-03-25 2021-11-09 亚萨合莱有限公司 具有基于定位的意图检测的物理访问控制系统
US11102243B1 (en) * 2019-06-26 2021-08-24 Amazon Technologies, Inc. Resource address resolution based on resource ownership changes to block communications with computing resources
US20210110384A1 (en) * 2019-07-04 2021-04-15 Vikatron, Inc. Ad Hoc Neural Network for Proof of Wallet
GB2594684A (en) * 2020-02-19 2021-11-10 Nchain Holdings Ltd Layered network
GB2592211A (en) * 2020-02-19 2021-08-25 Nchain Holdings Ltd Adapting connections of a layered network
CN111414321B (zh) * 2020-02-24 2022-07-15 中国农业大学 一种基于动态映射机制的cache防护方法及装置

Family Cites Families (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0449242A3 (en) * 1990-03-28 1992-10-28 National Semiconductor Corporation Method and structure for providing computer security and virus prevention
US5999711A (en) * 1994-07-18 1999-12-07 Microsoft Corporation Method and system for providing certificates holding authentication and authorization information for users/machines
JP3724001B2 (ja) * 1994-12-12 2005-12-07 富士通株式会社 情報処理装置
US6223255B1 (en) * 1995-02-03 2001-04-24 Lucent Technologies Microprocessor with an instruction level reconfigurable n-way cache
JP3407002B2 (ja) * 1995-03-08 2003-05-19 日本電信電話株式会社 メッセージ中継装置及びメッセージ中継方法
US5666486A (en) * 1995-06-23 1997-09-09 Data General Corporation Multiprocessor cluster membership manager framework
US5671279A (en) * 1995-11-13 1997-09-23 Netscape Communications Corporation Electronic commerce using a secure courier system
US5793365A (en) * 1996-01-02 1998-08-11 Sun Microsystems, Inc. System and method providing a computer user interface enabling access to distributed workgroup members
US6167279A (en) * 1996-03-13 2000-12-26 Telcordia Technologies, Inc. Method and system for supporting PACS using a GSM mobile switching center
US5832514A (en) * 1996-06-26 1998-11-03 Microsoft Corporation System and method for discovery based data recovery in a store and forward replication process
US6046833A (en) * 1997-02-10 2000-04-04 Optical Networks, Inc. Method and apparatus for operation, protection, and restoration of heterogeneous optical communication networks
US5987376A (en) * 1997-07-16 1999-11-16 Microsoft Corporation System and method for the distribution and synchronization of data and state information between clients in a distributed processing system
US6557102B1 (en) * 1997-09-05 2003-04-29 Koninklijke Philips Electronics N.V. Digital trust center for medical image authentication
US6130876A (en) * 1997-09-24 2000-10-10 At&T Corp Method and apparatus for restoring a network
US6061794A (en) * 1997-09-30 2000-05-09 Compaq Computer Corp. System and method for performing secure device communications in a peer-to-peer bus architecture
US6038296A (en) * 1997-10-07 2000-03-14 Lucent Technologies Inc. Internet/intranet user interface to a multimedia messaging system
JP3494562B2 (ja) * 1997-10-15 2004-02-09 株式会社東芝 ネットワーク管理システム
US5999712A (en) * 1997-10-21 1999-12-07 Sun Microsystems, Inc. Determining cluster membership in a distributed computer system
US6161181A (en) * 1998-03-06 2000-12-12 Deloitte & Touche Usa Llp Secure electronic transactions using a trusted intermediary
US6199052B1 (en) * 1998-03-06 2001-03-06 Deloitte & Touche Usa Llp Secure electronic transactions using a trusted intermediary with archive and verification request services
US20010037453A1 (en) * 1998-03-06 2001-11-01 Mitty Todd Jay Secure electronic transactions using a trusted intermediary with non-repudiation of receipt and contents of message
US6718470B1 (en) * 1998-06-05 2004-04-06 Entrust Technologies Limited System and method for granting security privilege in a communication system
US6314501B1 (en) * 1998-07-23 2001-11-06 Unisys Corporation Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory
JP3932685B2 (ja) * 1998-08-11 2007-06-20 富士ゼロックス株式会社 ネットワーク上で遠隔手続き呼び出しを実行するための方法、及び、遠隔手続き呼び出しを実行可能なネットワーク・システム
GB9822550D0 (en) * 1998-10-15 1998-12-09 British Telecomm Computer communications
US6233606B1 (en) * 1998-12-01 2001-05-15 Microsoft Corporation Automatic cache synchronization
US6480473B1 (en) * 1998-12-29 2002-11-12 Koninklijke Philips Electronics N.V. Verification of active nodes in an open network
US6507908B1 (en) * 1999-03-04 2003-01-14 Sun Microsystems, Inc. Secure communication with mobile hosts
US6513062B1 (en) * 1999-05-25 2003-01-28 Grischa Corporation Method, apparatus, and computer program product for efficient server response generation using intermediate state caching
US6532494B1 (en) * 1999-05-28 2003-03-11 Oracle International Corporation Closed-loop node membership monitor for network clusters
US6397303B1 (en) * 1999-06-24 2002-05-28 International Business Machines Corporation Data processing system, cache, and method of cache management including an O state for memory-consistent cache lines
US6405290B1 (en) * 1999-06-24 2002-06-11 International Business Machines Corporation Multiprocessor system bus protocol for O state memory-consistent data
JP2003529126A (ja) * 1999-08-12 2003-09-30 サーノフ コーポレイション ピアツーピアネットワークユーザ認証プロトコル
US6704692B1 (en) * 1999-10-25 2004-03-09 The Boeing Company Method and system for tracking multiple objects
US7107347B1 (en) * 1999-11-15 2006-09-12 Fred Cohen Method and apparatus for network deception/emulation
EP1104960B1 (en) * 1999-12-02 2009-08-26 Sony Deutschland GmbH Message authentication
US20020056025A1 (en) * 2000-11-07 2002-05-09 Qiu Chaoxin C. Systems and methods for management of memory
US6973040B1 (en) * 2000-03-13 2005-12-06 Netzentry, Inc. Method of maintaining lists of network characteristics
EP1134644A3 (en) * 2000-03-14 2004-08-18 International Business Machines Corporation Method and system for verifying access to a network environment
US20020032592A1 (en) * 2000-04-17 2002-03-14 Steve Krasnick Online meeting planning program
EP1277326A2 (en) * 2000-04-28 2003-01-22 Internet Security Systems, Inc. Method and system for managing computer security information
US20010051927A1 (en) * 2000-06-08 2001-12-13 Blinkspeed, Inc. Increasing web page browsing efficiency by periodically physically distributing memory media on which web page data are cached
US6738868B2 (en) * 2000-06-10 2004-05-18 Hewlett-Packard Development Company, L.P. System for minimizing directory information in scalable multiprocessor systems with logically independent input/output nodes
US7107269B2 (en) * 2000-06-13 2006-09-12 Lucent Technologies Inc. Methods and apparatus for providing privacy-preserving global customization
JP2002057701A (ja) * 2000-08-07 2002-02-22 Bitto Aato:Kk マルチメディア通信方法および装置
US6941384B1 (en) * 2000-08-17 2005-09-06 International Business Machines Corporation Methods, systems and computer program products for failure recovery for routed virtual internet protocol addresses
JP2002064495A (ja) * 2000-08-21 2002-02-28 Nippon Telegraph & Telephone East Corp ネットワークシステム、及びネットワーク管理方法
JP2002111713A (ja) * 2000-09-28 2002-04-12 Toshiba Corp ネットワークシステム、ネームサーバ、サーバ、およびネットワークシステムのip通信方法
US6636854B2 (en) * 2000-12-07 2003-10-21 International Business Machines Corporation Method and system for augmenting web-indexed search engine results with peer-to-peer search results
US7333482B2 (en) * 2000-12-22 2008-02-19 Interactive People Unplugged Ab Route optimization technique for mobile IP
US7146432B2 (en) * 2001-01-17 2006-12-05 International Business Machines Corporation Methods, systems and computer program products for providing failure recovery of network secure communications in a cluster computing environment
US6941366B2 (en) * 2001-01-17 2005-09-06 International Business Machines Corporation Methods, systems and computer program products for transferring security processing between processors in a cluster computing environment
US7209479B2 (en) * 2001-01-18 2007-04-24 Science Application International Corp. Third party VPN certification
US20020156974A1 (en) 2001-01-29 2002-10-24 Ulrich Thomas R. Redundant dynamically distributed file system
US7065587B2 (en) 2001-04-02 2006-06-20 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
WO2002084948A1 (en) 2001-04-05 2002-10-24 Imahima, Inc. Real-time mobile communication system for chatting
US7721110B2 (en) * 2001-04-06 2010-05-18 Mcafee, Inc. System and method for secure and verified sharing of resources in a peer-to-peer network environment
US7272636B2 (en) * 2001-04-24 2007-09-18 Sun Microsystems, Inc. Peer group name server
US6950821B2 (en) * 2001-05-04 2005-09-27 Sun Microsystems, Inc. System and method for resolving distributed network search queries to information providers
US7171415B2 (en) * 2001-05-04 2007-01-30 Sun Microsystems, Inc. Distributed information discovery through searching selected registered information providers
US7031314B2 (en) * 2001-05-16 2006-04-18 Bytemobile, Inc. Systems and methods for providing differentiated services within a network communication system
US7028179B2 (en) * 2001-07-03 2006-04-11 Intel Corporation Apparatus and method for secure, automated response to distributed denial of service attacks
US7299351B2 (en) * 2001-09-19 2007-11-20 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) security infrastructure and method
US20030097410A1 (en) * 2001-10-04 2003-05-22 Atkins R. Travis Methodology for enabling multi-party collaboration across a data network
US7047564B2 (en) * 2001-10-31 2006-05-16 Computing Services Support Solutions, Inc. Reverse firewall packet transmission control system
US20030177190A1 (en) * 2001-11-27 2003-09-18 International Business Machines Corporation Method and apparatus for interaction with electronic mail from multiple sources
US7076803B2 (en) * 2002-01-28 2006-07-11 International Business Machines Corporation Integrated intrusion detection services
US7051049B2 (en) * 2002-02-21 2006-05-23 International Business Machines Corporation Real-time chat and conference contact information manager
US6912622B2 (en) * 2002-04-15 2005-06-28 Microsoft Corporation Multi-level cache architecture and cache management method for peer-to-peer name resolution protocol
US7206862B2 (en) * 2002-04-24 2007-04-17 Microsoft Corporation Method and apparatus for efficiently matching responses to requests previously passed by a network node
US7051102B2 (en) * 2002-04-29 2006-05-23 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) security infrastructure and method
US20040145608A1 (en) 2003-01-24 2004-07-29 International Business Machines Corporation User interface for conducting chats over a network
JP2004302751A (ja) * 2003-03-31 2004-10-28 Hitachi Ltd 計算機システムの性能管理方法、および、記憶装置の性能を管理する計算機システム
NO318975B1 (no) * 2003-06-20 2005-05-30 Tandberg Telecom As System og fremgangsmate for oppsett av moter og konferanser
US8001187B2 (en) * 2003-07-01 2011-08-16 Apple Inc. Peer-to-peer active content sharing
US20050027800A1 (en) * 2003-07-28 2005-02-03 International Business Machines Corporation Agenda-driven meetings
US8161110B2 (en) 2003-09-25 2012-04-17 Synthetron Nv Method and apparatus for scalable meetings in a discussion synthesis environment

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
A Secure Platform for Peer-to-Peer Computing in the Internet. Wooyoung Kim,Sven Graupner and Akhil Sahai.IEEE. 2002
A Secure Platform for Peer-to-Peer Computing in the Internet. Wooyoung Kim,Sven Graupner and Akhil Sahai.IEEE. 2002 *
Building Peer-to-Peer Systems With Chord,a DistributedLookup Service. Frank Dabek,Emma Brunskill,M.Frans Kaashoek,DavidKarger.IEEE. 2001
Building Peer-to-Peer Systems With Chord,a DistributedLookup Service. Frank Dabek,Emma Brunskill,M.Frans Kaashoek,DavidKarger.IEEE. 2001 *
P2P Networking:An Information-Sharing Alternative. Manoj Parameswaran,Anjana Susarla,Andrew B.Wbinston.IEEE. 2001
P2P Networking:An Information-Sharing Alternative. Manoj Parameswaran,Anjana Susarla,Andrew B.Wbinston.IEEE. 2001 *
Seperating key management from file system security. David,Mazi`eres,Michael,Kaminsky,M.Frans,Kaashoek,andEmmett,Witchel.17th ACM Symposium on Operating Systems Principles(SOSP'99). 1999
Seperating key management from file system security. David,Mazi`eres,Michael,Kaminsky,M.Frans,Kaashoek,andEmmett,Witchel.17th ACM Symposium on Operating Systems Principles(SOSP'99). 1999 *

Also Published As

Publication number Publication date
US20080295170A1 (en) 2008-11-27
NO20031496L (no) 2003-10-30
BR0301300A (pt) 2004-08-17
RU2320008C2 (ru) 2008-03-20
CA2424067C (en) 2012-09-11
KR20030085476A (ko) 2003-11-05
US20060174005A1 (en) 2006-08-03
US20090006849A1 (en) 2009-01-01
US7444372B2 (en) 2008-10-28
AU2003203717B2 (en) 2008-06-19
US7051102B2 (en) 2006-05-23
US20070168512A1 (en) 2007-07-19
ES2384964T3 (es) 2012-07-16
US20060161657A1 (en) 2006-07-20
EP1361728A2 (en) 2003-11-12
TW200307442A (en) 2003-12-01
KR100965716B1 (ko) 2010-06-24
EP1361728B1 (en) 2012-05-23
JP2004030610A (ja) 2004-01-29
NO20031496D0 (no) 2003-04-02
US7418479B2 (en) 2008-08-26
TWI310649B (en) 2009-06-01
MY135693A (en) 2008-06-30
CN1455569A (zh) 2003-11-12
AU2003203717A1 (en) 2003-11-13
JP4716648B2 (ja) 2011-07-06
CA2424067A1 (en) 2003-10-29
US20030204742A1 (en) 2003-10-30
MXPA03003318A (es) 2004-10-29
US7251694B2 (en) 2007-07-31
HK1060459A1 (en) 2004-08-06
EP1361728A3 (en) 2010-01-06
US7720962B2 (en) 2010-05-18
ZA200302690B (en) 2003-10-13
NO334257B1 (no) 2014-01-20
US7725567B2 (en) 2010-05-25
PL359916A1 (en) 2003-11-03
US20060179139A1 (en) 2006-08-10
US7680930B2 (en) 2010-03-16

Similar Documents

Publication Publication Date Title
CN100474851C (zh) 对等网络名字解析协议的安全基础结构和方法
US11329995B2 (en) Blockchain-based system, and electronic apparatus and method in the system
US10534913B2 (en) Blockchain state reliability determination
US11153091B2 (en) Untrusted code distribution
Ali et al. ZombieCoin 2.0: managing next-generation botnets using Bitcoin
US20110047610A1 (en) Modular Framework for Virtualization of Identity and Authentication Processing for Multi-Factor Authentication
EP3437353B1 (en) Blockchain state reliability determination
Shafarenko A PLS blockchain for IoT applications: protocols and architecture
Schaerer et al. Veritaa: A distributed public key infrastructure with signature store
KR20200125279A (ko) 블록 체인기반의 사용자 인증 방법, 시스템
Rass et al. Community-based security for the internet of things
CN112104701B (zh) 一种跨链通信的方法、装置、网络节点和存储介质
Zubair Cryptanalysis of RFID ultra-lightweight protocols and comparison between its solutions approaches
Witanto et al. Blockchain-based OCF Firmware Update
EP3437289B1 (en) Untrusted code distribution
CN113922953B (zh) 一种数据处理方法及装置
Banyal et al. Blockchain‐enabled
Le Secure and Private Access Control for Systems of Smart Devices
Bettahar et al. Secure Smart Home Access Control System Using Blockchain Technology
KR100358927B1 (ko) 안전한 도메인 네임 시스템에서의 네이밍 정보 인증방법및 네임 서버
KR100834580B1 (ko) 피어 투 피어 네트워크에서의 아이디 검증 방법
Song et al. A Novel Address Resolution Process Based on the Seek Secret Man Protocol.
Potzmader et al. STUNT: A Simple, Transparent, User-Centered Network of Trust
Bryce Message quality for ambient system security

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150505

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150505

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090401

Termination date: 20180429

CF01 Termination of patent right due to non-payment of annual fee