Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Easy Ecc Laravel Package

paragonie/easy-ecc

Easy-ECC is a hardened, easy-to-use PHP wrapper around paragonie/phpecc for elliptic-curve crypto. Generate keypairs, sign/verify messages, and perform ECDH key exchange with Curve25519 or ECDSA curves (K256, P256, P384, P521).

View on GitHub
Deep Wiki
Context7
v1.3.1

Fixed PHP 8.4+ deprecation warnings with X25519.

Full Changelog: https://github.com/paragonie/easy-ecc/compare/v1.3.0...v1.3.1

v1.3.0
v1.2.0
  • #10 / #11 - Use the corresponding hash function for hedged randomness, rather than relying on SHA384 everywhere.
v1.1.2

Updated dependencies

v1.1.1
  • Increased minimum version for paragonie/ecc to 2.2.0.
v1.1.0
  • Updated minimum version of phpecc to v2.1.0
v1.0.2

Replaced dependency on phpecc with PIE's fork. Recommended reading.

v1.0.0
  • Added support for NIST P-521 (secp521r1)
  • #5 - Encryption enhancements
    • Added seal() / unseal() to the Defuse integration
    • Created interface ParagonIE\EasyECC\EncryptionInterface (which the Defuse integration now implements) for extensions
  • Test on PHP 8.1
  • Expanded unit test coverage
v0.5.0

Provides constant-time algorithms for ECC key generation and signing. See #4 for more info.

v0.4.0
  • Throws an exception if you attempt to decode a compressed public key with the wrong curve.
  • Re-enabled sodium tests.
  • Moved EasyECC exceptions to a new base class.
v0.3.0
v0.2.0
  • Fixed a bug with the libsodium integration causing out-of-memory errors.
v0.1.0

Introducing Easy-ECC, a usability wrapper for phpecc/phpecc.

I should probably have a big asterisk on that statement: In its default configuration, it uses libsodium instead.

$ecc = new ParagonIE\EasyECC\EasyECC(); // libsodium
$ecc = new ParagonIE\EasyECC\EasyECC('K256'); // phpecc/phpecc with secp256k1 + SHA256
$ecc = new ParagonIE\EasyECC\EasyECC('P256'); // phpecc/phpecc with NIST P-256 + SHA256
$ecc = new ParagonIE\EasyECC\EasyECC('P384'); // phpecc/phpecc with NIST P-384 + SHA384

This isn't merely an easy-to-use interface, it also is secure-by-default. For example, if you're not using libsodium and want to sign a message, Easy-ECC opts for RFC 6979 (deterministic ECDSA) instead of risking k-value reuse/bias.

Furthermore, this includes an integration with defuse/php-encryption for public-key authenticated encryption.

$defuse = new ParagonIE\EasyECC\Integration\Defuse($ecc);
$ctxt = $defuse->asymmetricEncrypt($msg, $sk, $pk);
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor