(import ../hashids :as h) (defn string-shuffle [alph salt] (apply string/from-bytes (h/consistent-shuffle (string/bytes alph) (string/bytes salt)))) (def salt "this is my salt") (assert (= "abc" (string-shuffle "abc" ""))) (assert (= "ba" (string-shuffle "ab" salt))) (assert (= "bca" (string-shuffle "abc" salt))) (assert (= "cadb" (string-shuffle "abcd" salt))) (assert (= "f17a8zvCwo0iuqYDXlJ4RmAS2end5ghTcpjbOWLK9GFyE6xUI3ZBMQtPsNHrkV" (string-shuffle "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890" "salt")))