Name: cpsa Version: 3.6.7 Maintainer: mliskov@mitre.org Cabal-Version: >= 1.10 License: BSD3 License-File: license.txt Synopsis: Symbolic cryptographic protocol analyzer Description: The Cryptographic Protocol Shapes Analyzer (CPSA) attempts to enumerate all essentially different executions possible for a cryptographic protocol. We call them the shapes of the protocol. Many naturally occurring protocols have only finitely many, indeed very few shapes. Authentication and secrecy properties are easy to determine from them, as are attacks and anomalies, and an auxiliary tool reads off strongest authentication and secrecy goals from the shapes. . For each input problem, the CPSA program is given some initial behavior, and it discovers what shapes are compatible with it. Normally, the initial behavior is from the point of view of one participant. The analysis reveals what the other participants must have done, given the participant's view. The search is complete, i.e. we proved every shape can be found in a finite number of steps, relative to a procedural semantics of protocol roles. This version of CPSA has the ability to analyze Diffie-Hellman protocols. . The package contains a set of programs used to perform the analysis and display it in a browser. Program documentation is in the doc directory in the source distribution, and installed in the package's data directory. You can locate the package's data directory by typing "cpsa --help" to a command prompt. New users should start learning to use the tool from the manual, found at "cpsamanual.pdf" in the data directory. Examples referenced in the manual can be found in the data directory as well. It is suggested that users make an examples directory and copy "*.scm *.xhtml" to their local examples directory, both so that they may be modified and for ease of access. . The theory and algorithm used by CPSA was developed with the help of Joshua D. Guttman, John D. Ramsdell, Jon C. Herzog, Shaddin F. Doghmi, F. Javier Thayer, Paul D. Rowe, and Moses D. Liskov. John D. Ramsdell and Moses D. Liskov implemented the algorithm in Haskell. CPSA was designed and implemented at The MITRE Corporation. Category: Cryptography Build-Type: Simple Data-Files: Make.hs cpsa.mk cpsamanual.pdf init/Makefile init/template.lisp examples/IKE_variants.tar.gz examples/IKE_variants_nobase.tar.gz examples/Makefile examples/blanchet.scm examples/blanchet.xhtml examples/bltk_or.scm examples/bltk_or.xhtml examples/bltk_test.scm examples/dh_mim.scm examples/dh_mim.xhtml examples/envelope.scm examples/envelope.xhtml examples/eq_test.scm examples/eq_test.xhtml examples/ffgg.scm examples/ffgg.xhtml examples/fluffy_draft03_fixing_gske.scm examples/fluffy_draft03_gske.scm examples/fluffy_draft03_improving_pske.scm examples/fluffy_draft03_pske.scm examples/fnof_test.scm examples/fnof_test.xhtml examples/fnof_yahalom.scm examples/fnof_yahalom.xhtml examples/goals.scm examples/goals.xhtml examples/iadh_um.scm examples/iadh_um.xhtml examples/kerb.scm examples/kerb.xhtml examples/lt_test.scm examples/lt_test.xhtml examples/neq_test.scm examples/neq_test.xhtml examples/ns.scm examples/ns.xhtml examples/or.scm examples/or.xhtml examples/pkinit.scm examples/pkinit.xhtml examples/plaindh.scm examples/plaindh.xhtml examples/priority_test.scm examples/priority_test.xhtml examples/rules.scm examples/rules.xhtml examples/station.scm examples/station.xhtml examples/subsort_test.scm examples/subsort_test.xhtml examples/woolam.scm examples/woolam.xhtml examples/yahalom.scm examples/yahalom.xhtml Data-Dir: doc Extra-Source-Files: Makefile ChangeLog README.txt NEWS mkghci cpsatst setup.bat src/cpsa.el src/cpsaops.scm src/cpsa.pl src/pp.pl src/sexpr.pl src/ghcmemlimit src/cpsajson.py src/split.py src/ocaml/Makefile src/ocaml/README src/ocaml/cpsa.d.itarget src/ocaml/cpsa.itarget src/ocaml/cpsa.mllib src/ocaml/cpsa.mltop src/ocaml/cpsa.odocl src/ocaml/expand.ml src/ocaml/main.ml src/ocaml/main.mli src/ocaml/pp.ml src/ocaml/token.ml src/ocaml/token.mli src/ocaml/scanner.mll src/ocaml/sexpr.ml src/ocaml/sexpr.mli src/ocaml/sexpr_type.ml tst/checktst tst/updatetst tst/graphtst tst/Makefile tst/Make.hs tst/README tst/axiom2.scm tst/axiom2.tst tst/blanchet.scm tst/blanchet.tst tst/bltk_example.lisp tst/bltk_example.tst tst/bltk_test.scm tst/bltk_test.tst tst/dh-ca.scm tst/dh-ca.tst tst/dh_mim2.scm tst/dh_mim2.tst tst/dh_mim.scm tst/dh_mim.tst tst/dhnsl_basic.scm tst/dhnsl_basic.tst tst/dhnsl.lisp tst/dhnsl.tst tst/dhnsl_use.scm tst/dhnsl_use.tst tst/dh_sig.scm tst/dh_sig.tst tst/dh_test.scm tst/dh_test.tst tst/enrich.scm tst/enrich.tst tst/envelope.scm tst/envelope.tst tst/ffgg.scm tst/ffgg.tst tst/fnof_or.scm tst/fnof_or.tst tst/fnof_test.scm tst/fnof_test.tst tst/fnof_woolam.scm tst/fnof_woolam.tst tst/fnof_yahalom.scm tst/fnof_yahalom.tst tst/goals.scm tst/goals.tst tst/iadh_um.scm tst/iadh_um.tst tst/injection.scm tst/injection.tst tst/kerberos++.scm tst/kerberos++.tst tst/lt_test.scm tst/lt_test.tst tst/neq_test.scm tst/neq_test.tst tst/ns.scm tst/ns.tst tst/or.scm tst/or.tst tst/owang.scm tst/owang.tst tst/owat.scm tst/owat.tst tst/pkinit.scm tst/pkinit.tst tst/plaindh.scm tst/plaindh.tst tst/priority_test.scm tst/priority_test.tst tst/staticdh.scm tst/staticdh.tst tst/station2.scm tst/station2.tst tst/subsort_test.scm tst/subsort_test.tst tst/test_small.scm tst/test_small.tst tst/unilateral.scm tst/unilateral.tst tst/uniq-gen-test.scm tst/uniq-gen-test.tst tst/wang.tst tst/woolam.scm tst/woolam.tst tst/wrap_decrypt.lsp tst/wrap_decrypt.tst tst/yahalom.scm tst/yahalom.tst tst/aik.scm tst/aik.tst tst/reflect.scm tst/reflect.tst tst/station.scm tst/station.tst tst/kerb.scm tst/kerb.tst tst/attest.scm tst/attest.tst tst/comp_test.scm tst/comp_test.tst tst/fluffy_draft03_gske.scm tst/fluffy_draft03_gske.tst tst/ordered.scm tst/ordered.tst tst/prottrans.scm tst/prottrans.tst tst/role_uniq.scm tst/role_uniq.tst tst/rule-order.scm tst/rule-order.tst tst/trust-anchor.scm tst/trust-anchor.tst tst/blanchet_doorsep.prot tst/blanchet_doorsep.tst Source-Repository head Type: git Location: git://github.com/mitre/cpsa.git Executable cpsa Main-Is: CPSA/Lib/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 4 && < 5, containers, parallel GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports -threaded -rtsopts Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Lib.AlgebraLibrary CPSA.Lib.State CPSA.Lib.Protocol CPSA.Lib.Strand CPSA.Lib.Characteristic CPSA.Lib.Loader CPSA.Lib.Displayer CPSA.Lib.Cohort CPSA.Lib.Expand CPSA.Lib.Reduction CPSA.Basic.Algebra CPSA.DiffieHellman.Algebra CPSA.Lib.Declaration Executable cpsagraph Main-Is: CPSA/Graph/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 4 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Notation CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Graph.XMLOutput CPSA.Graph.Config CPSA.Graph.SVG CPSA.Graph.Loader CPSA.Graph.Preskeleton CPSA.Graph.Layout CPSA.Graph.Tree CPSA.Graph.CompactView CPSA.Graph.ExpandedView CPSA.Graph.LaTeXView CPSA.Basic.Algebra Executable cpsashapes Main-Is: CPSA/Shapes/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 4 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Shapes.Shapes CPSA.Basic.Algebra Executable cpsaannotations Main-Is: CPSA/Annotations/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 4 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Annotations.Formulas CPSA.Annotations.Annotations CPSA.Basic.Algebra CPSA.DiffieHellman.Algebra Executable cpsadiff Main-Is: CPSA/Diff/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 3 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Basic.Algebra Executable cpsasas Main-Is: CPSA/SAS/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 4 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.SAS.SAS CPSA.Basic.Algebra CPSA.DiffieHellman.Algebra Executable cpsaprot Main-Is: CPSA/Prot/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 3 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Basic.Algebra CPSA.Lib.Expand Executable cpsapp Main-Is: CPSA/Pretty/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 3 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Basic.Algebra Executable cpsajson Main-Is: CPSA/JSON/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 3 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Basic.Algebra Executable cpsadebase Main-Is: CPSA/Debase/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 3 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Basic.Algebra Executable cpsamatch Main-Is: CPSA/Match/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 4 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Match.Match CPSA.Basic.Algebra CPSA.DiffieHellman.Algebra Executable cpsainit Main-Is: CPSA/Init/Main.hs Default-Language: Haskell2010 Build-Depends: base, directory GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa Executable cpsagoalsat Main-Is: CPSA/GoalSat/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 3 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.Utilities CPSA.Lib.Pretty CPSA.Lib.SExpr CPSA.Lib.Printer CPSA.Lib.Entry CPSA.Lib.Algebra CPSA.Basic.Algebra Executable cpsa2latex Main-Is: CPSA/Latex/Main.hs Default-Language: Haskell2010 Build-Depends: base >= 3 && < 5, containers GHC-Options: -Wall -fno-warn-name-shadowing -fwarn-unused-imports Hs-Source-Dirs: src Other-Modules: Paths_cpsa CPSA.Lib.SExpr CPSA.Lib.Expand CPSA.Lib.Entry CPSA.Basic.Algebra CPSA.Lib.Algebra CPSA.Lib.Pretty CPSA.Lib.Printer CPSA.Lib.Utilities