EP1361728A2

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

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.

EP1361728A2, drawing sheet 1
Sheet 1 of 7

Term

Term ended

Projected expiry passed 7 April 2023, 3.5 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

49 claims: 10 independent, 39 dependent

  1. 1
    A method of generating a self-verifiable insecure peer address certificate to preventing a malicious node from publishing another node's secure identification in an insecure peer address certificate in a peer-to-peer network, comprising the steps of:generating an insecure peer address certificate (PAC) for a resource discoverable in the peer-to-peer network, the resource having a peer-to-peer identification (ID);and including an uniform resource identifier (URI) in the insecure PAC from which the peer-to-peer ID is derived.
  2. 4
    A method of opportunistically validating a peer address certificate at a first node in a peer-to-peer network, the first node utilizing a multilevel cache for storage of peer address certificates, comprising the steps of:receiving a peer address certificate (PAC) purportedly from a second node;determining in which level of the multilevel cache the PAC is to be stored;when the PAC is to be stored in one of two lowest cache levels (a) placing the PAC in a set aside list, (b) generating an INQUIRE message containing an ID of the PAC to be validated, (c) transmitting the INQUIRE message to the second node;and when the PAC is to be stored in an upper cache level other than one of the two lowest cache levels, storing the PAC in the upper cache level.
  3. 18
    A method of discovering a node in a peer-to-peer network, comprising the steps of:broadcasting a discovery message in the peer-to-peer network without including any IDs locally registered;receiving a response from a node in the peer-to-peer network;and establishing a peering relationship with the node.
  4. 20
    A method of inhibiting a denial of service attack based on a synchronization process in a peer-to-peer network, comprising the steps of:receiving a SOLICIT message requesting cache synchronization from a first node, the SOLICIT message containing a peer address certificate (PAC) for the first node;examining the PAC to determine its validity;and dropping the SOLICIT packet when the step of examining the PAC determines that the PAC is not valid.
  5. 25
    A method of inhibiting a denial of service attack based on a synchronization process in a peer-to-peer network, comprising the steps of:receiving a REQUEST message purportedly from a first node;determining if the REQUEST message is in response to prior communication with the first node;and rejecting the REQUEST message when the REQUEST message is not in response to prior communication with the first node.
  6. 27
    A method of inhibiting denial of service attacks based on node resource consumption in a peer-to-peer network, comprising the steps of:receiving a message from a node in the peer-to-peer network;examining current resource utilization;and rejecting processing of the message when the step of examining current resource utilization indicates that the current resource utilization is above a predetermined level.
  7. 31
    A method of inhibiting denial of service attacks based on node bandwidth consumption in a peer-to-peer network, comprising the steps of:receiving a request for cache synchronization from a node in the peer-to-peer network;examining a metric indicating a number of cache synchronizations performed in the past;and rejecting processing of the request for cache synchronization when the step of examining the metric indicates that the number of cache synchronization performed in the past exceed a predetermined maximum.
  8. 33
    A method of inhibiting a search based denial of service attack in a peer-to-peer network, comprising the steps of: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;and sending the resolution request to the randomly selected node.
  9. 35
    A method of inhibiting a search based denial of service attack in a peer-to-peer network, comprising the steps of:receiving a RESPONSE message;determining if the RESPONSE message is in response to a prior RESOLVE message;rejecting the RESPONSE message when the RESPONSE message is not in response to the prior RESOLVE message.
  10. 39
    A method of inhibiting a malicious node from removing a valid node from the peer-to-peer network, comprising the steps of:receiving a revocation certificate purportedly from the valid node having a peer address certificate (PAC) stored in cache;and verifying that the revocation certificate is signed by the valid node.