#oauth #challenge #verifier #verify

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

#605 in Authentication

Download history 2734/week @ 2024-12-08 1427/week @ 2024-12-15 427/week @ 2024-12-22 361/week @ 2024-12-29 1907/week @ 2025-01-05 1588/week @ 2025-01-12 2117/week @ 2025-01-19 3752/week @ 2025-01-26 3848/week @ 2025-02-02 3764/week @ 2025-02-09 2035/week @ 2025-02-16 1617/week @ 2025-02-23 1462/week @ 2025-03-02 1337/week @ 2025-03-09 1080/week @ 2025-03-16 957/week @ 2025-03-23

4,859 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