From 8a2a985f3ecf73a0577bb25ddfd98c9cefaa193d Mon Sep 17 00:00:00 2001 From: Simon Njoroge Date: Wed, 15 Jan 2025 13:43:11 +0300 Subject: [PATCH] Change zip password to charArray --- .../quest/ui/usersetting/UserSettingViewModel.kt | 13 +++++++------ .../smartregister/fhircore/quest/util/FileUtils.kt | 4 ++-- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/android/quest/src/main/java/org/smartregister/fhircore/quest/ui/usersetting/UserSettingViewModel.kt b/android/quest/src/main/java/org/smartregister/fhircore/quest/ui/usersetting/UserSettingViewModel.kt index 2fb13a5f2a..4dcf180010 100644 --- a/android/quest/src/main/java/org/smartregister/fhircore/quest/ui/usersetting/UserSettingViewModel.kt +++ b/android/quest/src/main/java/org/smartregister/fhircore/quest/ui/usersetting/UserSettingViewModel.kt @@ -280,12 +280,13 @@ constructor( if (dbCopied) { val zipFile = File("${backupFile.absolutePath}.zip") val practitionerUuid = practitionerId!!.substring(0, practitionerId.indexOf("-")) - val zipPassword = "${username}_$practitionerUuid" - - val zipParameters = ZipParameters() - zipParameters.isEncryptFiles = true - zipParameters.compressionLevel = CompressionLevel.HIGHER - zipParameters.encryptionMethod = EncryptionMethod.AES + val zipPassword = "${username}_$practitionerUuid".toCharArray() + val zipParameters = + ZipParameters().apply { + isEncryptFiles = true + compressionLevel = CompressionLevel.HIGHER + encryptionMethod = EncryptionMethod.AES + } FileUtils.zipFiles( zipFile, diff --git a/android/quest/src/main/java/org/smartregister/fhircore/quest/util/FileUtils.kt b/android/quest/src/main/java/org/smartregister/fhircore/quest/util/FileUtils.kt index 2849264331..508750586d 100644 --- a/android/quest/src/main/java/org/smartregister/fhircore/quest/util/FileUtils.kt +++ b/android/quest/src/main/java/org/smartregister/fhircore/quest/util/FileUtils.kt @@ -31,11 +31,11 @@ object FileUtils { fun zipFiles( zipFile: File, files: List, - password: String, + zipPassword: CharArray, zipParameters: ZipParameters, deleteOriginalFiles: Boolean = false, ) { - val zip = ZipFile(zipFile, password.toCharArray()) + val zip = ZipFile(zipFile, zipPassword) for (file in files) { try { zip.addFile(file, zipParameters)