#verifier #oauth #challenge #verify #random

pkce

Library for generating PKCE code verifiers and challenges

3 unstable releases

0.2.0 Feb 26, 2023
0.1.1 Jan 14, 2021
0.1.0 Jul 13, 2020

#472 in Authentication

Download history 994/week @ 2024-11-15 1155/week @ 2024-11-22 3273/week @ 2024-11-29 2806/week @ 2024-12-06 1400/week @ 2024-12-13 723/week @ 2024-12-20 359/week @ 2024-12-27 1143/week @ 2025-01-03 2219/week @ 2025-01-10 1663/week @ 2025-01-17 3645/week @ 2025-01-24 3030/week @ 2025-01-31 4644/week @ 2025-02-07 2378/week @ 2025-02-14 1732/week @ 2025-02-21 1029/week @ 2025-02-28

10,323 downloads per month
Used in 7 crates

MIT/Apache

5KB

pkce-rs

A very simple library for generating code verifiers and challenges to use for OAuth Proof Key for Code Exchange. It is not rocket science.

extern crate pkce;

fn main() {
    // Generate a random 128-byte code verifier (must be between 43 and 128 bytes)
    let code_verify = pkce::code_verifier(128);
    // Generate an encrypted code challenge accordingly
    let code_challenge = pkce::code_challenge(&code_verify);

    println!("Code challenge generated: {}", code_challenge);
}

Wow, it really is that simple.

Features

In order to support WebAssembly enable feature js.


lib.rs:

This is a minimal library with functions to generate random code verifiers and challenges to be used for OAuth Proof Key for Code Exchange.

extern crate pkce;

fn main() {
    let code_verify = pkce::code_verifier(128);
    let code_challenge = pkce::code_challenge(&code_verify);

    println!("Code challenge generated: {}", code_challenge);
}

Dependencies

~1–1.7MB
~34K SLoC