Skip to content

narmi/pkce-challenge

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pkce-challenge

Generate or verify a Proof Key for Code Exchange (PKCE) challenge pair.

Read more about PKCE.

Installation

npm install pkce-challenge

Usage

Default length for the verifier is 43

import pkceChallenge from 'pkce-challenge'
// or require with commonjs
const pkceChallenge = require("pkce-challenge").default;

pkceChallenge();

gives something like:

{
    code_verifier: 'u1ta-MQ0e7TcpHjgz33M2DcBnOQu~aMGxuiZt0QMD1C',
    code_challenge: 'CUZX5qE8Wvye6kS_SasIsa8MMxacJftmWdsIA_iKp3I'
}

Specify a verifier length

const challenge = pkceChallenge(128);

challenge.code_verifier.length === 128; // true

Challenge verification

import { verifyChallenge } from "pkce-challenge";

verifyChallenge(challenge.code_verifier, challenge.code_challenge) === true; // true

Challenge generation from existing code verifier

import { generateChallenge } from "pkce-challenge";

generateChallenge(challenge.code_verifier) === challenge.code_challenge; // true

About

Generate or verify a Proof Key for Code Exchange (PKCE) challenge pair

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 61.7%
  • JavaScript 38.3%