Powermail Encryption for TYPO3

Automatyczne szyfrowanie danych formularzy w bazie danych — encryption at rest zgodny z RODO art. 32 

Ilustracja wtyczki Powermail Encryption for TYPO3 — automatyczne szyfrowanie danych formularzy zgodne z RODO art. 32.

Twoje formularze kontaktowe zbierają dane osobowe: imiona, emaile, telefony, treści zgłoszeń. Standardowy Powermail zapisuje je w bazie MySQL jako plaintext — czytelne dla każdego z dostępem do bazy. Nasza wtyczka zamienia każdy rekord w szyfrogram automatycznie, przy każdym zgłoszeniu, bez zmiany w pracy redaktora. 

Jedno polecenie Composer. Jeden klucz w .env. Całość działa w poniżej godziny. 

Co się stanie, gdy ktoś uzyska dostęp do Twojej bazy

Wyobraź sobie scenariusz: atakujący uzyskuje dostęp do bazy MySQL — przez SQL injection, skompromitowane hasło phpMyAdmin, atak na hosting lub kradzież backup’u. Dwa różne wyniki. 

Ikona wady – pomarańczowa smutna buźka przy ryzyku wycieku danych bez szyfrowania Powermail

Bez wtyczki - natychmiastowy wyciek

✗  Atakujący widzi pełne dane osobowe: Jan Kowalski, [email protected], 601-234-567 
✗  Treści zgłoszeń czytelne: reklamacje, pytania, dane medyczne, dane finansowe 
✗  Obowiązkowe zgłoszenie naruszenia do UODO w 72 godziny 
✗  Powiadomienie każdej osoby, której dane wyciekły 
✗  Ryzyko kary do 20 mln EUR lub 4% rocznego obrotu 
✗  Utrata zaufania klientów i reputacji firmy 

Ikona zalety – zielona uśmiechnięta buźka przy opisie szyfrowania danych w Powermail TYPO3

Z wtyczką - dane bezwartościowe

✓  Atakujący widzi: enc:v1:R3hJbkx5... — losowy ciąg znaków 
✓  Bez klucza szyfrowania dane są nie do odczytania 
✓  Utrata zaszyfrowanych danych może nie wymagać zgłoszenia (motyw 87 RODO, stanowisko EROD) 
✓  Szyfrowanie to „działanie minimalizujące szkodę” — łagodzi wymiar kary (art. 83 ust. 2 lit. c) 
✓  Reputacja firmy chroniona — wyciekły szyfrogramy, nie dane 
✓  DPO ma konkretny dowód działań prewencyjnych w dokumentacji 

Przed i po instalacji

Ikona wady – pomarańczowa smutna buźka przy zagrożeniach braku szyfrowania w Powermail TYPO3

Bez wtyczki

✗  Dane w bazie MySQL jako plaintext — czytelne dla każdego z dostępem 
✗  Backup bazy = pełna kopia danych osobowych w czytelnej formie 
✗  SQL injection = natychmiastowy wyciek danych 
✗  Brak szyfrowania at rest = brak spełnienia art. 32 ust. 1 lit. a) RODO 
✗  Środowiska dev/staging z kopią produkcyjnej bazy = dane krążą po laptopach developerów 

Ikona zalety – zielona uśmiechnięta buźka przy zaletach wtyczki Powermail Encryption dla TYPO3

Z wtyczką

✓  Każdy rekord zaszyfrowany algorytmem ChaCha20-Poly1305 (AEAD, RFC 8439) 
✓  Backup bazy zawiera wyłącznie szyfrogramy — bezwartościowe bez klucza 
✓  SQL injection = atakujący widzi enc:v1:... zamiast danych osobowych 
✓  Szyfrowanie at rest = silny argument zgodności z RODO art. 32 
✓  Dev/staging bezpieczne — nawet z kopią bazy, dane są zaszyfrowane 

