The correct answer is encryption algorithm.
An encryption algorithm is a mathematical function or program that processes data (plaintext) using a key to produce encoded output (ciphertext). The key is a piece of information that determines the output of the algorithm, but the encryption algorithm itself is the overarching function.