Key Management Distributed System
- In different cryptosystems, keys were readily available.
- In the case of authentication, each party shares a key with the KDC.
- The main problem is how to distribute the keys securely.
- The second issue is to I revoke keys that are compromised or invalidated.
- First, let us consider how to set up a session’s key.
- When Anant wants to have a secure channel of communication with Balwant.
- He uses Balwant’s public key to initiate communication.
- If Balwant accepts, he generates a session’s key and sends it to Anant after encrypting it with Anant’s public key.
- Similarly, a session key can be generated and distributed if both Anant and Balwant share a secret key.
- It means that they both have the means to establish a secure channel.
- A secure channel is necessary to share the secret key with the help of Key Management Distributed System.
Issues in Key Distribution
Key distribution in symmetric cryptosystem
- If two users on different nodes want to communicate using a symmetric cryptosystem, they must first share the encryption/decryption key that needs to transmit over the physical insecure medium.
- Hence, the key must encrypt before transmission.
- Usually, a small number of keys distributed earlier using a server process managed by a key distribution center (KDC). This is a trusted entity and shared by all communicating users.
- The various implementation approaches are:
- In this approach, a single KDC maintains a table of secret keys for each user.
- A user A makes a request to the KDC (in plaintext with its user-id) indicating that it wants a secure communicating channel with user B.
- The KDC extracts the key value corresponding to the userid and creates a secret key for secure communication between user A and B and sends it to user /I.
- On receiving the message, user A decrypts the key after confirming that it is matching with the original request.
- Now the user uses this key and sends a message to user B who decrypts with its private key and retrieves the secret key.
- Now both users A and B use the secret key for message transmission.
- The centralized approach is simple and easy to implement.
- The drawbacks are poor reliability and performance bottleneck due to a single KDC.
- The KDC resides at each node in the distributed system and the secret keys distributed well in advance.
- Thus, all KDCs can communicate with each other, the Key Management Distributed System has a table of secret keys with private keys of all other KDCs For a system with n nodes, each KDC has n – 1 keys and a total of n(n – 1 )/2 key pairs exist in the system.
- To establish a secure logical communication channel, user A makes a request to the local KDC (plaintext form).
- Moreover, The KDC extracts the keys corresponding to the users and creates a secret key for secure communication and sends it to user A and B.
- On receiving the message, user A verifies that the message matches with the original and keeps the key for future use.
- Similarly, user B decrypts the message with its private key and extracts the secret key.
- Now, user B initiates the authentication procedure, authenticates user A and then, proceeds with secure communication.
- Here the nodes partitioned into regions and each region has a KDC.
- Moreover, The prior distribution of secret keys allows each Key Management Distributed System to communicate securely with each user of its own region and with KDCs of other regions.
- Each Key Management Distributed System has a table of secret keys that contain private keys of all users of its own region and of all other KDCs.
- Also, The distribution of a key for establishing a secure communication channel depends on the location of the two users: whether they belong to the same region or to two different regions.
- Moreover, In the former case, the key distribution is similar to the centralized approach.
- If the users belong to different regions, the key distribution procedure is exactly similar to the fully distributed approach.