Dla kogo jest wtyczka Powermail

  • Ikona firm enterprise — docelowy segment wdrożeń i szyfrowania danych Powermail w TYPO3.
    Firmy enterprise

    Lead generation, formularze ofertowe, reklamacje, zgłoszenia serwisowe — każdy formularz kontaktowy zbiera dane osobowe. Im więcej zgłoszeń w bazie, tym większe ryzyko przy wycieku. Szyfrowanie at rest to minimalne zabezpieczenie, którego powinien wymagać każdy DPO. 

  • Ikona sektora medycznego — ochrona danych pacjentów w formularzach TYPO3 zgodna z RODO.
    Sektor medyczny

    Formularze rejestracyjne pacjentów, ankiety zdrowotne, zgłoszenia do programu leczenia — to są dane wrażliwe (art. 9 RODO, szczególne kategorie danych). Kary za wyciek danych medycznych są najwyższe. Szyfrowanie nie jest opcją — to absolutny wymag. 

  • Ikona instytucji publicznych — sektor publiczny korzystający z szyfrowanych formularzy TYPO3 zgodnych z RODO.
    Sektor publiczny i instytucje

    Formularze kontaktowe urzędów, portale obywatelskie, zgłoszenia — podlegają ustawie o dostępności cyfrowej i RODO. Prezes UODO regularnie kontroluje sektor publiczny. Decyzja DKN.5131.8.2022 (kara za brak szyfrowania laptopa w urzędzie gminy) pokazuje, że brak szyfrowania to realne ryzyko.

  • Ikona NGO i fundacji — organizacje non-profit przetwarzające dane darczyńców w formularzach TYPO3.
    NGO i fundacje

    Dane beneficjentów, darczyńców, wolontariuszy — często osoby w trudnej sytuacji życiowej. Wyciek tych danych to nie tylko kara UODO, ale przede wszystkim krzywda realnych ludzi. Nasza wtyczka chroni ich dane za ułamek kosztu dedykowanego rozwiązania. 

  • Ikona e-commerce — sklepy internetowe potrzebujące szyfrowania danych zamówień w formularzach TYPO3.
    E-commerce

    Formularze zamówień custom (poza standardowym koszykiem), konfiguratory produktów, zapytania B2B — dane płatnicze i handlowe w plaintext to ryzyko, które klienci coraz częściej weryfikują przy wyborze dostawcy. 

  • Ikona przygotowania do audytu — każda firma zabezpieczająca dane formularzy przed audytem bezpieczeństwa TYPO3.
    Każda firma przygotowująca się do audytu

    Formularze zamówień custom (poza standardowym koszykiem), konfiguratory produktów, zapytania B2B — dane płatnicze i handlowe w plaintext to ryzyko, które klienci coraz częściej weryfikują przy wyborze dostawcy. 

Jak to działa? Proces w trzech krokach

  • Krok 1
    Instalacja

    Jedno polecenie Composer instaluje wtyczkę w Twoim projekcie TYPO3 13+. Generujesz 256-bitowy klucz szyfrowania i umieszczasz go w pliku .env na serwerze. Czyścisz cache TYPO3. Gotowe. 

  • Krok 2
    Automatyczne szyfrowanie

    Od tego momentu każde nowe zgłoszenie z formularza Powermail jest automatycznie szyfrowane w bazie. Temat, treść, imię nadawcy, email, każda odpowiedź — wszystko zamieniane w szyfrogram enc:v1:... Stare rekordy działają bez zmian — wtyczka szyfruje tylko nowe dane. 

  • Krok 3
    Przezroczyste odczytywanie

    Redaktor otwiera moduł Powermail w Backend — widzi czytelne dane jak zawsze. Eksportuje CSV — dane odszyfrowane. Klient klika link potwierdzający — działa. Emaile wychodzą w plaintext. Deszyfrowanie odbywa się automatycznie, w pamięci serwera, tylko na czas wyświetlania. 

Całość działa przez system eventów TYPO3 — bez modyfikacji klas Powermail (zero XCLASS, zero patchów). Aktualizacja Powermail nie psuje szyfrowania. 

Co dokładnie szyfrujemy

  • Ikona bazy danych — tabela wiadomości formularza Powermail w TYPO3
    Tabela tx_powermail_domain_model_mail

    •  subject — temat zgłoszenia 
    •  body — treść wiadomości 
    •  sender_name — imię i nazwisko nadawcy 
    •  sender_mail — adres email nadawcy 

  • Ikona koperty e-mail — tabela odpowiedzi formularza Powermail w TYPO3
    Tabela tx_powermail_domain_model_answer

    •  value — wartość każdej odpowiedzi z formularza: imię, telefon, treść, wybór z listy, JSON upload’ów, daty, checkboxy 

    Emaile wysyłane przez Powermail (do klienta i do firmy) pozostają plaintextem — szyfrowanie dotyczy wyłącznie kopii w bazie danych (encryption at rest). 

