Files
cipher-analytical-machine/src/cipher_analytical_machine/cli/actions/cracking.clj
T

27 lines
803 B
Clojure

(ns cipher-analytical-machine.cli.actions.cracking
(:require
[cipher-analytical-machine.analyzers.caesar :as caesar-analyzers]
[cipher-analytical-machine.symbols.frequencies :as symbol-frequencies])
(:gen-class))
(defn cracking-caesar
[options arguments]
(let [analyzer (:analyzer options)
message (:message options)
symbols (:symbols options)
frequencies symbol-frequencies/english-letter-frequencies]
(cond
(= analyzer "Chi^2")
(caesar-analyzers/get-plaintext message symbols frequencies)
:else
(caesar-analyzers/get-plaintext message symbols frequencies))))
(defn cracking-actions
[options arguments action-type]
(let [cipher (:cipher options)]
(cond
(= cipher "Caesar")
(cracking-caesar options arguments))))