Релиз библиотеки libssh 0.6.0
После двух с половиной лет разработки увидел свет релиз библиотеки libssh 0.6.0, предназначенной для интеграции поддержки SSH в программы на языке Си. Библиотека позволяет выполнять программы на удаленном сервере, копировать файлы через защищенное соединение, обеспечивать работу приложения в роли SSH-сервера. Поддерживаются такие механизмы, как scp и sftp. Исходные тексты библиотеки распространяются под лицензией LGPL. Основные новшества:
Новый серверный API на основе callback-вызовов; Поддержка алгоритма формирования цифровых подписей ECDSA (Elliptic Curve Digital Signature Algorithm) при сборке с OpenSSL и методов обмена ключами curve25519-sha256@libssh.org. Новый API для управления открытыми ключами; Поддержка GSSAPI (Kerberos), протестированная с FreeIPA и gssproxy. Для управления добавлены опции GSSAPIServerIdentity, GSSAPIClientIdentity, GSSAPIDelegateCredentials; Новый API для аутентификации пользователей. Новые функции ssh_get_publickey_hash () и ssh_get_poll_flags (); Поддержка алгоритма ECDH (Elliptic Curve Diffie Hellman); Расширены возможности системы ведения логов; Поддержка перенаправления SSH-agent; Поддержка инициированая повторного обмена ключами (key-reexchange). Расширено число unit-тестов. Особенности Libssh (не путать с проектом libssh2, который близок по функциональности, но распространяется в рамках лицензии BSD):
Поддержка серверных и клиентских функций; Поддержка режимов шифрования AES-128, AES-192, AES-256, Blowfish, 3DES в CBC, AES в режиме CTR, ECDH (Elliptic Curve Diffie Hellman); Поддержка протоколов SSH1 и SSH2; Поддержка расширений протокола, специфичных для OpenSSH; Возможность работы с серверами публичных ключей RSA и DSS; Поддержка Kerberos (GSSAPI); Поддержка сжатия данных; Работа совместно с ssh-agent и возможность организации работы нескольких сеансов в рамках одного соединения; Поддержка сборка с использованием внешних библиотек libcrypto (из OpenSSL) и libgcrypt (GCrypt).
© OpenNet