Package com.storedobject.common
Class TOTP
java.lang.Object
com.storedobject.common.TOTP
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic byte[]
Generate a suitable key.void
setAlgorithm
(String algorithm) Set algorithm.void
setDigits
(int digits) Set number of digits.void
setKey
(byte[] key) Set another key.void
setPeriodDrift
(int periodDrift) Set period-drift.void
setTimeDrift
(int timeDrift) Set allowed time-drift.boolean
verify
(int code) Verify the TOTP code.boolean
Verify the TOTP code.
-
Constructor Details
-
TOTP
public TOTP(byte[] key) Constructor. Default digits: 6, Default algorithm: SHA1. Default time-drift: 30 seconds. Default period-drift: 1.- Parameters:
key
- Key to be used (Must have been generated earlier withgenerateKey()
).
-
TOTP
public TOTP(byte[] key, int digits) Constructor. Default algorithm: SHA1. Default time-drift: 30 seconds. Default period-drift: 1.- Parameters:
key
- Key to be used (Must have been generated earlier withgenerateKey()
).digits
- Number of digits in the TOTP.
-
TOTP
Constructor. Default time-drift: 30 seconds. Default period-drift: 1.- Parameters:
key
- Key to be used (Must have been generated earlier withgenerateKey()
).digits
- Number of digits in the TOTP.algorithm
- Algorithm to use - "SHA1", "SHA256", "SHA512".
-
-
Method Details
-
setKey
public void setKey(byte[] key) Set another key.- Parameters:
key
- Key to be used (Must have been generated earlier withgenerateKey()
).
-
setDigits
public void setDigits(int digits) Set number of digits.- Parameters:
digits
- Number of digits in the TOTP.
-
setAlgorithm
Set algorithm.- Parameters:
algorithm
- Algorithm to use - "SHA1", "SHA256", "SHA512".
-
setTimeDrift
public void setTimeDrift(int timeDrift) Set allowed time-drift. Default is 30 seconds.- Parameters:
timeDrift
- Time-drift to set.
-
setPeriodDrift
public void setPeriodDrift(int periodDrift) Set period-drift. Default is 1 period.- Parameters:
periodDrift
- Period-drift to set.
-
verify
Verify the TOTP code.- Parameters:
code
- Code to verify.- Returns:
- True/false.
-
verify
public boolean verify(int code) Verify the TOTP code.- Parameters:
code
- Code to verify.- Returns:
- True/false.
-
generateKey
public static byte[] generateKey()Generate a suitable key.- Returns:
- Generated key.
-