patrickfroch/cryptography

Es handelt sich um eine Erweiterung für das Open Source CMS Contao, die es ermöglicht, Werte zu ver- und entschlüsseln.

Maintainers

Package info

github.com/patrickfroch/cryptography

Documentation

Type:contao-bundle

pkg:composer/patrickfroch/cryptography

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

2.1.0 2026-04-28 06:29 UTC

This package is auto-updated.

Last update: 2026-04-28 08:11:05 UTC


README

PHP >= 8.1 Contao >= 4.13 PHPStan Level 9

Beschreibung

Bei dieser Software handelt es sich um eine Erweiterung für das Open Source CMS Contao, mit der Werte ver- und entschlüsselt werden können.

Autor

Patrick Froch hallo@patrick-froch.de

Lizenz

Die Software wird unter LGPL veröffentlicht. Details sind in der Datei LICENSE zu finden.

Voraussetzungen

  • php: ~8.1
  • contao/core-bundle: ~4.13|^5.0

Installation

Die Installation geschieht über den ContaoManager. Einfach nach esit/cryptography suchen und installieren. Aleternativ kann die Erweiterung mit folgendem Befehl über Composer installiert werden:

composer require esit/cryptography

Einrichtung

In die .env-Datei können zwei Werte eingetragen werden, das Passwort (CRYPTOGRAPHY_SECRECT) und die Verschlüsselungsmethode (CRYPTOGRAPHY_CIPHER). Ein Beispiel sieht so aus:

CRYPTOGRAPHY_SECRECT="bhjRHnqCpgjqW3w94t34FjLnXCWvrhpJqsvN7VNfH9qHPKsm"
CRYPTOGRAPHY_CIPHER="aes-256-cbc"

Werden die Werte nicht angegeben, müssen sie der Factory beim Erstellen des CryptographyHelper übergeben werden!

Verwendung

Der Helper kann einfach in eigene Klassen injected werden.

<?php
MyClass
{

    public function __construct(private CryptographyFactory $factory)
    {
    }

    public function myTest(): void
    {
        $value      = 'Mein geheimer Teststring!';

        // Verwendung der Werte aus der .env Datei.
        $helper     = $factory->createCryptographyHelper();
        $encrypted  = $this->cryptoHelper->encrypt($value);
        $decrypted  = $this->cryptoHelper->decrypt($encrypted);

        // Verwendung der angegebenen Werte.
        $helper     = $factory->createCryptographyHelper('password', 'aes-256-cbc');
        $encrypted  = $this->cryptoHelper->encrypt($value);
        $decrypted  = $this->cryptoHelper->decrypt($encrypted);

        // Verwendung eines abweichenden Passworts.
        $encrypted  = $this->cryptoHelper->encrypt($value, 'newPassword');
        $decrypted  = $this->cryptoHelper->decrypt($encrypted, 'newPassword');
    }
}

Wird der CryptographyHelper direkt injected, müssen die Einstellunge in der .env Datei angegeben werden! Dieser Weg ist aber veraltet. Es dringend empfohlen, die Factory zu verwenden.

Getestete Versionen

Die Erweiterung wurde erfolgreich mit folgenden Kombinationen aus PHP und Contao getestet:

Contao PHP 8.2 PHP 8.3 PHP 8.4 PHP 8.5
Contao 4.13
Contao 5.0
Contao 5.1
Contao 5.2
Contao 5.3
Contao 5.4
Contao 5.5