Ce face openssl_encrypt
Funcția openssl_encrypt criptează date confidențiale (parole de API, date cu caracter personal conform GDPR, fișiere) folosind un algoritm simetric robust precum AES-256-GCM (cu autentificare integrată) sau AES-256-CBC.
Parametri Esențiali
| Parametru | Tip | Descriere |
|---|---|---|
$data |
string |
Textul în clar ce urmează a fi criptat. |
$cipher_algo |
string |
Algoritmul de cifrare (ex: "aes-256-gcm" sau "aes-256-cbc"). |
$passphrase |
string |
Cheia secretă binară (pe 32 de octeți pentru AES-256). |
$options |
int |
Flag-uri: 0 (returnează text codificat Base64) sau OPENSSL_RAW_DATA. |
$iv |
string |
Vectorul de inițializare unic generat per fiecare criptare. |
&$tag |
mixed |
În modurile AEAD (GCM/CCM), este populat prin referință cu eticheta de autentificare (16 octeți). |
Exemplu practic: Criptare securizată cu AES-256-GCM (Standardul Industriei)
<?php
$mesajSecret = "CNP: 1850412123456 | Card: 4111-2222-3333-4444";
$cheieSecreta = random_bytes(32); // Cheie pe 256 de biți
$algoritm = "aes-256-gcm";
$lungimeIV = openssl_cipher_iv_length($algoritm); // 12 octeți pentru GCM
$iv = openssl_random_pseudo_bytes($lungimeIV);
$tagAutentificare = "";
$textCriptat = openssl_encrypt(
$mesajSecret,
$algoritm,
$cheieSecreta,
OPENSSL_RAW_DATA,
$iv,
$tagAutentificare
);
// Pentru stocare în baza de date, împachetăm IV-ul, Tag-ul și Textul criptat:
$pachetFinal = base64_encode($iv . $tagAutentificare . $textCriptat);
echo "Pachet criptat stocat: " . $pachetFinal . "\n";
Întrebări & Exemple de Cod:
openssl_encryptAi o nelămurire despre utilizarea comenzii
openssl_encryptsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.