From a9865324427bb50eaa7f7ea7075c6dc052cafa95 Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava Date: Mon, 30 Oct 2017 19:08:03 +0100 Subject: [PATCH] [CSE] Generate a random password for the metadata. --- src/libsync/clientsideencryption.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/libsync/clientsideencryption.cpp b/src/libsync/clientsideencryption.cpp index 9610beda6..1d14342c0 100644 --- a/src/libsync/clientsideencryption.cpp +++ b/src/libsync/clientsideencryption.cpp @@ -740,7 +740,15 @@ std::string FolderMetadata::encryptMetadataKeys(const nlohmann::json& metadataKe } std::string FolderMetadata::genMetadataPass() const { - return "4randomdiceroll"; + const char* charmap = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + const size_t charmapLength = strlen(charmap); + const int bytes = 16; + std::string result; + result.reserve(bytes); + generate_n(back_inserter(result), bytes, [&](){ + return charmap[rand() % charmapLength]; + }); + return result; } // AES/GCM/NoPadding (128 bit key size)