cryptol: Cryptol: The Language of Cryptography

[ bsd3, language, library, program ] [ Propose Tags ]

Cryptol is a domain-specific language for specifying cryptographic algorithms. A Cryptol implementation of an algorithm resembles its mathematical specification more closely than an implementation in a general purpose language. For more, see

Versions [faq] 2.2.0, 2.2.1, 2.2.2, 2.2.3, 2.2.4, 2.2.5, 2.2.6, 2.3.0, 2.4.0, 2.5.0, 2.6.0, 2.7.0, 2.8.0
Dependencies ansi-terminal, array (>=0.4), async (>=2.0), base (>=4.7 && <5), base-compat (>=0.6), containers (>=0.5), cryptol, deepseq (>=1.3), directory (>=1.2), filepath (>=1.3), gitrev (>=1.0), GraphSCC (>=1.0.4), haskeline, heredoc (>=0.2), monadLib (>=3.7.2), old-time (>=1.1), presburger (>=1.3), pretty (>=1.1), process (>=1.2), QuickCheck (>=2.7), random (>=1.0.1), sbv (>=5.7 && <5.15), smtLib (>=1.0.7), syb (>=0.4), template-haskell, text (>=1.1), tf-random (>=0.5), transformers (>=0.3), utf8-string (>=0.3) [details]
License BSD-3-Clause[multiple license files]
Copyright 2013-2015 Galois Inc.
Author Galois, Inc.
Revised Revision 1 made by phadej at Tue Jan 31 17:02:23 UTC 2017
Category Language
Home page
Bug tracker
Source repo head: git clone
this: git clone v2.2.6)
Uploaded by AdamFoltzer at Fri Dec 25 00:02:09 UTC 2015
Distributions Arch:2.7.0, Debian:2.6.0, NixOS:2.8.0
Executables cryptol
Downloads 6033 total (248 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2015-12-25 [all 1 reports]





Create a statically-linked binary


Don't use the Cabal-provided data directory for looking up Cryptol libraries. This is useful when the data directory can't be known ahead of time, like for a relocatable distribution.


Compile the text of the Cryptol Prelude into the library


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees