passwords-sqnfa-web
Version:
This library implements the recommendations that apply to client-side password handling from NIST and OWASP. The purpose of this library is to provide an easy pluggable client-side password preprocessor.
35 lines (34 loc) • 1.32 kB
TypeScript
import { Result } from '../result';
import { HandlerSync } from '../types/sqnfa';
export declare class RegexConfiguration {
/**
* A list of black listed regular expressions. Each expression is compared with the original password.
*/
readonly regExps: RegExp[];
/**
*
*/
constructor(
/**
* A list of black listed regular expressions. Each expression is compared with the original password.
*/
regExps: RegExp[]);
}
export declare class RegexHandler implements HandlerSync {
private readonly config;
readonly name: string;
/**
* NIST 800-63B:
* Password complexity: Users’ password choices are very predictable,
* so attackers are likely to guess passwords that have been successful
* in the past. For this reason, it is recommended that passwords chosen
* by users be compared against a “black list” of unacceptable passwords.
* This list should include dictionary words, and specific words (such as
* the name of the service itself) that users are likely to choose.
*
* This handler black lists passwords that matches defined regular
* expressions, such as specific words related to the service itself.
*/
constructor(config: RegexConfiguration);
handleSync(password: string): Result;
}