Библиотека для работы с шифрование в Oscript

Библиотека crypto для шифрования в OScript

Stars Release Открытый чат проекта https://gitter.im/EvilBeaver/oscript-library

Build Status Coverage Status

Возможности

Короткое название crypto

Данная библиотека предназначена для выполнения шифрования в OScript. Реализует

  • модуль:
    • Шифрование - основной модуль содержит доступные алгоритмы шифрования (реализованы HMAC)
  • классы:
    • JWT - реализация токенов JWT c шифрованием HMAC и алгоритмом сумм HS256

Требования

  • OScript >= 1.0.21

Установка

Для установки необходимо:

  • Скачать файл crypto*.ospx из раздела releases
  • Воспользоваться командой:
opm install -f <ПутьКФайлу>

или установить с хаба пакетов

opm install crypto

Пример работы

  • Создание токена JWT

	jwt = новый jwt;
	КлючШифрования = "secret";
	ДанныеКлюча = Новый Структура;
	ДанныеКлюча.Вставить("sub", "1234567890");
	ДанныеКлюча.Вставить("name", "John Doe");
	ДанныеКлюча.Вставить("admin", True);
	
	Токен = jwt.Кодировать(КлючШифрования, ДанныеКлюча);
	
	РасшифрованныеДанные = jwt.Декодировать(Токен, КлючШифрования);

	Ожидаем.Что(РасшифрованныеДанные.sub, "Расшифрованные данные sub должны совпадать").Равно(ДанныеКлюча.sub);
	Ожидаем.Что(РасшифрованныеДанные.name, "Расшифрованные данные name должны совпадать").Равно(ДанныеКлюча.name);
	Ожидаем.Что(РасшифрованныеДанные.admin, "Расшифрованные данные sub должны совпадать").Равно(ДанныеКлюча.admin);

  • Шифрование по алгоритму HMAC

    РезультатШифрования = Шифрование.HMAC(
                    GetBinaryDataFromString("Секретный ключ"),
                    GetBinaryDataFromString("Данные для шифрования"),
                    HashFunction.SHA256);

Публичный интерфейс

Документация публичного интерфейса (в разработке)

Доработка

Доработка проводится по git-flow. Жду ваших PR.

Лицензия

Смотри файл LICENSE.

Доступные версии пакета

0.1.0
Изменен: 18.01.2019 09:07:31
В разработке

Репозиторий

https://github.com/oscript-library/crypto

Актуальная версия

crypto-0.1.0