diff options
| author | Fabian Henneke <FabianHenneke@users.noreply.github.com> | 2020-06-29 10:12:19 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-29 10:12:19 +0200 |
| commit | 8bc662c9c02824718cb9c297fd3b3cf77fb8f2c9 (patch) | |
| tree | 0ac2a1a2e1bae8fb43a7049fd8651808e8255452 /app/src/main/java/com/zeapo/pwdstore/model | |
| parent | ac6220eed31f1aab0f73403b3befe77c57f0c9a1 (diff) | |
| download | HardenedPass-8bc662c9c02824718cb9c297fd3b3cf77fb8f2c9.tar.gz HardenedPass-8bc662c9c02824718cb9c297fd3b3cf77fb8f2c9.zip | |
Offer TOTP Autofill for OTP fields (#899)
Diffstat (limited to 'app/src/main/java/com/zeapo/pwdstore/model')
| -rw-r--r-- | app/src/main/java/com/zeapo/pwdstore/model/PasswordEntry.kt | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/model/PasswordEntry.kt b/app/src/main/java/com/zeapo/pwdstore/model/PasswordEntry.kt index da2d57c6..27a0c584 100644 --- a/app/src/main/java/com/zeapo/pwdstore/model/PasswordEntry.kt +++ b/app/src/main/java/com/zeapo/pwdstore/model/PasswordEntry.kt @@ -4,10 +4,12 @@ */ package com.zeapo.pwdstore.model +import com.zeapo.pwdstore.utils.Otp import com.zeapo.pwdstore.utils.TotpFinder import com.zeapo.pwdstore.utils.UriTotpFinder import java.io.ByteArrayOutputStream import java.io.UnsupportedEncodingException +import java.util.Date /** * A single entry in password store. [totpFinder] is an implementation of [TotpFinder] that let's us @@ -50,6 +52,12 @@ class PasswordEntry(content: String, private val totpFinder: TotpFinder = UriTot return username != null } + fun calculateTotpCode(): String? { + if (totpSecret == null) + return null + return Otp.calculateCode(totpSecret, Date().time / (1000 * totpPeriod), totpAlgorithm, digits) + } + val extraContentWithoutAuthData by lazy { extraContent.splitToSequence("\n").filter { line -> return@filter when { |
