{"categories":[{"label":"Cryptography","url":"https://skillfed.io/packages/category/security-cryptography/2"}],"enrichment":{"capability":"A pure-Python implementation of the scrypt password-based key derivation function that hashes passwords and encrypts/decrypts files using the scrypt algorithm.","skillfed_tags":["reference-implementation","abandoned","pure-python"],"use_cases":["Hashing user passwords for authentication systems where you need a slow, memory-hard key derivation function.","Encrypting sensitive files using the scrypt file format for compatibility with the command-line scrypt utility.","Educational or reference purposes to understand how scrypt works without external C dependencies.","Legacy system maintenance where existing code depends on pyscrypt's pure-Python implementation.","Scenarios where you cannot use compiled C extensions and need scrypt functionality despite performance trade-offs."],"what_it_does":"pyscrypt is a pure-Python reference implementation of the scrypt password-based key derivation function (PBKDF). It provides two main capabilities: hashing passwords with configurable work factors (N, r, p parameters) to produce cryptographic keys, and reading/writing files encrypted with the scrypt file format. The package has no external dependencies and supports both Python 2 and 3, though it is intentionally slow\u2014the documentation explicitly states it is 'not meant to be fast, more of a reference solution.' The scrypt algorithm itself is CPU and memory intensive by design, making brute-force password attacks computationally expensive.\n\nThe package includes a ScryptFile class for transparent file encryption/decryption and a hash function for key derivation. It comes with test cases that can be validated against the command-line scrypt utility. However, the project has been abandoned since 2015, with the maintainer noting that faster C-wrapper implementations exist for production use. For most real-world applications requiring scrypt, a maintained C-based library would be preferable.","worth_installing":"No, unless you have a specific legacy dependency or educational need. The package is abandoned (last release 2015), explicitly slow by design, and the maintainer recommends C-wrappers for production use. For new projects, use a maintained scrypt library or bcrypt/argon2 instead. The lack of maintenance and known performance limitations make it unsuitable for most modern applications."},"id":"pyscrypt","links":{"html":"https://skillfed.io/packages/pyscrypt","md":"https://skillfed.io/packages/pyscrypt.md","pypi":"https://pypi.org/project/pyscrypt/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2015-02-03","license_spdx":null,"license_treatment":"permissive","name":"pyscrypt","python_support":"unspecified","summary":"Pure-Python Implementation of the scrypt password-based key derivation function and scrypt file format library"},"popularity":{"monthly_downloads":246727,"position":8705,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.6.2"}
