Spongy Castle by Bouncy Castle replacement

This commit is contained in:
J-Jamet
2020-04-13 13:39:45 +02:00
parent 5a6ae453cf
commit 84452e9fc0
6 changed files with 13 additions and 14 deletions

View File

@@ -85,7 +85,6 @@ android {
} }
} }
def spongycastleVersion = "1.58.0.0"
def room_version = "2.2.5" def room_version = "2.2.5"
dependencies { dependencies {
@@ -100,12 +99,11 @@ dependencies {
implementation "androidx.core:core-ktx:1.2.0" implementation "androidx.core:core-ktx:1.2.0"
// To upgrade with style // To upgrade with style
implementation 'com.google.android.material:material:1.0.0' implementation 'com.google.android.material:material:1.0.0'
// Database
implementation "androidx.room:room-runtime:$room_version" implementation "androidx.room:room-runtime:$room_version"
kapt "androidx.room:room-compiler:$room_version" kapt "androidx.room:room-compiler:$room_version"
// Crypto
implementation "com.madgag.spongycastle:core:$spongycastleVersion" implementation 'org.bouncycastle:bcprov-jdk15on:1.65'
implementation "com.madgag.spongycastle:prov:$spongycastleVersion"
// Time // Time
implementation 'joda-time:joda-time:2.9.9' implementation 'joda-time:joda-time:2.9.9'
// Color // Color

View File

@@ -24,7 +24,7 @@ import com.kunzisoft.keepass.crypto.engine.AesEngine
import com.kunzisoft.keepass.crypto.engine.ChaCha20Engine import com.kunzisoft.keepass.crypto.engine.ChaCha20Engine
import com.kunzisoft.keepass.crypto.engine.CipherEngine import com.kunzisoft.keepass.crypto.engine.CipherEngine
import com.kunzisoft.keepass.crypto.engine.TwofishEngine import com.kunzisoft.keepass.crypto.engine.TwofishEngine
import org.spongycastle.jce.provider.BouncyCastleProvider import org.bouncycastle.jce.provider.BouncyCastleProvider
import java.security.NoSuchAlgorithmException import java.security.NoSuchAlgorithmException
import java.security.Security import java.security.Security
import java.util.* import java.util.*
@@ -37,6 +37,7 @@ object CipherFactory {
private var blacklisted: Boolean = false private var blacklisted: Boolean = false
init { init {
Security.removeProvider(BouncyCastleProvider.PROVIDER_NAME)
Security.addProvider(BouncyCastleProvider()) Security.addProvider(BouncyCastleProvider())
} }

View File

@@ -19,11 +19,11 @@
*/ */
package com.kunzisoft.keepass.crypto package com.kunzisoft.keepass.crypto
import org.spongycastle.crypto.StreamCipher import org.bouncycastle.crypto.StreamCipher
import org.spongycastle.crypto.engines.ChaCha7539Engine import org.bouncycastle.crypto.engines.ChaCha7539Engine
import org.spongycastle.crypto.engines.Salsa20Engine import org.bouncycastle.crypto.engines.Salsa20Engine
import org.spongycastle.crypto.params.KeyParameter import org.bouncycastle.crypto.params.KeyParameter
import org.spongycastle.crypto.params.ParametersWithIV import org.bouncycastle.crypto.params.ParametersWithIV
object StreamCipherFactory { object StreamCipherFactory {

View File

@@ -21,7 +21,7 @@ package com.kunzisoft.keepass.crypto.engine
import com.kunzisoft.keepass.database.element.security.EncryptionAlgorithm import com.kunzisoft.keepass.database.element.security.EncryptionAlgorithm
import com.kunzisoft.keepass.stream.bytes16ToUuid import com.kunzisoft.keepass.stream.bytes16ToUuid
import org.spongycastle.jce.provider.BouncyCastleProvider import org.bouncycastle.jce.provider.BouncyCastleProvider
import java.security.InvalidAlgorithmParameterException import java.security.InvalidAlgorithmParameterException
import java.security.InvalidKeyException import java.security.InvalidKeyException
import java.security.NoSuchAlgorithmException import java.security.NoSuchAlgorithmException

View File

@@ -43,7 +43,7 @@ import com.kunzisoft.keepass.database.file.DatabaseKDBXXML
import com.kunzisoft.keepass.database.file.DateKDBXUtil import com.kunzisoft.keepass.database.file.DateKDBXUtil
import com.kunzisoft.keepass.stream.* import com.kunzisoft.keepass.stream.*
import com.kunzisoft.keepass.tasks.ProgressTaskUpdater import com.kunzisoft.keepass.tasks.ProgressTaskUpdater
import org.spongycastle.crypto.StreamCipher import org.bouncycastle.crypto.StreamCipher
import org.xmlpull.v1.XmlPullParser import org.xmlpull.v1.XmlPullParser
import org.xmlpull.v1.XmlPullParserException import org.xmlpull.v1.XmlPullParserException
import org.xmlpull.v1.XmlPullParserFactory import org.xmlpull.v1.XmlPullParserFactory

View File

@@ -47,8 +47,8 @@ import com.kunzisoft.keepass.database.file.DatabaseHeaderKDBX
import com.kunzisoft.keepass.database.file.DatabaseKDBXXML import com.kunzisoft.keepass.database.file.DatabaseKDBXXML
import com.kunzisoft.keepass.database.file.DateKDBXUtil import com.kunzisoft.keepass.database.file.DateKDBXUtil
import com.kunzisoft.keepass.stream.* import com.kunzisoft.keepass.stream.*
import org.bouncycastle.crypto.StreamCipher
import org.joda.time.DateTime import org.joda.time.DateTime
import org.spongycastle.crypto.StreamCipher
import org.xmlpull.v1.XmlSerializer import org.xmlpull.v1.XmlSerializer
import java.io.IOException import java.io.IOException
import java.io.OutputStream import java.io.OutputStream