Author: R J McEliece