Public Key Cryptography - KaveriBridge/crypto GitHub Wiki

About

  • In public key cryptography, there are 5 elements : the actual data, sender’s public key, sender’s private key, receiver’s public key and receiver’s private key.

Sender

  • Computes hash on data
  • Encrypts data-hash with sender-privkey
  • Sender encrypts (data + sender-privkey-encrypted-hash) with receiver-pubkey
  • Sender sends receiver-pubkey-encrypted-data

Reciever

  • Recieves receiver-pubkey-encrypted-data
  • Decrypts receiver-pubkey-encrypted-data with receiver-privkey
    • This ensures only receiver can see the decrypted data
  • Computes hash for data
  • Decrypts sender-privkey-encrypted-hash with sender-pubkey
  • Compares data-hash with decrypted-hash
    • This ensures that data has not been corrupted in transit
    • This ensures that data has indeed been sent by sender

See also