Commit Graph
33 Commits
Author SHA1 Message Date
nvrl 325c326c49 feat(account): hold key passphrases as wiped secrets and report a locked account as KeysLocked
A wrong mailbox password surfaced as InvalidOperation("no active user key could
be unlocked"), which a caller could only recognise by its text. It is now
ProtonError::KeysLocked, and AccountClient::unlock() checks a secret with a
single core/v4/users request instead of loading every address.

Derived passphrases, the mailbox password and the cache encryption key were
plain Vec<u8>s, cloned freely and never wiped. They are Zeroizing now, and the
passphrase map is KeyPassphrases: wiped on drop, redacted in Debug, with
derive_secret() for a client that wants a key only an unlocked account can
reproduce. with_key_passphrases takes it.

Breaking: ProtonError gains a variant, key_passphrases() and
with_key_passphrases() change type, and derive_key_passphrase returns
Zeroizing<Vec<u8>>.
2026-10-07 02:24:51 +02:00
nvrl 32014b1f07 feat(drive,photos): report recently accessed nodes
Port upstream 0aabea59: report_recently_accessed on ProtonDriveClient and
ProtonPhotosClient, batches of 50. Also read the ThirdParty/Sdk flags from
f257c20e on link and revision DTOs. Pin bumped to df3a717b.
2026-10-06 23:49:58 +02:00
nvrl 771bc443fa chore(VER) bumped to 0.7.3 2026-10-06 13:59:12 +02:00
nvrl 1bd5fe8a07 chore(VER) bumped to 0.7.2 2026-10-01 18:07:46 +02:00
nvrl 4a0453c66f chore(VER) bumped to 0.7.1 2026-09-29 21:14:35 +02:00
nvrl 9036c35697 chore(VER) bumped to 0.7.0 2026-09-28 01:07:12 +02:00
nvrl f7054c3c3b chore(VER) bumped to 0.6.6 2026-09-23 03:15:25 +02:00
nvrl 1f76f33d49 chore(VER) bumped to 0.6.5 2026-09-19 14:05:22 +02:00
nvrl 4f129b778a chore(VER) bumped to 0.6.4 2026-09-15 15:07:21 +02:00
nvrl 6f052e1912 chore(VER) bumped to 0.6.3 2026-09-15 13:54:33 +02:00
nvrl 81844cb9da chore(VER) bumped to 0.6.2 2026-08-28 12:00:05 +02:00
nvrl 61117fd7dc feature(photos) implemented dups, import from takeout 2026-08-18 01:30:45 +02:00
nvrl 0cf760362a fix(sdk) token mutex no longer spans the refresh 2026-08-16 18:53:29 +02:00
nvrl 9ec0582efe added chain with salts 2026-08-10 15:19:18 +02:00
nvrl 12bcf61424 version bump to 0.5.0 2026-08-10 14:11:38 +02:00
nvrl 4fe7f02ebb version 0.4.0 2026-08-03 00:18:39 +02:00
nvrl 5e1f7b56e0 version bump to 0.3.2 2026-07-31 19:34:01 +02:00
nvrl db66211a4d version bump 0.3.1 2026-07-28 20:11:54 +02:00
nvrl e0cbc15d21 version bump to 0.3.0 2026-07-28 18:36:23 +02:00
nvrl ea59994250 implemented revisions 2026-07-25 12:48:41 +02:00
nvrl 9dd535b374 improved performance, concurrent upload, version 0.2.0 2026-07-24 20:29:15 +02:00
nvrl fcf4fc9fb0 version adjusted for drive 2026-07-22 03:05:49 +02:00
nvrl 75a615dd28 added re captcha flow 2026-07-19 23:14:25 +02:00
nvrl 8c44768010 version bump 2026-07-19 19:40:27 +02:00
nvrl ac9bfc48b0 fixed orphaned docs 2026-07-19 14:27:34 +02:00
nvrl f75ecb04b6 event manager, concurrency, optimizations 2026-07-17 22:30:32 +02:00
nvrl 64f977edb3 feature (devices+sharing) + upgraded rand and aeds 2026-07-15 19:34:40 +02:00
nvrl 78567bf00e version bump to 0.1.5 2026-07-14 15:04:04 +02:00
nvrl de6b61256e version bump to 0.1.4 2026-07-10 16:00:59 +02:00
nvrl 6291c6f478 Export PhotoUploadMetadata and bump version to 0.1.3 2026-06-30 23:34:04 +02:00
nvrl 0221a654c2 version bump 2026-06-30 03:30:48 +02:00
nvrl 2716be77ef version bump 2026-06-28 17:12:12 +02:00
nvrl 643f5a2c3b renamed for crate 2026-06-28 11:47:54 +02:00