1# phpseclib - PHP Secure Communications Library 2 3[](https://github.com/phpseclib/phpseclib) 4 5## Supporting phpseclib 6 7- [Become a backer or sponsor on Patreon](https://www.patreon.com/phpseclib) 8- [One-time donation via PayPal or crypto-currencies](http://sourceforge.net/donate/index.php?group_id=198487) 9- [Subscribe to Tidelift](https://tidelift.com/subscription/pkg/packagist-phpseclib-phpseclib?utm_source=packagist-phpseclib-phpseclib&utm_medium=referral&utm_campaign=readme) 10 11## Introduction 12 13MIT-licensed pure-PHP implementations of the following: 14 15SSH-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 16 17* [Browse Git](https://github.com/phpseclib/phpseclib) 18 19## Documentation 20 21* [Documentation / Manual](https://phpseclib.com/) 22* [API Documentation](https://api.phpseclib.com/3.0/) (generated by Doctum) 23 24## Branches 25 26### master 27 28* Development Branch 29* Unstable API 30* Do not use in production 31 32### 3.0 33 34* Long term support (LTS) release 35* Major expansion of cryptographic primitives 36* Minimum PHP version: 5.6.1 37* PSR-4 autoloading with namespace rooted at `\phpseclib3` 38* Install via Composer: `composer require phpseclib/phpseclib:~3.0` 39 40### 2.0 41 42* Long term support (LTS) release 43* Modernized version of 1.0 44* Minimum PHP version: 5.3.3 45* PSR-4 autoloading with namespace rooted at `\phpseclib` 46* Install via Composer: `composer require phpseclib/phpseclib:~2.0` 47 48### 1.0 49 50* Long term support (LTS) release 51* PHP4 compatible 52* Composer compatible (PSR-0 autoloading) 53* Install using Composer: `composer require phpseclib/phpseclib:~1.0` 54* Install using PEAR: See [phpseclib PEAR Channel Documentation](http://phpseclib.sourceforge.net/pear.htm) 55* [Download 1.0.20 as ZIP](http://sourceforge.net/projects/phpseclib/files/phpseclib1.0.20.zip/download) 56 57## Security contact information 58 59To report a security vulnerability, please use the [Tidelift security contact](https://tidelift.com/security). Tidelift will coordinate the fix and disclosure. 60 61## Support 62 63Need Support? 64 65* [Checkout Questions and Answers on Stack Overflow](http://stackoverflow.com/questions/tagged/phpseclib) 66* [Create a Support Ticket on GitHub](https://github.com/phpseclib/phpseclib/issues/new) 67* [Browse the Support Forum](http://www.frostjedi.com/phpbb/viewforum.php?f=46) (no longer in use) 68 69## Special Thanks 70 71Special Thanks to our $50+ sponsors!: 72 73- Allan Simon 74- [ChargeOver](https://chargeover.com/) 75 76## Contributing 77 781. Fork the Project 79 802. Ensure you have Composer installed (see [Composer Download Instructions](https://getcomposer.org/download/)) 81 823. Install Development Dependencies 83 ```sh 84 composer install 85 ``` 86 874. Create a Feature Branch 88 895. Run continuous integration checks: 90 ```sh 91 composer global require php:^8.1 squizlabs/php_codesniffer friendsofphp/php-cs-fixer vimeo/psalm 92 phpcs --standard=build/php_codesniffer.xml 93 php-cs-fixer fix --config=build/php-cs-fixer.php --diff --dry-run --using-cache=no 94 psalm --config=build/psalm.xml --no-cache --long-progress --report-show-info=false --output-format=text 95 vendor/bin/phpunit --verbose --configuration tests/phpunit.xml 96 ``` 97 986. Send us a Pull Request 99