Ruby solutions to the Matasano crypto challenges