2023-07-18 15:01:38 +02:00
2023-07-17 22:52:15 +02:00
2023-03-26 19:36:35 +03:00
2023-07-17 10:19:06 +03:00
2023-03-26 21:13:39 +02:00
2023-03-26 19:36:35 +03:00
2023-07-18 15:01:38 +02:00
2023-07-17 23:07:28 +02:00
2023-03-26 19:36:35 +03:00
2023-07-17 23:07:28 +02:00

EasySSL

This is wrapper library that make using OpenSSL library more simple. This library contains interfaces for the signing and encription data.

Supported encription alhorithms:

  • ECDSA
  • RSA

Supported features

  • encription
  • signing
  • keys creating
  • asyn auth bse on the asyn encriptions methods

Build and Include

  • cd yourRepo

  • git submodule add https://github.com/QuasarApp/easyssl.git # add the repository of Heart into your repo like submodule

  • git submodule update --init --recursive

  • Include in your CMakeLists.txt file the main CMakeLists.txt file of Heart library

    add_subdirectory(easyssl)
    
  • link the Heart library to your target

    target_link_libraries(yourLib PUBLIC easyssl)
    
  • rebuild yuor project

Usage

Encription

#include "easyssl/rsassl.h"

// create a publick and private keys array.
int main() {
    QByteArray pub, priv;
    EasySSL::RSASSL crypto;
    crypto.makeKeys(pub, priv)
    
    auto siganture = crypto.signMessage(message, priv);
    crypto.checkSign(message, siganture, pub);
    
    auto encriptedMsg = crypto.encrypt(message, pub);
    auto decryptedMsg = crypto.decrypt(encriptedMsg, priv);
}


Authentication

#include <easyssl/authecdsa.h>

class ECDSA: public EasySSL::AuthECDSA {

public:

    // AsyncKeysAuth interface
    void setPrivateKey(const QByteArray &newPriv) {
        _priv = newPriv;
    }

    QByteArray getPrivateKey() const {
        return _priv;
    };

private:
    QByteArray _priv;

};

ECDSA edsa;
QByteArray pub, priv;
QString userID;

// make public and private keys.
edsa.makeKeys(pub, priv);
edsa.setPrivateKey(priv);
edsa.setPublicKey(pub);

// prepare an authentication object.
edsa.prepare();
edsa.setPrivateKey({});

edsa.auth(1000, &userID)

Do not forget to help us make this library better...

See our main documentation about contributing to EasySsl

Full documentation available here

Description
This is Qt wraper of the ssl library.
Readme SSPL-1.0 438 KiB
Languages
C++ 92.1%
CMake 7.9%