Cryptol Version 2 Released
Cryptol Version 2 Released
Written by Kay Ewbank   
Tuesday, 06 May 2014

An open source version of Cryptol has been released. The language is designed specifically for cryptography, and while this is the first public version, the language has been under development and in use for almost 15 years.

Cryptol was originally developed by Galois for the United States National Security Agency, but it is also used by private companies.

 

cryptolbanner

 

Writing about the new release on the company blog, the team points out that Cryptol helps developers detect (or avoid) correctness errors in cryptographic code. They say Cryptol reduces the gap between the reference specification of a cryptographic algorithm and an executable version which can be used for testing and verification.

The problem with many cryptographic algorithms is that they are written in academic papers in a mathematical notation that is not executable. This is then converted to a “reference implementation” which looks different to the math, and that reference implementation is then used in apps, but there has been no easy way to check the accuracy of the reference implementation against the mathematical specification.

Cryptol is a domain-specific language for specifying cryptographic algorithms. According to its creators a Cryptol implementation of an algorithm resembles its mathematical specification more closely than an implementation in a general purpose language.

cryptolcode

Using a specification in Cryptol, programmers can generate their own test vectors, prove theorems, and (using other tools) verify equivalence to their own programs, or generate code or hardware from the specification.

The developers say Cryptol is a powerful tool for harnessing the power of SMT Solvers like Yices, Z3 and CVC4. The open source version of is, hosted on GitHub. If you want to see the range of uses to which it can be put, the download includes a ‘funstuff’ folder with solutions to puzzles such as Sudoku encoded in Cryptol, which then can be solved using the :sat command.

 

Banner


Pigments - Beyond RGB
30/07/2017

You probably know that you can represent any color with three numbers corresponding to Red, Green and Blue intensities, but this might not be the best way to do the job. What about pigments?



Andrew Ng on Advances In Deep Learning
11/08/2017

A new specialization starting next week on Coursera is special because it comes from Andrew Ng. In Deep Learning, which is intended to allow participants to break into AI, he sets out to explore the c [ ... ]


More News

 

 
 

 

blog comments powered by Disqus

Last Updated ( Tuesday, 06 May 2014 )
 
 

   
Banner
RSS feed of news items only
I Programmer News
Copyright © 2017 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.