GmSSL
GmSSL — это отечественная библиотека с открытым исходным кодом для разработки криптографических приложений, созданная в Пекинском университете. Библиотека реализует полный набор функций для работы с национальными алгоритмами шифрования, стандартами и протоколами безопасности связи. Она поддерживает основные операционные системы, включая мобильные, а также различные процессоры. GmSSL работает с такими национальными криптографическими устройствами, как ключи и смарт-карты. Библиотека предоставляет широкий спектр инструментов командной строки и интерфейсов программирования на различных языках.
Основные характеристики:
Загрузка
Основная ветка GmSSL называется GmSSL-3.1.1. Эта версия улучшает кроссплатформенные возможности, особенно поддержку Windows/Visual Studio. Разработчикам, работающим с этими платформами, рекомендуется использовать эту версию.
Компиляция и установка
Для компиляции GmSSL используется система CMake. После загрузки исходного кода его необходимо распаковать и перейти в каталог с исходными файлами. Затем нужно выполнить следующие команды:
mkdir build
cd build
cmake ..
make
make test
sudo make install
После выполнения команды make install GmSSL установит команду gmssl в каталоге по умолчанию, создаст каталог gmssl в каталоге заголовков и установит библиотеки libgmssl.a и libgmssl.so в каталоге библиотек.
Среда Visual Studio
В командной строке Visual Studio выполните следующие команды:
mkdir build
cd build
cmake .. -G "NMake Makefiles" -DWIN32=ON
nmake
Функции
Алгоритмы шифрования
Сертификаты и цифровые конверты
Протоколы SSL
Интерфейсы для разных языков
GmSSL предлагает интерфейсы для различных языков программирования через свои подпроекты:
Поддержка национальных криптографических устройств
GmSSL внутренне поддерживает национальные криптографические устройства, такие как SDF (обычно PCI-E или серверные карты) и SKF (обычно USB-ключи). Тестированные модели включают:
Разработчики также могут использовать подпроект SoftSDF для разработки и тестирования, а затем заменить его на аппаратное обеспечение при развёртывании.
Совместимость с OpenSSL
Версия GmSSL 3.0 переписала весь код и изменила существующий API, поэтому текущая версия GmSSL несовместима с OpenSSL. Однако существует подпроект OpenSSL-Compatibility-Layer, который предоставляет слой совместимости с OpenSSL, позволяя приложениям, таким как Nginx, использовать функции GmSSL. test_sm3_speed: 273,551034 Мбайт в секунду.
sm2_sign_ctx speed (ENABLE_SM2_AMD64): 4096 подписей за 0,036916 секунд, 110 954,599632 подписи в секунду.
sm2_sign_ctx speed: 4096 подписей за 0,236611 секунд, 17 311,114023 подписи в секунду.
test_sm2_encrypt_ctx_speed (ENABLE_SM2_AMD64): 1 7879,592122 шифрования в секунду.
test_sm2_encrypt_ctx_speed: 1869,314131 шифрования в секунду.
test_sm9_z256_pairing_speed: 173 спаривания в секунду.
MacBook Air M2 2022. Apple M2. 16 GB. Sonoma 14.5.
speed_sm4_encrypt: 143,180578 Мбайт в секунду.
speed_sm4_encrypt_blocks: 190,928509 Мбайт в секунду.
speed_sm4_cbc_encrypt_blocks: 148,519447 Мбайт в секунду.
speed_sm4_cbc_decrypt_blocks: 187,305378 Мбайт в секунду.
speed_sm4_ctr_encrypt_blocks: 191,195450 Мбайт в секунду.
speed_sm4_ctr32_encrypt_blocks: 191,522725 Мбайт в секунду.
speed_zuc_generate_keystream: 344,604781 Мбайт в секунду.
speed_zuc_encrypt: 344,723575 Мбайт в секунду.
test_sm3_speed: 327,298762 Мбайт в секунду.
sm2_sign_ctx speed: 4096 подписей за 0,290709 секунд, 14 089,691066 подписи в секунду.
test_sm2_encrypt_ctx_speed: 1518,575861 шифрования в секунду.
test_sm9_z256_pairing_speed: 141 спаривание в секунду.
С версии 3.1.1
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )