Shared Secret Versus Public Key
In Shared Secret cryptography, each party uses the same key (if a key is involved) and either the same algorithm or algorithms that can be derived from each other using simple mathematical operations. That is to say, after Party A knows how to encrypt a message, it can trivially determine how to decrypt it without knowing any additional keys or algorithms. They share the secret of how to translate the message.
In Public Key cryptography, by contrast, the key and/or algorithm used for encryption is nontrivially different from the key and/or algorithm used for decryption. Typically, one of these is public (known to any number of parties, possibly even advertised on the Internet) and the other is private (known only to a single party). Here, anyone could use Party A's public key to encrypt a message, but only someone who knows Party A's private key (which should be only Party A if the keys are behaving correctly) can decrypt it.
