Rename default compressor, encryptor
This commit is contained in:
parent
a2376184dc
commit
e351fdfc43
3 changed files with 18 additions and 16 deletions
|
|
@ -4,8 +4,8 @@
|
|||
{:author "Peter Taoussanis"}
|
||||
(:require [taoensso.nippy
|
||||
(utils :as utils)
|
||||
(compression :as compression)
|
||||
(encryption :as encryption)])
|
||||
(compression :as compression :refer (snappy-compressor))
|
||||
(encryption :as encryption :refer (aes128-encryptor))])
|
||||
(:import [java.io DataInputStream DataOutputStream ByteArrayOutputStream
|
||||
ByteArrayInputStream]
|
||||
[clojure.lang Keyword BigInt Ratio PersistentQueue PersistentTreeMap
|
||||
|
|
@ -167,8 +167,9 @@
|
|||
true to produce bytes readble by Nippy < 2.x."
|
||||
^bytes [x & [{:keys [print-dup? password compressor encryptor legacy-mode]
|
||||
:or {print-dup? true
|
||||
compressor compression/default-snappy-compressor
|
||||
encryptor encryption/default-aes128-encryptor}}]]
|
||||
compressor snappy-compressor
|
||||
encryptor aes128-encryptor}}]]
|
||||
|
||||
(let [ba (ByteArrayOutputStream.)
|
||||
stream (DataOutputStream. ba)]
|
||||
(binding [*print-dup* print-dup?] (freeze-to-stream x stream))
|
||||
|
|
@ -277,8 +278,8 @@
|
|||
[^bytes ba & [{:keys [read-eval? password compressor encryptor legacy-mode
|
||||
strict?]
|
||||
:or {legacy-mode :auto
|
||||
compressor compression/default-snappy-compressor
|
||||
encryptor encryption/default-aes128-encryptor}}]]
|
||||
compressor snappy-compressor
|
||||
encryptor aes128-encryptor}}]]
|
||||
|
||||
(let [try-thaw-data
|
||||
(fn [data-ba {decompress? :compressed? decrypt? :encrypted?
|
||||
|
|
@ -398,7 +399,8 @@
|
|||
:or {print-dup? true
|
||||
compress? true}}]
|
||||
(freeze x {:print-dup? print-dup?
|
||||
:compressor (when compress? compression/default-snappy-compressor)
|
||||
:compressor (when compress? snappy-compressor)
|
||||
:encryptor nil
|
||||
:password password
|
||||
:legacy-mode true}))
|
||||
|
||||
|
|
@ -406,6 +408,7 @@
|
|||
[ba & {:keys [read-eval? compressed? password]
|
||||
:or {compressed? true}}]
|
||||
(thaw ba {:read-eval? read-eval?
|
||||
:compressor (when compressed? compression/default-snappy-compressor)
|
||||
:compressor (when compressed? snappy-compressor)
|
||||
:encryptor nil
|
||||
:password password
|
||||
:legacy-mode true}))
|
||||
|
|
|
|||
|
|
@ -11,11 +11,10 @@
|
|||
|
||||
;;;; Default implementations
|
||||
|
||||
(deftype DefaultSnappyCompressor []
|
||||
(deftype SnappyCompressor []
|
||||
ICompressor
|
||||
(compress [_ ba] (org.iq80.snappy.Snappy/compress ba))
|
||||
(decompress [_ ba] (org.iq80.snappy.Snappy/uncompress ba 0 (alength ^bytes ba))))
|
||||
|
||||
(def default-snappy-compressor
|
||||
"Default org.iq80.snappy.Snappy compressor."
|
||||
(DefaultSnappyCompressor.))
|
||||
(def snappy-compressor "Default org.iq80.snappy.Snappy compressor."
|
||||
(SnappyCompressor.))
|
||||
|
|
@ -64,7 +64,7 @@
|
|||
|
||||
(comment (destructure-typed-pwd [:salted "foo"]))
|
||||
|
||||
(defrecord DefaultAES128Encryptor [key-cache]
|
||||
(defrecord AES128Encryptor [key-cache]
|
||||
IEncryptor
|
||||
(encrypt [this typed-pwd data-ba]
|
||||
(let [[type pwd] (destructure-typed-pwd typed-pwd)
|
||||
|
|
@ -93,7 +93,7 @@
|
|||
^javax.crypto.spec.SecretKeySpec key iv)
|
||||
(.doFinal aes128-cipher data-ba))))
|
||||
|
||||
(def default-aes128-encryptor
|
||||
(def aes128-encryptor
|
||||
"Alpha - subject to change.
|
||||
Default 128bit AES encryptor with multi-round SHA-512 keygen.
|
||||
|
||||
|
|
@ -129,12 +129,12 @@
|
|||
|
||||
Faster than `aes128-salted`, and harder to attack any particular key - but
|
||||
increased danger if a key is somehow compromised."
|
||||
(DefaultAES128Encryptor. (atom {})))
|
||||
(AES128Encryptor. (atom {})))
|
||||
|
||||
;;;; Default implementation
|
||||
|
||||
(comment
|
||||
(def dae default-aes128-encryptor)
|
||||
(def dae aes128-encryptor)
|
||||
(def secret-ba (.getBytes "Secret message" "UTF-8"))
|
||||
(encrypt dae "p" secret-ba) ; Malformed
|
||||
(time (encrypt dae [:salted "p"] secret-ba))
|
||||
|
|
|
|||
Loading…
Reference in a new issue