From b0c7a0f8c7106b3fd20e62d0a7aa0b59d6eb9555 Mon Sep 17 00:00:00 2001 From: Peter Taoussanis Date: Mon, 8 Oct 2018 20:34:23 +0200 Subject: [PATCH] [Crypto] Rename some arguments for extra clarity --- src/taoensso/nippy/crypto.clj | 36 +++++++++++++++---------------- src/taoensso/nippy/encryption.clj | 8 +++---- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/taoensso/nippy/crypto.clj b/src/taoensso/nippy/crypto.clj index 82b4d8b..6bac81b 100644 --- a/src/taoensso/nippy/crypto.clj +++ b/src/taoensso/nippy/crypto.clj @@ -109,7 +109,7 @@ ;; Output bytes: [ ] ;; Could also do: [ ] (defn encrypt - [{:keys [cipher-kit ?salt-ba key-ba ba rand-bytes-fn] + [{:keys [cipher-kit ?salt-ba key-ba plain-ba rand-bytes-fn] :or {cipher-kit cipher-kit-aes-gcm rand-bytes-fn rand-bytes}}] (let [iv-size (long (get-iv-size cipher-kit)) @@ -120,20 +120,20 @@ cipher (get-cipher cipher-kit)] (.init cipher javax.crypto.Cipher/ENCRYPT_MODE key-spec param-spec) - (enc/ba-concat prefix-ba (.doFinal cipher ba)))) + (enc/ba-concat prefix-ba (.doFinal cipher plain-ba)))) -(comment (encrypt {:?salt-ba nil :key-ba (take-ba 16 (sha512-key-ba nil "pwd")) :ba (utf8->ba "data")})) +(comment (encrypt {:?salt-ba nil :key-ba (take-ba 16 (sha512-key-ba nil "pwd")) :plain-ba (utf8->ba "data")})) (defn decrypt - [{:keys [cipher-kit salt-size salt->key-fn ba] + [{:keys [cipher-kit salt-size salt->key-fn enc-ba] :or {cipher-kit cipher-kit-aes-gcm}}] - (let [salt-size (long salt-size) - iv-size (long (get-iv-size cipher-kit)) - prefix-size (+ iv-size salt-size) - [prefix-ba data-ba] (enc/ba-split ba prefix-size) - [iv-ba salt-ba] (if (pos? salt-size) - (enc/ba-split prefix-ba iv-size) - [prefix-ba nil]) + (let [salt-size (long salt-size) + iv-size (long (get-iv-size cipher-kit)) + prefix-size (+ iv-size salt-size) + [prefix-ba enc-ba] (enc/ba-split enc-ba prefix-size) + [iv-ba salt-ba] (if (pos? salt-size) + (enc/ba-split prefix-ba iv-size) + [prefix-ba nil]) key-ba (salt->key-fn salt-ba) key-spec (get-key-spec cipher-kit key-ba) @@ -141,21 +141,21 @@ cipher (get-cipher cipher-kit)] (.init cipher javax.crypto.Cipher/DECRYPT_MODE key-spec param-spec) - (.doFinal cipher data-ba))) + (.doFinal cipher enc-ba))) (comment (do (defn sha512-k16 [?salt-ba pwd] (take-ba 16 (sha512-key-ba ?salt-ba pwd))) (defn roundtrip [kit ?salt-ba key-ba key-fn] (let [salt-size (count ?salt-ba) - encr (encrypt {:cipher-kit kit :?salt-ba ?salt-ba :key-ba key-ba :ba (utf8->ba "data")}) - decr (decrypt {:cipher-kit kit :salt-size salt-size :salt->key-fn key-fn :ba encr})] + encr (encrypt {:cipher-kit kit :?salt-ba ?salt-ba :key-ba key-ba :plain-ba (utf8->ba "data")}) + decr (decrypt {:cipher-kit kit :salt-size salt-size :salt->key-fn key-fn :enc-ba encr})] (String. ^bytes decr "UTF-8"))) - [(let [s (rand-bytes 16)] (roundtrip cipher-kit-aes-gcm s (sha512-k16 s "pwd") #(sha512-16 % "pwd"))) - (let [s nil] (roundtrip cipher-kit-aes-gcm s (sha512-k16 s "pwd") #(sha512-16 % "pwd"))) - (let [s (rand-bytes 16)] (roundtrip cipher-kit-aes-cbc s (sha512-k16 s "pwd") #(sha512-16 % "pwd"))) - (let [s nil] (roundtrip cipher-kit-aes-cbc s (sha512-k16 s "pwd") #(sha512-16 % "pwd")))]) + [(let [s (rand-bytes 16)] (roundtrip cipher-kit-aes-gcm s (sha512-k16 s "pwd") #(sha512-k16 % "pwd"))) + (let [s nil] (roundtrip cipher-kit-aes-gcm s (sha512-k16 s "pwd") #(sha512-k16 % "pwd"))) + (let [s (rand-bytes 16)] (roundtrip cipher-kit-aes-cbc s (sha512-k16 s "pwd") #(sha512-k16 % "pwd"))) + (let [s nil] (roundtrip cipher-kit-aes-cbc s (sha512-k16 s "pwd") #(sha512-k16 % "pwd")))]) (enc/qb 10 (let [s (rand-bytes 16)] diff --git a/src/taoensso/nippy/encryption.clj b/src/taoensso/nippy/encryption.clj index b714150..2cb9c4a 100644 --- a/src/taoensso/nippy/encryption.clj +++ b/src/taoensso/nippy/encryption.clj @@ -31,7 +31,7 @@ (deftype AES128Encryptor [header-id salted-key-fn cached-key-fn] IEncryptor (header-id [_] header-id) - (encrypt [_ typed-pwd ba] + (encrypt [_ typed-pwd plain-ba] (let [[type pwd] (destructure-typed-pwd typed-pwd) salt? (identical? type :salted) ?salt-ba (when salt? (crypto/rand-bytes 16)) @@ -45,9 +45,9 @@ {:cipher-kit crypto/cipher-kit-aes-cbc :?salt-ba ?salt-ba :key-ba key-ba - :ba ba}))) + :plain-ba plain-ba}))) - (decrypt [_ typed-pwd ba] + (decrypt [_ typed-pwd enc-ba] (let [[type pwd] (destructure-typed-pwd typed-pwd) salt? (identical? type :salted) salt->key-fn @@ -59,7 +59,7 @@ {:cipher-kit crypto/cipher-kit-aes-cbc :salt-size (if salt? 16 0) :salt->key-fn salt->key-fn - :ba ba})))) + :enc-ba enc-ba})))) (def aes128-encryptor "Default 128bit AES encryptor with many-round SHA-512 key-gen.