An algorithm for encrypting and decrypting data. Sometimes used interchangeably with the word "code".