C# Класс Google.Authenticator.TwoFactorAuthenticator

Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
_epoch DateTime

Открытые методы

Метод Описание
GeneratePINAtInterval ( string accountSecretKey, long counter, int digits = 6 ) : string
GenerateSetupCode ( string accountTitleNoSpaces, string accountSecretKey, int qrCodeWidth, int qrCodeHeight ) : SetupCode

Generate a setup code for a Google Authenticator user to scan.

GenerateSetupCode ( string issuer, string accountTitleNoSpaces, string accountSecretKey, int qrCodeWidth, int qrCodeHeight ) : SetupCode

Generate a setup code for a Google Authenticator user to scan (with issuer ID).

GenerateSetupCode ( string issuer, string accountTitleNoSpaces, string accountSecretKey, int qrCodeWidth, int qrCodeHeight, bool useHttps ) : SetupCode

Generate a setup code for a Google Authenticator user to scan (with issuer ID).

GetCurrentPIN ( string accountSecretKey ) : string
GetCurrentPIN ( string accountSecretKey, System.DateTime now ) : string
GetCurrentPINs ( string accountSecretKey ) : string[]
GetCurrentPINs ( string accountSecretKey, System.TimeSpan timeTolerance ) : string[]
TwoFactorAuthenticator ( ) : System
TwoFactorAuthenticator ( bool useManagedSha1, bool useUnmanagedOnFail ) : System
ValidateTwoFactorPIN ( string accountSecretKey, string twoFactorCodeFromClient ) : bool
ValidateTwoFactorPIN ( string accountSecretKey, string twoFactorCodeFromClient, TimeSpan timeTolerance ) : bool

Приватные методы

Метод Описание
Base32Encode ( byte data ) : string
EncodeAccountSecretKey ( string accountSecretKey ) : string
GenerateHashedCode ( byte key, long iterationNumber, int digits = 6 ) : string
GenerateHashedCode ( string secret, long iterationNumber, int digits = 6 ) : string
GetCurrentCounter ( ) : long
GetCurrentCounter ( System.DateTime now, System.DateTime epoch, int timeStep ) : long
UrlEncode ( string value ) : string
getHMACSha1Algorithm ( byte key ) : HMACSHA1

Creates a HMACSHA1 algorithm to use to hash the counter bytes. By default, this will attempt to use the managed SHA1 class (SHA1Manager) and on exception (FIPS-compliant machine policy, etc) will attempt to use the unmanaged SHA1 class (SHA1CryptoServiceProvider).

Описание методов

GeneratePINAtInterval() публичный Метод

public GeneratePINAtInterval ( string accountSecretKey, long counter, int digits = 6 ) : string
accountSecretKey string
counter long
digits int
Результат string

GenerateSetupCode() публичный Метод

Generate a setup code for a Google Authenticator user to scan.
public GenerateSetupCode ( string accountTitleNoSpaces, string accountSecretKey, int qrCodeWidth, int qrCodeHeight ) : SetupCode
accountTitleNoSpaces string Account Title (no spaces)
accountSecretKey string Account Secret Key
qrCodeWidth int QR Code Width
qrCodeHeight int QR Code Height
Результат SetupCode

GenerateSetupCode() публичный Метод

Generate a setup code for a Google Authenticator user to scan (with issuer ID).
public GenerateSetupCode ( string issuer, string accountTitleNoSpaces, string accountSecretKey, int qrCodeWidth, int qrCodeHeight ) : SetupCode
issuer string Issuer ID (the name of the system, i.e. 'MyApp')
accountTitleNoSpaces string Account Title (no spaces)
accountSecretKey string Account Secret Key
qrCodeWidth int QR Code Width
qrCodeHeight int QR Code Height
Результат SetupCode

GenerateSetupCode() публичный Метод

Generate a setup code for a Google Authenticator user to scan (with issuer ID).
public GenerateSetupCode ( string issuer, string accountTitleNoSpaces, string accountSecretKey, int qrCodeWidth, int qrCodeHeight, bool useHttps ) : SetupCode
issuer string Issuer ID (the name of the system, i.e. 'MyApp')
accountTitleNoSpaces string Account Title (no spaces)
accountSecretKey string Account Secret Key
qrCodeWidth int QR Code Width
qrCodeHeight int QR Code Height
useHttps bool Use HTTPS instead of HTTP
Результат SetupCode

GetCurrentPIN() публичный Метод

public GetCurrentPIN ( string accountSecretKey ) : string
accountSecretKey string
Результат string

GetCurrentPIN() публичный Метод

public GetCurrentPIN ( string accountSecretKey, System.DateTime now ) : string
accountSecretKey string
now System.DateTime
Результат string

GetCurrentPINs() публичный Метод

public GetCurrentPINs ( string accountSecretKey ) : string[]
accountSecretKey string
Результат string[]

GetCurrentPINs() публичный Метод

public GetCurrentPINs ( string accountSecretKey, System.TimeSpan timeTolerance ) : string[]
accountSecretKey string
timeTolerance System.TimeSpan
Результат string[]

TwoFactorAuthenticator() публичный Метод

public TwoFactorAuthenticator ( ) : System
Результат System

TwoFactorAuthenticator() публичный Метод

public TwoFactorAuthenticator ( bool useManagedSha1, bool useUnmanagedOnFail ) : System
useManagedSha1 bool
useUnmanagedOnFail bool
Результат System

ValidateTwoFactorPIN() публичный Метод

public ValidateTwoFactorPIN ( string accountSecretKey, string twoFactorCodeFromClient ) : bool
accountSecretKey string
twoFactorCodeFromClient string
Результат bool

ValidateTwoFactorPIN() публичный Метод

public ValidateTwoFactorPIN ( string accountSecretKey, string twoFactorCodeFromClient, TimeSpan timeTolerance ) : bool
accountSecretKey string
twoFactorCodeFromClient string
timeTolerance TimeSpan
Результат bool

Описание свойств

_epoch публичное статическое свойство

public static DateTime _epoch
Результат DateTime