M-am decis să postez resurse necesare dezvoltării web pe blog pentru a le găsi mai ușor atunci când am nevoie de ele.
Pentru cazurile în care vreți să transmiteți date sensibile prin diverse metode, pot fi utile funcțiile de criptare și decriptare.
Iată un exemplu probat:
define("encryption_method", "AES-128-CBC"); define("key", "alabala_portocala"); function encrypt($data) { $key = key; $plaintext = $data; $ivlen = openssl_cipher_iv_length($cipher = encryption_method); $iv = openssl_random_pseudo_bytes($ivlen); $ciphertext_raw = openssl_encrypt($plaintext, $cipher, $key, $options = OPENSSL_RAW_DATA, $iv); $hmac = hash_hmac('sha256', $ciphertext_raw, $key, $as_binary = true); $ciphertext = base64_encode($iv . $hmac . $ciphertext_raw); return $ciphertext; } function decrypt($data) { $key = key; $c = base64_decode($data); $ivlen = openssl_cipher_iv_length($cipher = encryption_method); $iv = substr($c, 0, $ivlen); $hmac = substr($c, $ivlen, $sha2len = 32); $ciphertext_raw = substr($c, $ivlen + $sha2len); $original_plaintext = openssl_decrypt($ciphertext_raw, $cipher, $key, $options = OPENSSL_RAW_DATA, $iv); $calcmac = hash_hmac('sha256', $ciphertext_raw, $key, $as_binary = true); if (hash_equals($hmac, $calcmac)) { return $original_plaintext; } else { return "Ceva nu a mers cum trebuie"; } }
Găsiți mai multe detalii despre criptarea și decriptarea datelor aici: php.net
Poți publica un advertorial pe blog
Află tot ceea ce trebuie să știi despre Advertorialele SEO
Publică un advertorial
Interesant 🙂