Как подключить шифрование?

185
31 мая 2018, 23:50

Есть программа на шарпах:

using System.IO;
using System.Security.Cryptography;
using System.Text;
namespace Crypto
{
    class Program
    {
        static void Main(string[] args)
        {
            string DatabaseFilePath = "testCrypto.bin";
            var stream = new FileStream(DatabaseFilePath, FileMode.Create, FileAccess.Write);
            var cryptic = new DESCryptoServiceProvider
            {
                Key = Encoding.UTF8.GetBytes("ABCDEFGH"),
                IV = Encoding.UTF8.GetBytes("ABCDEFGH")
            };
            var crStream = new CryptoStream(stream, cryptic.CreateEncryptor(), CryptoStreamMode.Write);
            var data = Encoding.UTF8.GetBytes("Help me stackoverflow!");
            crStream.Write(data, 0, data.Length);
        }
    }
}

CreateEncryptor() создает AES-шифрование. И вот хочется в QT написать программу расшифровки, используя популярные/стандартные/правильные решения. В QT стандартных библиотек шифрования вроде нет. Наткнулся на openssl и crypto++, и не могу понять что делать дальше? что скачивать? как использовать?

Answer 1

Наткнулся на openssl и crypto++, и не могу понять что делать дальше?

Дальше — что хочешь... Некоторые распространённые варианты приведены ниже:

  • Почитать документацию/примеры, поспрашивай наводящие вопросы у гугла (в меру развития, можно хоть видео туториалы на тытрубе смотреть).
  • Стоит выбрать что-то одно. Можно конечно сделать остальные шаги для обеих библиотек и отложить выбор на потом, но когда возникнут конкретные вопросы по обеим расписывать ответы вряд ли кто-то захочет.
  • Скачай/установи/собери библиотеки. Под большинство *nix систем это делается штатными средствами, а в некоторых есть даже из коробки. Если нет, то сборка обычно описана в файлах с говорящими названиями README или INSTALL. Под win* — я хз, так что лишь посоветую вернуться к чтению документации.
  • Сделай простенький hello world, с помощью своих средств разработки. Как — возвращусь к первому пункту про чтение доков.
  • Пользуясь полученным опытом подключай либу к своему проекту.
Answer 2

Инструкция установки openSSL на win.

  1. Переходим по ссылке http://slproweb.com/products/Win32OpenSSL.html
  2. Качаем не лайт версию (32 бит пробовал).
  3. Во время установки выбираем пункт: the openssl binaries (/bin) directory
  4. После установки добавляем в переменные среды в переменную PATH: C:\OpenSSL-Win32\lib
  5. В .pro-файл проекта на QT добавляем строчку: INCLUDEPATH += C:/OpenSSL-Win32/include
  6. В main.cpp пробуем для примера написать строчку : #include <openssl/aes.h> и скомпилировать.
  7. Готово
READ ALSO
Стили для дочерних элементов

Стили для дочерних элементов

Допустим у нас есть два div-а

214
Почему hover эффект не работает на ширине меньше 1200 пикселей?

Почему hover эффект не работает на ширине меньше 1200 пикселей?

Есть не большой hover эффект (Называется эффект Роршаха)

204