Cockatrice/cockatrice/src/interface/widgets
Lukas Brübach 709233d977
[Security] Add challenge-response auth with scrypt verifiers and stop storing plaintext passwords
Challenge-response authentication: the client derives a scrypt verifier
(RFC 7914, EVP_PBE_scrypt, N=32768, r=8, p=1) and authenticates with
HMAC-SHA256(key, nonce), so neither the password nor its hash is
transmitted. The stored format becomes
"$scrypt$<n>$<r>$<p>$<salt>$<verifier>" and Response_PasswordSalt
now carries the cost parameters. Strict servers only accept scrypt
verifiers; legacy accounts are migrated after a successful login.

Fix #344 for challenge-response servers: a saved profile stores the
derived verifier under the password key instead of the plaintext password.
The connect dialog loads it without revealing it, autoconnect passes it
through, the change-password dialog no longer prefills the old password
field with it, and the client only persists the verifier when
"Save password" is checked.

Took 3 minutes

Took 1 minute

Took 10 seconds

Took 7 minutes
2026-09-06 16:16:22 +02:00
..
cards [Client] Show custom zones in the card display widgets (#7206) 2026-09-05 22:00:21 +02:00
deck_analytics [CI] Remove Qt5 (#7071) 2026-08-08 22:04:50 +02:00
deck_editor [Client] Expose custom zone management in the deck editor (#7205) 2026-09-05 22:00:21 +02:00
dialogs [Security] Add challenge-response auth with scrypt verifiers and stop storing plaintext passwords 2026-09-06 16:16:22 +02:00
general [HomeTab] Introduce button color source setting (#7181) 2026-08-25 19:27:07 +02:00
menus [Settings] Shuffle some settings around (#7084) 2026-08-08 22:27:41 +02:00
onboarding [App] Add onboarding wizard (#7064) 2026-08-24 23:05:58 +02:00
playmat [Client] Replace playmat crop spinboxes with a direct manipulation preview (#7161) 2026-08-24 18:22:48 +02:00
printing_selector [VDS] Drive folder and preview widgets from the model (#7106) 2026-08-25 19:23:16 +02:00
quick_settings [CI] Remove Qt5 (#7071) 2026-08-08 22:04:50 +02:00
replay [Replay] Implement option to skip empty sections (#7069) 2026-08-08 23:12:10 -07:00
server [Security] Add challenge-response auth with scrypt verifiers and stop storing plaintext passwords 2026-09-06 16:16:22 +02:00
settings_page [SettingsPage] Refactor: Clean up order of variables (#7184) 2026-08-30 14:43:23 -07:00
tabs [Client] Expose custom zone management in the deck editor (#7205) 2026-09-05 22:00:21 +02:00
utility [VDS] Cache mana symbol renders and skip redundant resizes (#7167) 2026-08-24 19:26:41 +02:00
visual_database_display [Client] Expose custom zone management in the deck editor (#7205) 2026-09-05 22:00:21 +02:00
visual_deck_editor [DeckEditor] Reuse the inherited CardDatabaseModel in the visual editor (#7112) 2026-08-14 07:11:26 +02:00
visual_deck_storage [VDS] Fix search filter not being applied on refresh (#7229) 2026-08-31 10:28:50 +02:00