computationally easy to create key pairs
computationally easy for sender knowing public key to encrypt messages
computationally easy for receiver knowing private key to decrypt cipher text
computationally infeasible for opponentto determine private key from public key
computationally infeasible for opponentto otherwise recoveroriginal message