Robert 6fc9a98d42 Reorganize get_binary_packet to fetch entire payload before decrypt processing, buffering for graceful handling across timeouts.
Remove skip filter parameter from method signatures, now technically defunct as all requests through get_binary_packet incorporate the same timeout during blocking IO calls.
Introduce InvalidPacketLength exception and employ to detect OpenSSL 0.9.8e flaw at higher logical level than binary packet processing.
Removing case logic in binary packet filtering for channel message types, made extraneous by use of get_channel_packet, and possibly leading to discarded data packets.
Reset connection properties during disconnect. Rework callers of reset_connection to use disconnect_helper.
Bugfix for no encyrption algorithms negotiated with server.
2024-05-28 11:23:48 -04:00
2023-02-05 17:33:16 -06:00
2022-03-08 06:08:01 -06:00
2022-04-10 09:32:45 -05:00
2022-03-15 18:49:38 -05:00
2022-06-03 08:20:47 -05:00
2024-02-20 08:59:58 -06:00
2024-03-02 20:14:58 -06:00
2019-07-02 06:42:17 -05:00
2024-02-25 23:12:56 -06:00

phpseclib - PHP Secure Communications Library

CI Status

Supporting phpseclib

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

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?

Special Thanks

Special Thanks to our $50+ sponsors!:

Contributing

  1. Fork the Project

  2. Ensure you have Composer installed (see Composer Download Instructions)

  3. Install Development Dependencies

    composer install
    
  4. Create a Feature Branch

  5. Run continuous integration checks:

    composer global require php:^8.1 squizlabs/php_codesniffer friendsofphp/php-cs-fixer vimeo/psalm
    phpcs --standard=build/php_codesniffer.xml
    php-cs-fixer fix --config=build/php-cs-fixer.php --diff --dry-run --using-cache=no
    psalm --config=build/psalm.xml --no-cache --long-progress --report-show-info=false --output-format=text
    vendor/bin/phpunit --verbose --configuration tests/phpunit.xml
    
  6. Send us a Pull Request

Description
Languages
PHP 100%