# Cryptol

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Cryptol
> Markdown URL: https://mediated.wiki/source/Cryptol.md
> Source: https://en.wikipedia.org/wiki/Cryptol
> Source revision: 1247144025
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

Programming language for cryptography

Cryptol Developer Galois, Inc. First appeared 1980; 46 years ago (1980) Stable release 3.2.0 / August 20, 2024; 22 months ago (2024-08-20) Implementation language Haskell, Python Platform AArch64, x86-64 OS Linux, macOS, Windows License BSD 3-clause Website www.cryptol.net

**Cryptol** is a [domain-specific](/source/Domain-specific_language) [programming language](/source/Programming_language) for [cryptography](/source/Cryptography) developed by the [Portland, Oregon](/source/Portland%2C_Oregon) based [software development](/source/Software_development) firm, Galois, Inc.[1][2] It is [free and open-source software](/source/Free_and_open-source_software) released under a [BSD 3-clause](/source/BSD_licenses) [software license](/source/Software_license).

The language was originally developed for use by the [United States](/source/United_States) [National Security Agency](/source/National_Security_Agency).[1][3] The language is also used by private firms that provide [information technology](/source/Information_technology) systems, such as the American company [Rockwell Collins](/source/Rockwell_Collins) provides to [aerospace](/source/Aerospace_manufacturer) and [defense contractors](/source/Defense_contractor) in the United States.[1]

The programming language is used for all aspects of developing and using cryptography, such as the design and implementation of new [ciphers](/source/Cipher) and the verification of existing cryptographic [algorithms](/source/Algorithm).[1][2][4] Cryptol is designed to allow a cryptographer to watch how [stream processing](/source/Stream_processing) functions in the program manipulate ciphers or [encryption](/source/Encryption) algorithms.[2]

## References

1. ^ [***a***](#cite_ref-Galois_1-0) [***b***](#cite_ref-Galois_1-1) [***c***](#cite_ref-Galois_1-2) [***d***](#cite_ref-Galois_1-3) ["Cryptol-the-language-of-cryptology-now-available"](http://galois.com/blog/2008/12/cryptol-the-language-of-cryptography-now-available/). December 2008. Retrieved 2015-05-05.

1. ^ [***a***](#cite_ref-Sutcliffe_2-0) [***b***](#cite_ref-Sutcliffe_2-1) [***c***](#cite_ref-Sutcliffe_2-2) [GoogleBook link](https://books.google.com/books?id=KtEpJSzyXSsC&dq=Cryptol+Logic+for+Programming,+Artificial+Intelligence,+and+Reasoning&pg=PA531)Sutcliffe, Geoff; Voronkov, Andrei, eds. (2006). *Logic for Programming, Artificial Intelligence, and Reasoning: 12th International Conference, LPAR 2005, December 2–6, 2005, Proceedings ... / Lecture Notes in Artificial Intelligence)*. Montego Bay, Jamaica: Springer. p. 744. [ISBN](/source/ISBN_(identifier)) [978-3-540-30553-8](https://en.wikipedia.org/wiki/Special:BookSources/978-3-540-30553-8).

1. **[^](#cite_ref-TheNextWave_3-0)** [*The Next Wave, High Confidence Software and Systems (HCSS)*](https://web.archive.org/web/20140714184700/http://www.nsa.gov/research/tnw/tnw191/articles/pdfs/tnw_19_1_web.pdf) (PDF), vol. 19, 2011, archived from [the original](http://www.nsa.gov/research/tnw/tnw191/articles/pdfs/tnw_19_1_web.pdf) (PDF) on 2014-07-14, retrieved 2014-07-07

1. **[^](#cite_ref-4)** Lewis, J.R.; Martin, B. (October 2003). "Cryptol: high assurance, retargetable crypto development and validation". *Military Communications Conference, 2003. MILCOM 2003. IEEE*. Vol. 2. [Boston, Massachusetts](/source/Boston%2C_Massachusetts): Armed Forces Communications & Electronics Association ([AFCEA](/source/AFCEA)); [IEEE Communications Society](/source/IEEE_Communications_Society). pp. 820–825. [doi](/source/Doi_(identifier)):[10.1109/MILCOM.2003.1290218](https://doi.org/10.1109%2FMILCOM.2003.1290218). [S2CID](/source/S2CID_(identifier)) [8380437](https://api.semanticscholar.org/CorpusID:8380437).

## External links

- [Official website](http://www.cryptol.net)

- [GaloisInc](https://github.com/GaloisInc) on [GitHub](/source/GitHub)

v t e Haskell programming Software Implementations (features) Generic Haskell° Glasgow Haskell Compiler° Template Haskell° Gofer° → Hugs° York Haskell Compiler° (Yhc) Dialects Agda° Cryptol° Curry° Elm° Hume° Idris° Ωmega° Orwell° Pugs° PureScript° TidalCycles° Ur° Electronic design Atom° Bluespec SystemVerilog (BSV) Libraries Concurrent Haskell° Haskell Platform° Parsec° QuickCheck° Package managers Cabal° Stack° Windowing systems Fudgets wxHaskell° xmonad° Web frameworks Servant° Snap° Yesod° Cardano° Darcs° Ganeti° git-annex° Haddock° HaXml° Liquid Haskell° LOLITA Pandoc° Paradox° SQream DB Book Real World Haskell Community Eponym Haskell Curry Arvind Lennart Augustsson Richard Bird Jeremy Gibbons Andrew D. Gordon Paul Hudak John Hughes John Launchbury John MacFarlane Simon Marlow Conor McBride Erik Meijer Simon Peyton Jones David Roundy Joe Stoy Audrey Tang Simon Thompson Philip Wadler Italics = discontinued • ° = Open-source software Book Categories: Family • Software

v t e Programming languages Comparison Timeline History Ada ALGOL Simula APL Assembly BASIC Visual Basic classic .NET C C++ C# COBOL Erlang Elixir Forth Fortran Go Haskell Java JavaScript Julia Kotlin Lisp Lua MATLAB ML Caml OCaml Standard ML Pascal Object Pascal Perl Raku PHP Prolog Python R Ruby Rust SAS SQL Scratch Shell Smalltalk Swift more... Lists: Alphabetical Categorical Generational Non-English-based Category

---
Adapted from the Wikipedia article [Cryptol](https://en.wikipedia.org/wiki/Cryptol) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Cryptol?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
