Table of Contents

Class: OTPAuthenticator | Twisted-0.19.0/twisted/python/otp.py
--- | ---
### A One Time Password System Based on RFC 2289, which is based on a the S/KEY Authentication-scheme. It uses the MD5- and SHA-algorithms for hashing The variable OTP is at all times a 64bit string
Methods |
--- | ---
__init__ calculateParity challenge foldDigest foldDigest128 foldDigest160 | generateOTP generateSeed hashUpdate makeReadable parsePhrase
| __init__
    __init__ ( self,  hash=md5 )
Set the hash to either md5 or sha1
| calculateParity
    calculateParity ( self,  otp )
Calculate the parity from a 64bit OTP
| challenge
    challenge (
            self,
            seed,
            sequence,
            )
Return a challenge in the format otp-<hash> <sequence> <seed>
| foldDigest
    foldDigest ( self,  otp )
| foldDigest128
    foldDigest128 ( self,  otp128 )
Fold a 128 bit digest to 64 bit
| foldDigest160
    foldDigest160 ( self,  otp160 )
Fold a 160 bit digest to 64 bit
| generateOTP
    generateOTP (
            self,
            seed,
            passwd,
            sequence,
            )
Return a 64 bit OTP based on inputs Run through makeReadable to get a 6 word pass-phrase
| generateSeed
    generateSeed ( self )
Return a 10 char random seed, with 6 lowercase chars and 4 digits
| hashUpdate
    hashUpdate ( self,  digest )
Run through the hash and fold to 64 bit
| makeReadable
    makeReadable ( self,  otp )
Returns a 6 word pass-phrase from a 64bit OTP
| parsePhrase
    parsePhrase ( self,  phrase )
Decode the phrase, and return a 64bit OTP I will raise Unauthorized if the parity is wrong TODO: Add support for hex (MUST) and the `2nd scheme`(SHOULD)
Exceptions |
--- | ---
Unauthorized( "Parity error" )

Table of Contents

This document was automatically generated on Sun Jul 14 19:53:11 2002 by HappyDoc version 2.0