From dfdc795bb2f3464c44c514ba803384d96af6cb25 Mon Sep 17 00:00:00 2001 From: Ken Moore Date: Mon, 22 Feb 2016 14:02:02 -0500 Subject: [PATCH] Require that the SSL public key be base64 encoded when recieved for registration on the server. Also change the server SSL type flag to TLS 1.0 or later (instead of TLS 1.0 only) --- src/server/AuthorizationManager.cpp | 13 +++++++++---- src/server/globals-qt.h | 2 +- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/server/AuthorizationManager.cpp b/src/server/AuthorizationManager.cpp index da1016d..34882b0 100644 --- a/src/server/AuthorizationManager.cpp +++ b/src/server/AuthorizationManager.cpp @@ -81,6 +81,7 @@ bool AuthorizationManager::hasFullAccess(QString token){ bool AuthorizationManager::RegisterCertificate(QString token, QString pubkey, QString nickname, QString email){ if(!checkAuth(token)){ return false; } QString user = hashID(token).section("::::",2,2); //get the user name from the currently-valid token + //NOTE: The public key should be a base64 encoded string CONFIG->setValue("RegisteredCerts/"+user+"/"+pubkey, "Nickname: "+nickname+", Email: "+email); return true; } @@ -227,13 +228,13 @@ QString AuthorizationManager::LoginUC(QHostAddress host, QString encstring){ //Now re-use the "pubkeys" variable for the public SSL keys QString user; pubkeys = CONFIG->allKeys().filter("RegisteredCerts/"); //Format: "RegisteredCerts//" - qDebug() << " - Check pubkeys";// << pubkeys; + //qDebug() << " - Check pubkeys";// << pubkeys; for(int i=0; i // SSL Version/File defines -#define SSLVERSION QSsl::TlsV1_0 +#define SSLVERSION QSsl::TlsV1_0OrLater #define SSLCERTFILE "/usr/local/etc/sysadm/restserver.crt" #define SSLKEYFILE "/usr/local/etc/sysadm/restserver.key"