RustCrypto / RustCrypto/password-hashes

Update scrypt fuzz target for current API

Open Beginner friendly
#926 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
909
Forks
115
Avg merge
1d 6h
Merged PRs (30d)
4

Description

Problem

The scrypt fuzz target no longer builds against the current scrypt API.
The target uses outdated password‑hash types and constructors, including SaltString, Ident, and the previous Params::new interface. It also enables the obsolete simple feature.

As a result, the fuzz target cannot be built with the current dependency implementation.

Reproduction steps

  1. Check out the affected password‑hashes revision.
  2. Enter the fuzz directory.
  3. Run:
cargo fuzz build
  1. Observe compilation errors related to the removed or changed scrypt API.

Expected behavior

The scrypt fuzz target should compile successfully against the current scrypt implementation and continue testing both direct scrypt derivation and PHC password hashing and verification.

Proposed solution

Update the fuzz target to use the current Params, Scrypt::new_with_params, and PHC APIs. Replace the obsolete simple feature with the required phc and alloc features.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in the fuzz directory by locating the scrypt fuzz target and run cargo fuzz build to reproduce the API errors. Update it against the current Params, Scrypt::new_with_params, and PHC APIs, then confirm the target builds and still covers direct derivation plus PHC hashing and verification.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cryptography, security
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.