I want know what common use products are there that use public key/private key cryptography?
-
Are you also interested in common real-world uses of other Public/Private key protocols besides RSA (e.g. DSA etc?)– nealmcbJan 2, 2011 at 7:09
-
@nealmcb Yes I need something like what you said– Am1rr3zAJan 2, 2011 at 9:50
-
if you're asking what common use protocols use public key cryptography (as opposed to when to use public and when to use private), I suggest you edit the question to make your meaning clear.– AviD ♦Jan 3, 2011 at 7:37
-
could anyone tell me exact name of company products which are using private/symmetric key cryptography in some or other form?– user7717Feb 14, 2012 at 6:36
3 Answers
Public/Private key crypto is used in a wide variety of protocols and data formats, which are implemented by a huge range of application and system software:
- SSL (https) protocol
- SSH (secure remote login, tunneling, etc) (public/private authn/authz is optional)
- Digitally signed PDF files (including attachments within the PDF)
- Signed Applets and jar archive files for Java
- Digital signatures in the packaging infrastructure for Debian, Ubuntu and Red Hat Linux distributions, etc.
- PGP/GPG for signed and/or encrypted files and email (perhaps the first widely used non-military public/private key crypto?)
- S/MIME for signed and/or encrypted email
- DNSSEC for securing the DNS
- Internet Key Exchange (IKE) in IPsec for secure low-level TCP/UDP networking
- RFC 3161 for authenticated timestamps
- Most other encryption or signature schemes which don't require prior out-of-band secure communication between the parties. Many are described at http://www.apps.ietf.org/rfc/seclist.html
- A variety of other uses, like digital cash and secure transparent voting (see e.g. the trustee keys for Helios)
Let's start with, you keep the Private key for your use only, and the Public key for anyone else ;)
Generally speaking, there are two main situations where you would use these:
Assymetric Encryption
You use Tom's public key to encrypt a message for him only; He would use his matching private key to decrypt it.
He would then respond using your public key, and so you'd be able to read it only using your private key.
Encrypt with public, decrypt with private.
Digital signature
You sign a public message using your private key. Anyone else freely validate the signature on your message using your public key, and thus be ensured that it was you who wrote this message (and combined with a secure hash, that it was not changed).
Sign with private, validate with public.
-
I know what exactly RSA Algorithm, I want know in real world where it user, like PGP in mail, or HMAC and ...– Am1rr3zAJan 2, 2011 at 7:04
-
Huh? you dont use private/public keys for HMAC, and I wrote exactly where to use which. Didnt say anything about RSA (though of course it applies to RSA too...). Are you simply asking, what common use products are there that use public key cryptography? Because thats a very different question from what you asked...– AviD ♦Jan 2, 2011 at 7:56
-
yes I need "what common use products are there that use public key cryptography" sorry if I ask wrong in my first question.– Am1rr3zAJan 2, 2011 at 9:51
-
1Ah, okay - then see @nealmcb's answer, more inline with what you meant. @Am1rr3zA, can I suggest you edit the question, so it's more clear what you're looking for?– AviD ♦Jan 2, 2011 at 9:59
Asymmetric cryptography is slow, and thus reserved for small size inputs, whereas symmetric cryptography is fast. The principle is to use Asymmetric cryptography to exchange a symmetric key with the authenticated peer, and then use AES for instance.
This is how work ssh and https for instance.