Skip to content

Commit 920df1d

Browse files
Merge pull request #1577 from alexbakker/2fas-fixes
Store service name as issuer and tolerate spaces in secret for 2FAS
2 parents aec16f2 + 19a7720 commit 920df1d

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

app/src/main/java/com/beemdevelopment/aegis/importers/TwoFASImporter.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44

55
import com.beemdevelopment.aegis.R;
66
import com.beemdevelopment.aegis.crypto.CryptoUtils;
7-
import com.beemdevelopment.aegis.encoding.Base32;
87
import com.beemdevelopment.aegis.encoding.Base64;
98
import com.beemdevelopment.aegis.encoding.EncodingException;
9+
import com.beemdevelopment.aegis.otp.GoogleAuthInfo;
1010
import com.beemdevelopment.aegis.otp.HotpInfo;
1111
import com.beemdevelopment.aegis.otp.OtpInfo;
1212
import com.beemdevelopment.aegis.otp.OtpInfoException;
@@ -16,6 +16,7 @@
1616
import com.beemdevelopment.aegis.util.IOUtils;
1717
import com.beemdevelopment.aegis.util.JsonUtils;
1818
import com.beemdevelopment.aegis.vault.VaultEntry;
19+
import com.google.common.base.Strings;
1920
import com.topjohnwu.superuser.io.SuFile;
2021

2122
import org.json.JSONArray;
@@ -173,9 +174,12 @@ public Result convert() {
173174

174175
private static VaultEntry convertEntry(JSONObject obj) throws DatabaseImporterEntryException {
175176
try {
176-
byte[] secret = Base32.decode(obj.getString("secret"));
177+
byte[] secret = GoogleAuthInfo.parseSecret(obj.getString("secret"));
177178
JSONObject info = obj.getJSONObject("otp");
178-
String issuer = info.optString("issuer");
179+
String issuer = obj.optString("name");
180+
if (Strings.isNullOrEmpty(issuer)) {
181+
issuer = info.optString("issuer");
182+
}
179183
String name = info.optString("account");
180184
int digits = info.optInt("digits", TotpInfo.DEFAULT_DIGITS);
181185
String algorithm = info.optString("algorithm", TotpInfo.DEFAULT_ALGORITHM);

0 commit comments

Comments
 (0)