A encryption algoritm with a key