From 515b415a56fa6a464fb16ff7f96d839e27883e7b Mon Sep 17 00:00:00 2001 From: Ash Hughes Date: Sat, 18 May 2013 23:11:14 +0100 Subject: [PATCH] use Bouncycastle updated API --- .../libs/scpg-jdk15on-1.47.0.3-SNAPSHOT.jar | Bin 279076 -> 279296 bytes .../keychain/helper/PgpMain.java | 5 +++-- README.md | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/OpenPGP-Keychain/libs/scpg-jdk15on-1.47.0.3-SNAPSHOT.jar b/OpenPGP-Keychain/libs/scpg-jdk15on-1.47.0.3-SNAPSHOT.jar index 55c28d5b7ec6891f16f22d88c5407304060ebd9b..a63969c8a6b61524c80807dc45b2dbb354c06edf 100644 GIT binary patch delta 22446 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 if4@&B!1>=p2Rc1^Zx++mQ1n$ diff --git a/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/helper/PgpMain.java b/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/helper/PgpMain.java index 142dfec01..60be62b92 100644 --- a/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/helper/PgpMain.java +++ b/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/helper/PgpMain.java @@ -323,8 +323,9 @@ public class PgpMain { } PGPSecretKeyRing newKeyRing = PGPSecretKeyRing.copyWithNewPassword(keyRing, - oldPassPhrase.toCharArray(), newPassPhrase.toCharArray(), keyRing.getSecretKey().getKeyEncryptionAlgorithm(), - new SecureRandom(), BOUNCY_CASTLE_PROVIDER_NAME); + new JcePBESecretKeyDecryptorBuilder( + new JcaPGPDigestCalculatorProviderBuilder().setProvider(BOUNCY_CASTLE_PROVIDER_NAME).build()).setProvider(BOUNCY_CASTLE_PROVIDER_NAME).build(oldPassPhrase.toCharArray()), + new JcePBESecretKeyEncryptorBuilder(keyRing.getSecretKey().getKeyEncryptionAlgorithm()).build(newPassPhrase.toCharArray())); updateProgress(progress, R.string.progress_savingKeyRing, 50, 100); diff --git a/README.md b/README.md index f4922a635..50de7a650 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ On error see: http://code.google.com/p/zxing/issues/detail?id=1207 ## Build Spongy Castle -Spongy Castle is the stock Bouncy Castle libraries with a couple of small changes to make it work on Android. OpenPGP-Keychain uses a forked version with some small changes to improve key import speed. These changes will be sent to Bouncy Castle, and Spongy Castle will be used again when they have filtered down. +Spongy Castle is the stock Bouncy Castle libraries with a couple of small changes to make it work on Android. OpenPGP-Keychain uses a forked version with some small changes to improve key import speed. These changes have been sent to Bouncy Castle, and Spongy Castle will be used again when they have filtered down. see * http://rtyley.github.com/spongycastle/