|
Cryptography and Information Security Group: Cryptographic Protocol Language |
CPL is a simple, near-English language for expressing cryptographic protocols. CPL lowers the barrier between abstract mathematical descriptions and working code. Potential uses include protocol design, code prototyping and functioning as a teaching aid. An accompanying compiler translates protocols expressed as CPL "code" into working Java clients. CPL is also packaged with a tool for converting protocol descriptions into LaTeX diagrams.
Development of CPL has been conducted as part of ongoing research with the Cryptography and Information Security Group of MIT's Lab for Computer Science. Professors Martin Rinard and Ron Rivest have led the project. Current project members include Ioannis Tsoukalidis and Steve Weis. Past work was conducted by Ovidiu Gheorghioiu.
Documentation:Pre-draft versions of a CPL Quick Reference and a CPL Language Specification are available as PostScript files. An online version of the CPL Quick Reference is also available. Please note that these documents are incomplete works in progress and should be considered early pre-drafts.
Example CPL Code:CPL is currently available in a CVS repository to CIS group members. For all others, CPL is available as a periodic backup tarfile. To checkout the cpl CVS module, execute the following command:
cvs -d theory.lcs.mit.edu:/toc/b/cis/code/.cvsroot checkout cpl