Password Class Reference

#include <pass.h>

Inheritance diagram for Password:

Inheritance graph
Collaboration diagram for Password:

Collaboration graph

Detailed Description

Implementation of the NIST FIPS 181 Automated Password Generator.

Usage flow:
  Password()          // instantiate a Password object
  init()              // seed its internal pseudorandom number generator
  SuggestPassword()   // call as often as desired to obtain pronouceable passwords

Recommendations for strict FIPS 140-1 compliance:
  This class produces pronouncable passwords according to FIPS 181. It provides
  and uses only FIPS approved functions.

References

The NIST Automated Password Generator is specified in FIPS 181.


Public Member Functions

_cdkpub int init (const char *r24, const char *oldpass, int test1=0)
 Initialize this Password object.
_cdkpub int SuggestPassword (int min, int max, char *without, char *with)
 Get a pronounceable password in the specified length range.


Member Function Documentation

_cdkpub int init ( const char *  r24,
const char *  oldpass,
int  test1 = 0 
)

Initialize this Password object.

Parameters:
r24 a pointer to 24 random bytes (possibly generated by PRNG::gens(24))
oldpass a pointer to (no more than 8) random bytes
test1 FIPS 140-1 compliance flag: 0 prevents the internal daytime function from collecting real time information. Used only for test purposes; see cdk::Test_PWD_Generator().
Returns:
0

_cdkpub int SuggestPassword ( int  min,
int  max,
char *  without,
char *  with 
)

Get a pronounceable password in the specified length range.

Parameters:
min a minimum length for the requested password (must be positive)
max a maximum length for the requested password (must be greater than or equal to min)
without a pointer to an output buffer (of size max+1) for the generated password
with a pointer to an output buffer (of size 2*max) for the password with hyphens inserted (as an aid to pronunciation)
Returns:
0 (success)
1 or CDK_ERROR_STATE (failure)


The documentation for this class was generated from the following file:
ISC Cryptographic Development Kit - User's Guide
ISC website
Questions? E-mail ISC technical support
Copyright© 2002-2006 Information Security Corp. All rights reserved.