ksanzhik / phpseclib
PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.
Requires
- php: >=7.4
- paragonie/constant_time_encoding: ^1|^2|^3
- paragonie/random_compat: ^1.4|^2.0|^9.99.99
Requires (Dev)
- ext-xml: *
- brianium/paratest: ^6.6
- friendsofphp/php-cs-fixer: ^3.12
- php-parallel-lint/php-parallel-lint: ^1.3
- squizlabs/php_codesniffer: ^3.7
- vimeo/psalm: ^4.29
Suggests
- ext-dom: Install the DOM extension to load XML formatted public keys.
- ext-gmp: Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.
- ext-libsodium: SSH2/SFTP can make use of some algorithms provided by the libsodium-php extension.
- ext-openssl: Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations.
This package is auto-updated.
Last update: 2025-07-23 10:26:16 UTC
README
Supporting phpseclib
- Become a backer or sponsor on Patreon
- One-time donation via PayPal or crypto-currencies
- Subscribe to Tidelift
Introduction
MIT-licensed pure-PHP implementations of the following:
SSH-2, SFTP, X.509, an arbitrary-precision integer arithmetic library, Ed25519 / Ed449 / Curve25519 / Curve449, ECDSA / ECDH (with support for 66 curves), RSA (PKCS#1 v2.2 compliant), DSA / DH, DES / 3DES / RC4 / Rijndael / AES / Blowfish / Twofish / Salsa20 / ChaCha20, GCM / Poly1305
Documentation
- Documentation / Manual
- API Documentation (generated by Doctum)
Branches
master
- Development Branch
- Unstable API
- Do not use in production
3.0
- Long term support (LTS) release
- Major expansion of cryptographic primitives
- Minimum PHP version: 5.6.1
- PSR-4 autoloading with namespace rooted at
\phpseclib3
- Install via Composer:
composer require phpseclib/phpseclib:~3.0
2.0
- Long term support (LTS) release
- Modernized version of 1.0
- Minimum PHP version: 5.3.3
- PSR-4 autoloading with namespace rooted at
\phpseclib
- Install via Composer:
composer require phpseclib/phpseclib:~2.0
1.0
- Long term support (LTS) release
- PHP4 compatible
- Composer compatible (PSR-0 autoloading)
- Install using Composer:
composer require phpseclib/phpseclib:~1.0
- Download 1.0.23 as ZIP
Security contact information
To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure.
Support
Need Support?
- Checkout Questions and Answers on Stack Overflow
- Create a Support Ticket on GitHub
- Browse the Support Forum (no longer in use)
Special Thanks
Special Thanks to our $50+ sponsors!:
- Allan Simon
- ChargeOver
Contributing
-
Fork the Project
-
Ensure you have Composer installed (see Composer Download Instructions)
-
Install Development Dependencies
composer install
-
Create a Feature Branch
-
Run continuous integration checks:
composer run-script all-quality-tools
-
Send us a Pull Request