crypto programming assignment for the Coursera crypto class from U. Maryland