Skip to content

[PROPOSAL] Hybrid Cryptosystem Proposal - DHKE + AES #45

@robertDurst

Description

@robertDurst

AFAIK, RSA isn't supposed to be used as a message encryption system. Instead, it (asymmetric) is better when combined with a symmetric system, forming a hybrid cryptosystem.

As defined by Wikipedia:

A hybrid cryptosystem can be constructed using any two separate cryptosystems:

  • a key encapsulation scheme, which is a public-key cryptosystem, and
  • a data encapsulation scheme, which is a symmetric-key cryptosystem.

Hybrid Cryptosystem Proposal

I propose we move away from RSA and instead use the following scheme:

  1. Alice, Bob, and Charlie agree on a finite, cyclical group G of order n with generator g and modulo p.
  2. Alice, Bob, and Carol each generate a random natural number a, b, and c respectively such that they are greater than 0 and less than n
  3. Alice, Bob, and Carol join the server, registering their public keys g^a and the server broadcasts these public keys to all participants.
  4. Alice wants to send a message to Bob, so she calculates (g^b)^a.
  5. Alice utilizes AES with (g^b)^a as the secret key to encrypt message m -> c_b.
  6. Alice broadcasts [BOB_PUBLIC_KEY][ALICE_PUBLIC_KEY]: c_b.
  7. Bob receives Alice's message, calculates (g^a)^b and decrypts c_b.

References:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions