Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (defn enc [inputtext keytext]
- (loop [cryptoblock {}
- inputblock (.getBytes inputtext)
- keyval (reverse (.getBytes keytext))]
- (if (and inputblock)
- (recur (cons (bit-xor (first inputblock) (first keyval)) cryptoblock)
- (next inputblock)
- (if (and (next keyval))
- (next keyval)
- (reverse (.getBytes keytext))))
- cryptoblock)))
- (defn denc [cryptseq keytext]
- (loop [decrypt ""
- cryptseq (reverse cryptseq)
- keyval (reverse (.getBytes keytext))]
- (if (and cryptseq)
- (recur (format "%s%s" decrypt (char (bit-xor (first cryptseq) (first keyval))))
- (next cryptseq)
- (if (and (next keyval))
- (next keyval)
- (reverse (.getBytes keytext))))
- decrypt)))
- (def abcd (enc "test" "abcd"))
- (denc abcd "abcd")
Add Comment
Please, Sign In to add comment