Specyfikacja techniczna

Kryptografia

•  Algorytm: ChaCha20-Poly1305 (IETF, RFC 8439) — uwierzytelnione szyfrowanie AEAD 
•  Klucz: 256-bit, base64, przechowywany w .env (POWERMAIL_ENC_KEY) 
•  Nonce: 96-bit, losowy na każdy zapis (random_bytes) — nawet identyczne dane dają różne szyfrogramy 
•  Integralność: tag Poly1305 — wykrywa każdą modyfikację szyfrogramu (art. 5 ust. 1 lit. f RODO) 
•  Implementacja: natywny libsodium PHP (PHP 7.2+, brak zewnętrznych zależności) 
•  Format zapisu: enc:v1:<base64(nonce ‖ ciphertext ‖ tag)> 

Dlaczego ChaCha20-Poly1305

•  Ten sam algorytm co Google Chrome (TLS 1.3), Cloudflare, WireGuard, Signal 
•  Szybszy niż AES-GCM na serwerach bez sprzętowego AES-NI (popularne VPS, kontenery Docker) 
•  Odporniejszy na ataki timing side-channel niż AES 
•  Brak katastrofalnego problemu nonce-reuse (w odróżnieniu od AES-GCM) 
•  Rekomendowany przez PHP core team jako domyślny algorytm w libsodium 

Architektura

•  Integracja wyłącznie przez system eventów TYPO3 — zero XCLASS, zero patchów, zero forków 
•  Aktualizacja Powermail nie wymaga modyfikacji wtyczki 
•  Automatyczne szyfrowanie przy zapisie, automatyczne deszyfrowanie przy odczycie 
•  Pokrywa: Backend, eksport CSV/XLSX, linki potwierdzające, finishery, custom kod Extbase 
•  Migracja stopniowa — prefix enc:v1: pozwala współistnieć zaszyfrowanym i niezaszyfrowanym rekordom 
•  Przygotowane na rotację klucza — prefix wersji (v1, v2...) pozwala na płynną zmianę algorytmu w przyszłości 

Wymagania systemowe

•  CMS TYPO3 13 lub nowszy 
•  Powermail (kompatybilna wersja dla TYPO3 13+) 
•  PHP 7.2+ z rozszerzeniem libsodium (domyślnie dostępne) 
•  Dostęp do pliku .env na serwerze produkcyjnym 

Co się zmienia w codziennej pracy redaktora

Nic. Dokładnie nic. Moduł Powermail w Backend wyświetla dane jak dotychczas. Eksporty CSV i XLSX zawierają czytelne dane. Emaile wysyłane są w plaintext. Linki potwierdzające działają. Finishery Powermail działają. 

Jedyna widoczna zmiana: ktoś oglądający tabelę bezpośrednio w phpMyAdmin, Adminer lub innym kliencie SQL zobaczy enc:v1:R3hJbkx5... zamiast czytelnych wartości. I dokładnie o to chodzi — baza danych nie jest interfejsem redakcyjnym. Dane osobowe nie powinny tam leżeć jako plaintext. 

Gwarancje

✓  Pełny kod źródłowy — bez obfuskacji, bez minifikacji, bez serwera licencyjnego. Twoje szyfrowanie działa nawet jeśli nasza firma przestanie istnieć. 

✓  Klucz szyfrowania wyłącznie u Ciebie — nie mamy do niego dostępu, nie przechowujemy kopii, nie przesyłamy go do żadnego zewnętrznego serwisu. 

✓  Zero phone-home — wtyczka nie komunikuje się z naszymi serwerami. Całość działa lokalnie na Twojej infrastrukturze. 

✓  Upgrade-safe — wtyczka działa przez system eventów TYPO3, bez XCLASS. Aktualizacja Powermail nie wymaga naszej interwencji. 

✓ Migracja w przyszłości — prefix wersji (enc:v1:) przygotowuje system na rotację klucza i zmianę algorytmu bez utraty danych. 

Cena i dostępność

Powermail Encryption jest dostępna dla TYPO3 12,13,14 w cenie jednorazowej 499 EUR. Po zakupie otrzymujesz dostęp do prywatnego repozytorium i możesz zintegrować oraz skonfigurować wtyczkę samodzielnie.

[Napisz do nas →]

Zgodność z RODO

