diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-07-30 22:46:36 +0200 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-08-09 21:49:56 +0200 |
commit | dba145f5dfb7f7a43be41b3d01eeb68c4253ae7f (patch) | |
tree | fd6a2fe0f31b49ded33599ac34cc566aa2757139 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/PgpSignEncryptOperation.java | |
parent | 57378be1c07893e2231e485d6289d53d522aa7d5 (diff) | |
download | open-keychain-dba145f5dfb7f7a43be41b3d01eeb68c4253ae7f.tar.gz open-keychain-dba145f5dfb7f7a43be41b3d01eeb68c4253ae7f.tar.bz2 open-keychain-dba145f5dfb7f7a43be41b3d01eeb68c4253ae7f.zip |
Follow some of coorus recommendations: better selection of algo whitelist, ignore recipients preferred algos
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/PgpSignEncryptOperation.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/PgpSignEncryptOperation.java | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/PgpSignEncryptOperation.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/PgpSignEncryptOperation.java index a2c5fa30d..8701c27dc 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/PgpSignEncryptOperation.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/PgpSignEncryptOperation.java @@ -226,17 +226,10 @@ public class PgpSignEncryptOperation extends BaseOperation { return new PgpSignEncryptResult(PgpSignEncryptResult.RESULT_ERROR, log); } - // Use preferred hash algo + // Use requested hash algo int requestedAlgorithm = input.getSignatureHashAlgorithm(); - ArrayList<Integer> supported = signingKey.getSupportedHashAlgorithms(); if (requestedAlgorithm == PgpConstants.OpenKeychainHashAlgorithmTags.USE_DEFAULT) { input.setSignatureHashAlgorithm(PgpConstants.DEFAULT_HASH_ALGORITHM); - // TODO - // get most preferred -// input.setSignatureHashAlgorithm(supported.get(0)); - } else if (!supported.contains(requestedAlgorithm)) { - log.add(LogType.MSG_PSE_ERROR_HASH_ALGO, indent); - return new PgpSignEncryptResult(PgpSignEncryptResult.RESULT_ERROR, log); } } updateProgress(R.string.progress_preparing_streams, 2, 100); @@ -245,11 +238,9 @@ public class PgpSignEncryptOperation extends BaseOperation { PGPEncryptedDataGenerator cPk = null; if (enableEncryption) { - // Use preferred encryption algo + // Use requested encryption algo int algo = input.getSymmetricEncryptionAlgorithm(); if (algo == PgpConstants.OpenKeychainSymmetricKeyAlgorithmTags.USE_DEFAULT) { - // get most preferred - // TODO: get from recipients algo = PgpConstants.DEFAULT_SYMMETRIC_ALGORITHM; } // has Integrity packet enabled! |