diff options
author | Harsh Shandilya <me@msfjarvis.dev> | 2023-12-27 23:57:49 +0530 |
---|---|---|
committer | Harsh Shandilya <me@msfjarvis.dev> | 2023-12-27 23:57:49 +0530 |
commit | ef39ef94cfe4d1c1d04901695b9a91b441108bff (patch) | |
tree | d278419c990812f11f253e67ad1cba65049d204e | |
parent | d8f76b33e9ea74eb567a115dd63559f6b27b2fce (diff) |
Revert "fix: check if passphrase is necessary before asking for it"
Didn't fix the issue.
This reverts commit d8f76b33e9ea74eb567a115dd63559f6b27b2fce.
5 files changed, 1 insertions, 33 deletions
diff --git a/app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt b/app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt index be3f8da3..0ce4b3e3 100644 --- a/app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt +++ b/app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt @@ -45,10 +45,6 @@ constructor( out: ByteArrayOutputStream, ) = withContext(dispatcherProvider.io()) { decryptPgp(password, identities, message, out) } - fun isPasswordProtected(message: ByteArrayInputStream): Boolean { - return pgpCryptoHandler.isPassphraseProtected(message) - } - suspend fun encrypt( identities: List<PGPIdentifier>, content: ByteArrayInputStream, diff --git a/app/src/main/java/app/passwordstore/ui/crypto/DecryptActivity.kt b/app/src/main/java/app/passwordstore/ui/crypto/DecryptActivity.kt index 56ac1fc0..9fb20af2 100644 --- a/app/src/main/java/app/passwordstore/ui/crypto/DecryptActivity.kt +++ b/app/src/main/java/app/passwordstore/ui/crypto/DecryptActivity.kt @@ -177,7 +177,7 @@ class DecryptActivity : BasePGPActivity() { } } - private suspend fun askPassphrase( + private fun askPassphrase( isError: Boolean, gpgIdentifiers: List<PGPIdentifier>, authResult: Result, @@ -187,14 +187,6 @@ class DecryptActivity : BasePGPActivity() { } else { finish() } - if ( - !repository.isPasswordProtected( - withContext(dispatcherProvider.io()) { File(fullPath).readBytes().inputStream() } - ) - ) { - decryptWithPassphrase(password = "", gpgIdentifiers = gpgIdentifiers) - return - } val dialog = PasswordDialog() if (isError) { dialog.setError() diff --git a/crypto/common/src/main/kotlin/app/passwordstore/crypto/CryptoHandler.kt b/crypto/common/src/main/kotlin/app/passwordstore/crypto/CryptoHandler.kt index 20a4d1d9..898cf058 100644 --- a/crypto/common/src/main/kotlin/app/passwordstore/crypto/CryptoHandler.kt +++ b/crypto/common/src/main/kotlin/app/passwordstore/crypto/CryptoHandler.kt @@ -41,10 +41,4 @@ public interface CryptoHandler<Key, EncOpts : CryptoOptions, DecryptOpts : Crypt /** Given a [fileName], return whether this instance can handle it. */ public fun canHandle(fileName: String): Boolean - - /** - * Inspects the given encrypted [message] to notify user if a passphrase is necessary to decrypt - * it. - */ - public fun isPassphraseProtected(message: InputStream): Boolean } diff --git a/crypto/pgpainless/src/main/kotlin/app/passwordstore/crypto/PGPKeyManager.kt b/crypto/pgpainless/src/main/kotlin/app/passwordstore/crypto/PGPKeyManager.kt index 41a797b6..8aa11803 100644 --- a/crypto/pgpainless/src/main/kotlin/app/passwordstore/crypto/PGPKeyManager.kt +++ b/crypto/pgpainless/src/main/kotlin/app/passwordstore/crypto/PGPKeyManager.kt @@ -139,14 +139,6 @@ constructor( /** @see KeyManager.getKeyById */ override suspend fun getKeyId(key: PGPKey): PGPIdentifier? = tryGetId(key) - public suspend fun isPasswordProtected(key: PGPKey): Boolean { - val keyring = tryParseKeyring(key) - if (keyring is PGPSecretKeyRing) { - keyring.secretKey.keyEncryptionAlgorithm - } - return false - } - /** Checks if [keyDir] exists and attempts to create it if not. */ private fun keyDirExists(): Boolean { return keyDir.exists() || keyDir.mkdirs() diff --git a/crypto/pgpainless/src/main/kotlin/app/passwordstore/crypto/PGPainlessCryptoHandler.kt b/crypto/pgpainless/src/main/kotlin/app/passwordstore/crypto/PGPainlessCryptoHandler.kt index 72baa81a..a7087acf 100644 --- a/crypto/pgpainless/src/main/kotlin/app/passwordstore/crypto/PGPainlessCryptoHandler.kt +++ b/crypto/pgpainless/src/main/kotlin/app/passwordstore/crypto/PGPainlessCryptoHandler.kt @@ -22,7 +22,6 @@ import org.bouncycastle.openpgp.PGPSecretKeyRingCollection import org.bouncycastle.util.io.Streams import org.pgpainless.PGPainless import org.pgpainless.decryption_verification.ConsumerOptions -import org.pgpainless.decryption_verification.MessageInspector import org.pgpainless.encryption_signing.EncryptionOptions import org.pgpainless.encryption_signing.ProducerOptions import org.pgpainless.exception.WrongPassphraseException @@ -137,9 +136,4 @@ public class PGPainlessCryptoHandler @Inject constructor() : public override fun canHandle(fileName: String): Boolean { return fileName.substringAfterLast('.', "") == "gpg" } - - public override fun isPassphraseProtected(message: InputStream): Boolean { - val info = MessageInspector.determineEncryptionInfoForMessage(message) - return info.isPassphraseEncrypted - } } |