Always generate random initialization vector when uploading encrypted file.
authoralex-z <blackslayer4@gmail.com>
Wed, 11 Jan 2023 18:56:34 +0000 (19:56 +0100)
committerallexzander <allexzander@users.noreply.github.com>
Wed, 18 Jan 2023 10:54:13 +0000 (11:54 +0100)
Signed-off-by: alex-z <blackslayer4@gmail.com>
src/libsync/propagateuploadencrypted.cpp

index 69722953252146d53581a85c2c7e7823c3161954..8e7738e84721062855ca3fde47f9a007c7410a5d 100644 (file)
@@ -155,7 +155,6 @@ void PropagateUploadEncrypted::slotFolderEncryptedMetadataReceived(const QJsonDo
   if (!found) {
       encryptedFile.encryptionKey = EncryptionHelper::generateRandom(16);
       encryptedFile.encryptedFilename = EncryptionHelper::generateRandomFilename();
-      encryptedFile.initializationVector = EncryptionHelper::generateRandom(16);
       encryptedFile.fileVersion = 1;
       encryptedFile.metadataKey = 1;
       encryptedFile.originalFilename = fileName;
@@ -169,6 +168,8 @@ void PropagateUploadEncrypted::slotFolderEncryptedMetadataReceived(const QJsonDo
           encryptedFile.mimetype = QByteArrayLiteral("httpd/unix-directory");
       }
   }
+  
+  encryptedFile.initializationVector = EncryptionHelper::generateRandom(16);
 
   _item->_encryptedFileName = _remoteParentPath + QLatin1Char('/') + encryptedFile.encryptedFilename;
   _item->_isEncrypted = true;