Криптопровайдер КриптоПро Java CSP
КриптоПро Java CSP - это Java модуль, выполняющий все криптографические операции используя КриптоПро CSP. Криптопровайдер КриптоПро JCSP реализует российские криптографические стандарты, разработан в соответствии со спецификацией JCA (Java Cryptography Architecture), сочетает в себе высокую скорость нативного кода с удобством разработки и использования JCE интерфейсов в Java приложениях.
Техническое описание криптопровайдера КриптоПро Java CSP
КриптоПро Java CSP - средство криптографической защиты информации, реализующее российские криптографические стандарты, разработанное в соответствии со спецификацией JCA (Java Cryptography Architecture).
КриптоПро Java CSP представляет собой Java модуль который выполняет все криптографические операции используя КриптоПро CSP. Данный криптопровайдер сочетает в себе высокую скорость нативного кода с удобством разработки и использования JCE интерфейсов в Java приложениях.
Интеграция КриптоПро Java CSP с архитектурой Java позволяет использовать стандартные процедуры, такие как создание и проверка ЭЦП (в том числе XMLdsig, CAdES, XAdES) , шифрование, генерацию ключей, вычисление кодов аутентификации (Message Authentication Code - MAC) в JavaTM Cryptography Extension (JCE) в соответствии со спецификациями JavaTM Cryptography Extension (JCE) на различных операционных системах и аппаратных платформах.
Реализация API КриптоПро Java CSP совместима с API КриптоПро JCP 2.0. Для работы КриптоПро Java CSP требуется установить криптопровайдер КриптоПро CSP версии 5.0.
Назначение:
КриптоПро Java CSP предназначен для:
- авторизации и обеспечения юридической значимости электронных документов при обмене ими между пользователями, посредством использования процедур формирования и проверки электронной цифровой подписи (ЭЦП) в соответствии с отечественными стандартами ГОСТ Р 34.11-94/ГОСТ Р 34.11-2012 и ГОСТ Р 34.10-2001/ГОСТ Р 34.10-2012;
- обеспечения конфиденциальности и контроля целостности информации посредством ее шифрования и имитозащиты, в соответствии с ГОСТ 28147-89 и ГОСТ 34.12-2015;
- обеспечение аутентичности, конфиденциальности и имитозащиты соединений TLS;
- контроля целостности, системного и прикладного программного обеспечения для его защиты от несанкционированного изменения или от нарушения правильности функционирования;
- управления ключевыми элементами системы в соответствии с регламентом средств защиты.
Реализуемые алгоритмы:
StandardПоддерживаемые КриптоПро Java CSP алгоритмы зависят от версии используемого КриптоПро CSP, в частности, только в КриптоПро CSP версии 4.0 и выше реализованы алгоритмы стандарта ГОСТ Р 34.10-2012.
Алгоритм выработки значения хэш-функции реализован в соответствии с требованиями ГОСТ Р 34.11 94 "Информационная технология. Криптографическая защита информации. Функция хэширования" и ГОСТ Р 34.11 2012 "Информационная технология. Криптографическая защита информации. Функция хэширования".
Алгоритмы формирования и проверки ЭЦП реализованы в соответствии с требованиями:
- ГОСТ Р 34.10-2001 "Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи";
- ГОСТ Р 34.10-2012 "Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи".
Алгоритм зашифрования/расшифрования данных и вычисление имитовставки реализованы в соответствии с требованиями ГОСТ 28147-89 "Системы обработки информации. Защита криптографическая" и ГОСТ 34.12-2015 "Информационная технология. Криптографическая защита информации".
При генерации закрытых и открытых ключей обеспечена возможность генерации с различными параметрами в соответствии с ГОСТ Р 34.10-2001/ГОСТ Р 34.10-2012.
При выработке значения хэш-функции и шифровании обеспечена возможность использования различных узлов замены в соответствии с ГОСТ Р 34.11-94/ГОСТ Р 34.11-2012 и ГОСТ 28147-89.
Провайдер Java CSP RSA (требует установки компонента провайдера КриптоПро CSP 5.0 с реализацией иностранных алгоритмов: Crypto-Pro Enhanced RSA and AES CSP) также поддерживает зарубежные алгоритмы: SHA-1, SHA-2, AES (128/192/256), 3DES, 3DES-112, DES, RSA.
Поддерживаемые платформы:
КриптоПро Java CSP разработан в соответствии с требованиями интерфейса JCA и может быть использован в операционных системах с установленной виртуальной машиной Java версии 7 и выше или Google Android (версии 7.0 и выше).
Поддерживаемые операционные системы:
- Microsoft Windows (win32/x64)
- Linux (x86/x64)
- Android (ARM7/ARMv8-A, x86, x86_64)
- AIX 7 (ppc/ppc64)
- Mac OS
Системные требования:
КриптоПро Java CSP функционирует в следующем окружении:
- виртуальная машина Java версии 7 (удовлетворяющая спецификации Java 7 ™ Virtual Machine) и выше или виртуальная машина операционной системы Google Android (ART) (версии 7.0 и выше);
- предустановленный провайдер КриптоПро CSP версии 5.0.
- Необходимость лицензии на КриптоПро Java CSP зависит от операционной системы. Для клиентской ОС лицензия КриптоПро Java CSP не требуется.
Основные характеристики:
Длина ключей электронной цифровой подписи (ГОСТ Р 34.10-2001):
- закрытый ключ - 256 бит;
- открытый ключ - 512 бит при использовании алгоритма ГОСТ Р 34.10-2001;
Длина ключей электронной цифровой подписи (ГОСТ Р 34.10-2012, 256 бит):
- закрытый ключ - 256 бит;
- открытый ключ - 512 бит при использовании алгоритма ГОСТ Р 34.10-2012, 256 бит;
Длина ключей электронной цифровой подписи (ГОСТ Р 34.10-2012, 512 бит):
- закрытый ключ - 512 бит;
- открытый ключ - 1024 бит при использовании алгоритма ГОСТ Р 34.10-2012, 512 бит;
Длина ключей, используемых при шифровании:
- закрытый ключ - 256 бит на базе алгоритма ГОСТ Р 34.10-2001;
- закрытый ключ - 256 бит на базе алгоритма ГОСТ Р 34.10-2012, 256 бит;
- закрытый ключ - 512 бит на базе алгоритма ГОСТ Р 34.10-2012, 512 бит;
- открытый ключ - 512 бит на базе алгоритма ГОСТ Р 34.10-2001;
- открытый ключ - 512 бит на базе алгоритма ГОСТ Р 34.10-2012, 256 бит;
- открытый ключ - 1024 бит на базе алгоритма ГОСТ Р 34.10-2012, 512 бит;
- симметричный ключ - 256 бит;