CMP EMBEDDED.COM

Login | Register     Welcome Guest  
HOME DESIGN PRODUCTS COLUMNS E-LEARNING CONFERENCES CODE FORUMS/BLOGS NEWSLETTERS CONTACT FEATURES RSS RSS

Securing wireless ad hoc networks: Part 2 - Key Establishment and Authentication



Embedded.com
Unfortunately, the role of distributing the CA among multiple physical entities is easier said than done. Realize that the CA is characterized by the possession of the system secret, KiCA. In our distributed-CA model, who would possess this system secret? A trivial solution is to have each of the S nodes which form the virtual-CA possess the system secret.

However, this approach has several problems. By having each of the S nodes posses the system secret, we have effectively created multiple instances of the same CA and not a distributed CA as we had intended. This approach also compromises the system secret since it is available to multiple nodes and therefore more vulnerable to compromise.

Figure 8.2: Bluetooth Networks

To achieve a virtual CA, we turn to threshold cryptography, also known as threshold secret sharing, which works by distributing trust among multiple nodes. In this approach, the system secret is divided into Q parts such that any S (< Q) of these parts are enough to carry out a cryptographic operation that would have been possible with the system secret. (There are various approaches to achieve this division but we do not go into the details for reasons of brevity.)

Note that to carry out a cryptographic operation at least S parts of the system secret are required. A system employing threshold cryptography is therefore defined by the use of two parameters: Q and S. Q nodes posses shares of the system secret and any S of these nodes can work in coalition as a CA.

This means that the system can tolerate a compromise of up to S-1 nodes without the security of the whole system being compromised. We now describe how threshold cryptography is extended to build a virtual CA in an ad hoc environment. We first divided the system secret, KiCA (the private key of the CA) into Q secret shares (k1, k2, ., kQ).

A single share of the system secret by itself cannot be used to provide any CA service. However, if S (< Q) such shares are combined, they can be used to provide CA services. Each of these shares is assigned or distributed to a server. (There is an interesting initialization problem here which will be discussed later in this series.)

The term server is used to refer to a node which will participate in forming the virtual CA. Servers in an ad hoc data network have the following special properties:

1. A server can be initialized securely with its share of the system secret which allows them to act as the server.

2. A server knows the public keys of all nodes which can join the ad hoc network. Now, consider an ad hoc network where node A wishes to communicate with node B securely.

To do so, A needs to authenticate B. A could simply use a challengeresponse system with PKC as follows:

1. A sends a challenge (random number) to B

2. B encrypts the challenge with its private key (KiB) to generate a response and sends it back to A.

3. A decrypts the response with B's public key (KwB) and compares the decrypted value with the challenge and if the two match, A concludes that it is communicating with B.

1 | 2 | 3 | 4 | 5

Rate this article: Low High
Current rating
  • .
Embedded.com Career Center
Looking for a new job?
SEARCH JOBS

Browse all jobs

SPONSOR
RECENT JOB POSTINGS





 :