Cryptographic QCA

Cryptographic QCA

Aurora OS application to demonstrate working with the cryptography by using QCA API.

RU | EN


Cryptographic

Приложение является примером для демонстрации работы с криптографией в ОС Аврора.

Приложение используется для демонстрации работы с QCA API.

Приложение позволяет:

  • Кодировать, декодировать шифровать и хэшировать строки,
  • Шифровать и расшифровывать с помощью закрытого ключа,
  • Считывать сертификаты,
  • Проверять подлинность сообщений,
  • Генерировать случайные числа,
  • Реализовывать обработчик запросов пароля и токена,
  • Просматривать доступных криптопровайдеров,
  • Запускать криптопровайдер на стороне клиента.

Проект использует библиотеку qca2-qt5 в качестве зависимости.

Содержание

  1. Содержание
  2. Совместимость
  3. Особенности использования и сборки
  4. Информация о ветках
  5. Установка и запуск
  6. Скриншоты
  7. Варианты использования
  8. Известные ошибки
  9. Структура проекта
  10. Правила использования и участие в разработке

Совместимость

Приложение корректно работает начиная с 5.1.3.45 версии ОС Авроры

Особенности использования и сборки

Данный пример-приложение собирается с помощью Аврора SDK: Документация

Информация о ветках

Ветки

Установка и запуск

Проект собирается обычным образом с помощью Аврора SDK: Документация.

Снимки экранов

screenshots

Варианты использования

Кодирование и декодирование строк с использованием Base64 или Hex

  • Для демонстрации кодирования и декодирования строк, выберите "Кодирование/Декодирование строк" на главном экране.
  • На открывшейся странице вы можете выбрать метод кодирования (Base64 или Hex), ввести строку, закодировать или декодировать её, используя соответсвующие кнопки.

Шифрование строк с использованием Blowfish, TripleDES, DES, AES128, AES192, AES256, CAST5

  • Для демонстрации шифрования строк, выберите "Шифрование строки" на главном экране.
  • На открывшейся странице вы можете выбрать метод шифрования, ввести строку и зашифровать её, нажав на кнопку.

Шифрование строк с использованием md5crypt

  • Для демонстрации шифрования строк с использованием md5crypt, выберите "Шифрование строки на основе md5crypt" на главном экране.
  • На открывшейся странице вы можете ввести соль и строку, а затем произвести шифрование, нажав на кнопку.

Хеширование строк с использованием SHA-0, SHA-1, MD2, MD4, MD5, RIPEMD160, SHA-224, SHA-256, SHA-384, SHA-512, Whirlpool

  • Для демонстрации хеширования строк, выберите "Хеширование строки" на главном экране.
  • На открывшейся странице вы можете выбрать метод хеширования, ввести строку и создать хеш, нажав на кнопку.

Аутентификация сообщений с использованием HMAC с SHA-1, MD5, RIPEMD160, SHA-224, SHA-256, SHA-384, SHA-512

  • Для демонстрации аутентификации сообщений, выберите "Аутентификация сообщений" на главном экране.
  • На открывшейся странице вы можете выбрать метод аутентификации сообщений, ввести кодовую фразу и сообщение, а затем выполнить аутентификацию, нажав на кнопку.

Генерация случайных чисел

  • Для демонстрации генерации случайных чисел, выберите "Генерация случайных чисел" на главном экране.
  • На открывшейся странице вы можете выбрать тип данных числа и сгенерировать его, нажав на кнопку.

Список доступных криптопровайдеров на устройстве

  • Чтобы увидеть список доступных криптопровайдеров на устройстве, выберите "Все доступные криптопровайдеры" на главном экране.
  • На открывшейся странице вы можете увидеть список доступных криптопровайдеров, разделённых на группы.

Обработчик запросов пароля и токена от криптопровайдеров

  • Для демонстрации процесса работы обработчика запросов, выберите "Обработчик запросов" на главном экране.
  • На открывшейся странице вы можете выбрать стиль запроса пароля, ввести пароль, ID токена и имя токена, а затем инициировать запрос с этими данными.

