Skip to content

build(deps): bump phpseclib/phpseclib from 3.0.56 to 4.0.1 - #923

Merged
blaipr merged 2 commits into
mainfrom
dependabot/composer/phpseclib/phpseclib-4.0.1
Sep 17, 2026
Merged

blaipr merged 2 commits into
mainfrom
dependabot/composer/phpseclib/phpseclib-4.0.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 13, 2026

Copy link
Copy Markdown
Contributor

Bumps phpseclib/phpseclib from 3.0.56 to 4.0.1.

Release notes

Sourced from phpseclib/phpseclib's releases.

4.0.1

4.0.0

  • split CSR / CRL / SPKAC out from X509
  • add PFX / CMS support
  • implement lazy loading for ASN1
  • SSH2/SFTP: throw exceptions instead of returning false
  • bump minimum required PHP version to 8.1.0
  • namespace changed from \phpseclib3 to \phpseclib4 to facilitate a yet to be written phpseclib 3 shim (phpseclib3_compat)

3.0.57

  • ASN1: fix tag matching for tagged CHOICE children (#2158)
  • RSA: fix for openssl_verify calls that error out (#2161)
  • RSA/PublicKey: implement salt length discovery for PSS verification (#2164)
  • BigInteger/PHP: don't return the divisor as the common residue (#2165)
  • Curve25519/448: improve timing attack resistance (CVE-2026-84308)
Changelog

Sourced from phpseclib/phpseclib's changelog.

4.0.1 - 2026-08-26

4.0.0 - 2026-08-22

  • split CSR / CRL / SPKAC out from X509
  • add PFX / CMS support
  • implement lazy loading for ASN1
  • SSH2/SFTP: throw exceptions instead of returning false
  • bump minimum required PHP version to 8.1.0
  • namespace changed from \phpseclib3 to \phpseclib4 to facilitate a yet to be written phpseclib 3 shim (phpseclib3_compat)

3.0.57 - 2026-08-26

  • ASN1: fix tag matching for tagged CHOICE children (#2158)
  • RSA: fix for openssl_verify calls that error out (#2161)
  • RSA/PublicKey: implement salt length discovery for PSS verification (#2164)
  • BigInteger/PHP: don't return the divisor as the common residue (#2165)
  • Curve25519/448: improve timing attack resistance (CVE-2026-84308)
Commits
  • bb7b959 Merge branch '3.0' into 4.0
  • d17e0dd CHANGELOG: add 3.0.57 release
  • 99b8775 psalm fixes
  • 6b887bb Merge branch '4.0' of github.com:phpseclib/phpseclib into 4.0
  • a8bac78 Merge branch '3.0' into 4.0
  • 3a43a75 EC: implement blinding for montgomery curve multiplication
  • 6d4805f DH: add tests for all-zero shared secrets with Curve25519 / Curve448
  • 86669f0 CHANGELOG: add 4.0.0 release
  • fb56bc5 EC/Curve{25519,448} enhancements
  • 95082b6 Merge branch '3.0' into 4.0
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [phpseclib/phpseclib](https://github.com/phpseclib/phpseclib) from 3.0.56 to 4.0.1.
- [Release notes](https://github.com/phpseclib/phpseclib/releases)
- [Changelog](https://github.com/phpseclib/phpseclib/blob/master/CHANGELOG.md)
- [Commits](phpseclib/phpseclib@3.0.56...4.0.1)

---
updated-dependencies:
- dependency-name: phpseclib/phpseclib
  dependency-version: 4.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file php Pull requests that update php code labels Sep 13, 2026
phpseclib 4 moved its namespace from phpseclib3\ to phpseclib4\, so the import no longer
resolved and PHPStan reported RSA, its PrivateKey and ENCRYPTION_PKCS1 all unknown — six of
eight checks failed on the bump alone.

The API is unchanged: createKey(), loadPrivateKey(), withPadding() and ENCRYPTION_PKCS1 are
all still there, verified against the installed package. Everything in CryptPKI resolves
through the one import, so the change is that line in the two files that name the library,
plus a comment that said 'phpseclib3' about behaviour that was never version-specific.

CryptPKI decrypts the password the browser encrypts with JSEncrypt, so a silent change in
padding or key handling would not fail a unit test — it would fail sign-in. Checked directly
against the new library: a PKCS#1 v1.5 round trip through createKey -> loadPublicKey/encrypt
-> loadPrivateKey/decrypt returns the plaintext.
@blaipr
blaipr merged commit 7d5df2e into main Sep 17, 2026
8 checks passed
@blaipr
blaipr deleted the dependabot/composer/phpseclib/phpseclib-4.0.1 branch September 17, 2026 00:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file php Pull requests that update php code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant