diff --git a/src/main/frontend/common/crypt.cljs b/src/main/frontend/common/crypt.cljs index eb4c9a1f36..68db796360 100644 --- a/src/main/frontend/common/crypt.cljs +++ b/src/main/frontend/common/crypt.cljs @@ -86,7 +86,8 @@ #js ["encrypt" "decrypt"])) (defn - (p/let [[salt-data iv-data encrypted-private-key-data] encrypted-key-data + (p/let [len (count encrypted-key-data) + [salt-data iv-data encrypted-private-key-data] (if (= len 3) + encrypted-key-data + (drop 1 encrypted-key-data)) + version (when (= len 4) (first encrypted-key-data)) + version>=20251210 (>= (compare version "20251210") 0) salt (js/Uint8Array. salt-data) iv (js/Uint8Array. iv-data) encrypted-private-key (js/Uint8Array. encrypted-private-key-data) @@ -129,7 +139,7 @@ derived-key (.deriveKey subtle #js {:name "PBKDF2" :salt salt - :iterations 100000 + :iterations (if version>=20251210 600000 100000) :hash "SHA-256"} password-key #js {:name "AES-GCM" :length 256}