Migrate user password hashing algorithm #397

Closed
opened 2024-05-05 20:19:28 +02:00 by blacklight · 0 comments
Owner

bcrypt requires a Rust compiler when Platypush is installed via pip.

On earlier RaspberryPis, or other devices with limited resources, this means very long built times.

Since bcrypt is only used to encrypt the user password on the application db, we can easily replace it a hashlib algorithm (such as pbkd2_hmac) that is already available in the Python standard library.

bcrypt will still be used as a fallback if the user record has no stored password salt/hash iterations, so the migration should be seamless.

bcrypt requires a Rust compiler when Platypush is installed via pip. On earlier RaspberryPis, or other devices with limited resources, this means very long built times. Since bcrypt is only used to encrypt the user password on the application db, we can easily replace it a `hashlib` algorithm (such as `pbkd2_hmac`) that is already available in the Python standard library. bcrypt will still be used as a fallback if the user record has no stored password salt/hash iterations, so the migration should be seamless.
blacklight added the
enhancement
label 2024-05-05 20:19:28 +02:00
blacklight self-assigned this 2024-05-05 20:19:28 +02:00
blacklight added this to the core project 2024-05-05 20:19:28 +02:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: platypush/platypush#397
No description provided.