zbateson/mmp-crypt

Cryptographic support for zbateson/mail-mime-parser (encryption, decryption, signing, verification)

Maintainers

👁 zbateson

Package info

github.com/zbateson/mmp-crypt

pkg:composer/zbateson/mmp-crypt

Statistics

Installs: 1 269

Dependents: 2

Suggesters: 0

Stars: 1

Open Issues: 1

1.0.0 2026-02-13 18:46 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

BSD-2-Clause 1dc89f1ae4ecece98f321e9cb2a0bb30e8651519

  • Zaahid Bateson

emailmimecryptographyencryptionPGPsmimemail-mime-parser

This package is auto-updated.

Last update: 2026-06-13 19:35:25 UTC


README

Cryptographic support for zbateson/mail-mime-parser -- provides base classes and interfaces for encryption, decryption, signing, and verification of MIME email messages.

👁 Total Downloads
👁 Latest Stable Version

composer require zbateson/mmp-crypt

Sponsors

👁 SecuMailer

A huge thank you to all my sponsors. <3

If this project's helped you, please consider sponsoring me.

Requirements

PHP 8.1 or newer, and zbateson/mail-mime-parser 4.x.

Description

This is the base package for mail-mime-parser's cryptographic plugin system. It provides:

  • IMimeCrypt -- interface for encryption/decryption/signing/verification implementations
  • AbstractMimeCrypt -- base class implementing IMimeCrypt with stream handling
  • EncryptedMessage / EncryptedMimePart -- message/part classes that transparently expose decrypted content via getStream(), with getEncryptedStream() for accessing the original encrypted data

On its own, this package doesn't perform any cryptographic operations. Install an implementation package:

Usage

use ZBateson\MailMimeParser\Message;

// Parsing an encrypted message automatically uses the registered
// IMimeCrypt implementation to decrypt it.
$message = Message::from($rawEmail, false);

// If the message was encrypted, it will be an EncryptedMessage instance.
// getStream() / getTextContent() / etc. return decrypted content by default.
echo $message->getTextContent();

// Access the original encrypted stream if needed
if ($message instanceof \ZBateson\MmpCrypt\EncryptedMessage) {
 $encryptedStream = $message->getEncryptedStream();
}

License

BSD licensed - please see license agreement.