•  Art. 32 ust. 1 lit. a) — szyfrowanie danych osobowych jako środek techniczny bezpieczeństwa 

•  Art. 5 ust. 1 lit. f) — ochrona integralności danych (tag Poly1305 wykrywa każdą modyfikację) 

•  Art. 25 ust. 1 — ochrona danych w fazie projektowania (privacy by design) i domyślna ochrona danych (privacy by default) 

•  Art. 83 ust. 2 lit. c) — szyfrowanie jako „działanie minimalizujące szkodę” łagodzące wymiar kary 

•  Klucz w .env — nigdy w bazie, nigdy w repozytorium kodu, nigdy w logach 

•  Zero transmisji danych na zewnątrz — całość działa lokalnie 

Dla audytorów RODO i IOD przygotowujemy dokumentację techniczną opisującą zastosowany algorytm, model kluczy, zakres szyfrowanych danych i architekturę rozwiązania — gotową do włączenia do rejestru czynności przetwarzania i analizy ryzyka. 

Najczęściej zadawane pytania

Nie. ChaCha20-Poly1305 dodaje poniżej 1 milisekundy do każdego zapisu i odczytu. Przy typowym formularzu użytkownik nie zauważy różnicy. Nawet masowy eksport tysięcy rekordów jest płynny. 

Bez klucza dane są nie do odzyskania — to fundamentalna cecha silnego szyfrowania. Dlatego rekomendujemy backup klucza offline: wydruk w sejfie, oddzielnie od backupów bazy. W planie Business i Enterprise pomagamy skonfigurować procedurę zarządzania kluczem. 

Tak. Plan Business zawiera jednorazową migrację historycznych danych w cenie. W planie Solo oferujemy to jako osobną usługę. Prefix enc:v1: pozwala na współistnienie zaszyfrowanych i niezaszyfrowanych rekordów — migracja może być stopniowa. 

Tak. Wtyczka szyfruje dane ze wszystkich formularzy Powermail na całej instalacji TYPO3. Nie wymaga konfiguracji per formularz — działa globalnie po instalacji. 

Obecna wersja wtyczki jest dedykowana dla Powermail. Jeśli potrzebujesz szyfrowania dla EXT:form lub innego rozszerzenia — skontaktuj się z nami. W planie Enterprise oferujemy rozszerzenie na inne tabele i rozszerzenia TYPO3. 

RODO nie definiuje jednego wystarczającego środka — wymaga całościowego podejścia. Ale szyfrowanie at rest algorytmem AEAD (state of the art) to jeden z najmocniejszych argumentów w analizie ryzyka. Przy wymiarze kary UODO bierze pod uwagę działania minimalizujące szkodę. Co więcej, utrata zaszyfrowanych danych może w ogóle nie wymagać zgłoszenia naruszenia — to konkretna wartość dla Twojego DPO. 

Tak — na konsultacji online pokazujemy działanie wtyczki na środowisku testowym: formularz, zapis, widok w Backend, widok w phpMyAdmin (szyfrogram). Umów się na demo przez formularz kontaktowy lub telefon. 

Licencja jest roczna. Przed końcem okresu wysyłamy przypomnienie. Po odnowieniu otrzymujesz dostęp do nowych wersji i support na kolejne 12 miesięcy. Jeśli nie odnowisz — wtyczka działa dalej (szyfrowanie nie przestaje działać), ale tracisz dostęp do aktualizacji i supportu. 

Dlaczego my

Agencja Dr Blitz-Weblab to TYPO3 Silver Member z 8-letnim doświadczeniem, specjalizujący się wyłącznie w TYPO3. Obsługujemy klientów enterprise, instytucje publiczne, sektor medyczny i NGO w Polsce, Niemczech i Austrii. Znamy TYPO3, Powermail, Extbase i RODO od podszewki. 

Nasi klienci: Universitätsmedizin Mannheim (portal medyczny, 25 000+ podstron), Niemiecki Instytut Historyczny w Warszawie (instytucja naukowa), RED NOSES International (międzynarodowe NGO), Fundacja Nadzieja w Nas (integracja z Tpay). Każdy z tych klientów przetwarza dane osobowe przez formularze TYPO3 — wiemy, jak to zabezpieczyć. 

Ta wtyczka nie jest eksperymentem akademickim. Powstała z realnej potrzeby naszych klientów i działa w produkcji.