IP Library Granted Patent US 7,418,479
Granted Patent B2
US 7,418,479 · App. 11/376,397 · Granted Aug 26, 2008

Peer-to-peer name resolution protocol (PNRP) security infrastructure and method

Assignee: Microsoft Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,418,479
App. No.
11/376,397
Granted
Aug 26, 2008
Kind
B2
Abstract

A security infrastructure and methods are presented that inhibit the ability of a malicious node from disrupting the normal operations of a peer-to-peer network. The methods of the invention allow both secure and insecure identities to be used by nodes by making them self-verifying. When necessary or opportunistic, ID ownership is validated by piggybacking the validation on existing messages. The probability of connecting initially to a malicious node is reduced by randomly selecting to which node to connect. Further, information from malicious nodes is identified and can be disregarded by maintaining information about prior communications that will require a future response. Denial of service attacks are inhibited by allowing the node to disregard requests when its resource utilization exceeds a predetermined limit. The ability for a malicious node to remove a valid node is reduced by requiring that revocation certificates be signed by the node to be removed.

Claims (26)

1. A method of inhibiting a search based denial of service attack in a peer-to-peer network, comprising:

examining cache entries of known peer address certificates to determine appropriate nodes to

which to send a resolution request;

randomly selecting one of the appropriate nodes;

sending the resolution request to the randomly selected node;

randomly selecting at least one appropriate node from the cache of entries of known peer address certificates; and

wherein randomly selecting one of the appropriate nodes further comprises calculating a weighted probability for each of the appropriate nodes, the weighted probability based on an inverse proportionality of a distance to the node.

2. The method of claim 1 , further comprising creating a collection of appropriate nodes by taking all appropriate nodes, creating additional duplicate appropriate nodes in an inverse proportion of the distance to the node and randomly selecting the appropriate node from the collection of appropriate nodes.

3. The method of claim 1 , further comprising excluding the appropriate node last used to resolve a name.

4. The method of claim 1 , further comprising:

determining a resolve request value, the resolve request value comprising a number of times the appropriate node has been used to resolve a name;

wherein the excluded appropriate node comprises the resolve request value above a threshold.

5. A computer-readable storage medium having computer-executable instructions for inhibiting a search based denial of service attack in a peer-to-peer network comprising computer executable code for:

examining a cache, the cache comprising entries of known peer address certificates; determining at least one appropriate node from the cache; randomly selecting one of the at least one appropriate node;

sending a search request to the randomly-selected one of the at least one appropriate node;

wherein the at least one appropriate node comprises a next hop node to which to forward the search request;

randomly selecting one of the at least one appropriate node further comprises code for calculating a weighted probability for each of the appropriate nodes; and

calculating a weighted probability for each of the appropriate nodes is based on an inverse proportionality of a distance to the node.

6. The computer readable storage medium of claim 5 , the computer executable code further comprising code for determining at least three appropriate nodes from the cache.

7. The computer-readable storage medium of claim 5 , further comprising computer executable code for: creating a collection of appropriate nodes by:

selecting all appropriate nodes from the cache;

creating additional duplicate appropriate nodes in an inverse proportion of the distance to the node;

storing the additional duplicate nodes and the appropriate nodes from the cache in the collection;

randomly selecting one node from the collection; and

sending the search request to the randomly-selected node from the collection.

8. The computer-readable storage medium of claim 5 , further comprising computer executable code for excluding the appropriate node last used to resolve a name.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034543/0001 →
Continuity (2)
Division 1013478000 · Apr 29, 2002
Related Publication 20070168512A1 · Jul 19, 2007