Чтение сертификатов X509 из PEM-файла

  • Для демонстрации чтения сертификатов, выберите "Чтение сертификатов X509" на главном экране.
  • На открывшейся странице вы можете выбрать сертификат и прочитать его, нажав на кнопку.

Шифрование и расшифровка с использованием закрытого ключа

  • Чтобы продемонстрировать шифрование и дешифрование с использованием закрытого ключа, выберите "Операции с открытым и закрытым ключами" на главном экране.
  • На открывшейся странице вы можете выбрать закрытый ключ, ввести пароль и сообщение, а затем зашифровать это сообщение, нажав на кнопку.

Криптопровайдер с AEC CMAC на стороне клиента

  • Чтобы продемонстрировать работу криптопровайдера на стороне клиента, выберите "Собственный криптопровайдер с AES CMAC" на главном экране.
  • На открывшейся странице вы можете ввести ключ и сообщение, а затем зашифровать это сообщение, используя введенный ключ, нажав на кнопку.

Известные ошибки

Проект содержит следующие ограничения:

  • Не реализована асинхронная загрузка ключа.
  • Не реализованы операции с RSA-ключом.

Структура проекта

Проект имеет стандартную структуру приложения на базе C++ и QML для ОС Аврора.

  • Файл CMakeLists.txt описывает структуру проекта для системы сборки CMake.
  • Каталог icons содержит иконки приложения для поддерживаемых разрешений экрана.
  • Каталог pem содержит примеры PEM-файлов, используемых в приложении.
  • Каталог qml содержит исходный код на QML и ресурсы интерфейса пользователя.
    • Каталог components содержит пользовательские компоненты пользовательского интерфейса.
    • Каталог cover содержит реализации обложек приложения.
    • Каталог icons содержит дополнительные иконки интерфейса пользователя.
    • Каталог pages содержит страницы приложения.
    • Файл Cryptographic.qml предоставляет реализацию окна приложения.
  • Каталог rpm содержит настройки сборки rpm-пакета.
  • Каталог src содержит исходный код на C++.
    • Каталог all-cryptos содержит исходный код для показа списка всех доступых криптопровайдеров на устройстве.
    • Каталог certX509 содержит исходный код для чтения сертификатов X509 из пользовательского файла или системного хранилища.
    • Каталог common содержит общий между всеми директориями исходный код.
    • Каталог mac содержит исходный код для аутентификации сообщений.
    • Каталог md5crypt содержит исходный код для шифрования строки с использованием алгоритма md5crypt.
    • Каталог own-cryptoprovider содержит исходный код для добавления пользовательского криптопровайдера в QCA.
    • Каталог publickey содержит исходный код для шифрования и расшифрования с использованием закрытого ключа.
    • Каталог random содержит исходный код для генерации случайных чисел.
    • Каталог request-handler содержит исходный код для обработчика запросов на стороне клиента.
    • Каталог string-coding содержит исходный код для кодирования и декодирования строки.
    • Каталог string-encrypt содержит исходный код для шифрования строки.
    • Каталог string-hash содержит исходный код для хеширования строки.
    • Файл main.cpp является точкой входа в приложение.
  • Каталог translations содержит файлы перевода интерфейса пользователя.
  • Файл ru.auroraos.Cryptographic.desktop определяет отображение и параметры запуска приложения.

Правила использования и участие в разработке

Исходный код проекта предоставляется по лицензии, которая позволяет использовать его в сторонних приложениях.

Лицензионное соглашение с участником Соглашение участника регламентирует права, предоставляемые участниками компании «Открытая Мобильная Платформа».

Информация об участниках указана в файле AUTHORS.

Кодекс поведения — это действующий набор правил компании «Открытая Мобильная Платформа», который информирует об ожиданиях по взаимодействию между членами сообщества при общении и работе над проектами.

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.