OpenSSL mã hóa PHP

Nó nhận một chuỗi tài liệu nhất định và mã hóa nó bằng một khóa nhất định bằng cách sử dụng mật mã hoàn toàn có thể định thông số kỹ thuật theo mặc định là aes-256-ctr

Nội dung chính Show

  • Phần kết luận
  • NGĂN CHẶN MÁY CHỦ CỦA BẠN KHỎI SỰ CỐ
  • Làm cách nào để mã hóa tệp PHP?
  • Làm cách nào để sử dụng openssl_encrypt trong PHP?
  • Làm cách nào để mã hóa văn bản trong PHP?
  • Làm cách nào để mã hóa dữ liệu bài đăng trong PHP?

Lớp có thể tùy chọn mã hóa dữ liệu được mã hóa bằng base64

Bạn đang đọc: OpenSSL mã hóa PHP

Nó cũng hoàn toàn có thể giải thuật và giải thuật tài liệu được mã hóa trước đó bằng cùng một khóa và mật mãOpenSSL mã hóa PHP
Sử dụng lớp này để mã hóa và giải thuật tài liệu trong phpSử dụng bảo đảm an toàn. mã hóa để mã hóa dữ liệu. Sử dụng bảo đảm an toàn. giải thuật để giải thuật tài liệuKhông nên biến hóa @ param USD encoded thành FALSE Trong PHP, hoàn toàn có thể mã hóa và giải thuật chuỗi bằng cách sử dụng một trong những Tiện ích lan rộng ra mã hóa có tên là hàm OpenSSL để mã hóa và giải thuậtHôm nay, tất cả chúng ta hãy xem những bước được Kỹ thuật viên tương hỗ của chúng tôi triển khai

Hàm openssl_encrypt()

Về cơ bản, tính năng này được sử dụng để mã hóa dữ liệucú pháp

string openssl_encrypt( string $data, string $method, string $key,
$options = 0, string $iv, string $tag= NULL,
string $aad, int $tag_length = 16 )

Thông số

  • dữ liệu $. Nó chứa chuỗi hoặc dữ liệu cần mã hóa
  • phương thức $. Phương thức mật mã được áp dụng bằng cách sử dụng hàm openssl_get_cipher_methods()
  • khóa $. Nó giữ chìa khóa mã hóa
  • tùy chọn $. Nó giữ sự phân tách theo chiều bit của các cờ OPENSSL_RAW_DATA và OPENSSL_ZERO_PADDING
  • $iv. Nó giữ vectơ khởi tạo không phải là NULL
  • thẻ $. Nó giữ thẻ xác thực được chuyển qua tham chiếu khi sử dụng chế độ mật mã AEAD (GCM hoặc CCM)
  • $aad. Nó chứa dữ liệu xác thực bổ sung
  • $tag_length. Nó giữ độ dài của thẻ xác thực. Độ dài của thẻ xác thực nằm trong khoảng từ 4 đến 16 đối với chế độ GCM

Giá trị trả về. Sau đó, nó trả về chuỗi được mã hóa nếu thành công xuất sắc hoặc FALSE nếu thất bại

Hàm openssl_decrypt()

Thứ hai, Hàm openssl_decrypt ( ) dùng để giải thuật tài liệucú pháp

string openssl_decrypt( string $data, string $method, string $key,
int $options = 0, string $iv, string $tag, string $aad)

Thông số

  • dữ liệu $. Nó chứa chuỗi hoặc dữ liệu cần được mã hóa
  • phương thức $. Phương thức mật mã được thông qua bằng cách sử dụng hàm openssl_get_cipher_methods()
  • khóa $. Nó giữ chìa khóa mã hóa
  • tùy chọn $. Nó giữ sự phân tách theo chiều bit của các cờ OPENSSL_RAW_DATA và OPENSSL_ZERO_PADDING
  • $iv. Nó giữ vectơ khởi tạo không phải là NULL
  • thẻ $. Nó giữ thẻ xác thực bằng chế độ mật mã AEAD (GCM hoặc CCM). Khi xác thực không thành công openssl_decrypt() trả về FALSE
  • $aad. Nó chứa dữ liệu xác thực bổ sung

Giá trị trả về. Sau đó, nó trả về chuỗi được giải thuật nếu thành công xuất sắc hoặc FALSE nếu thất bại

Tiếp cận

Đầu tiên, khai báo một chuỗi và lưu nó vào biến và sử dụng hàm openssl_encrypt ( ) để mã hóa chuỗi đã choSau đó, sử dụng hàm openssl_encrypt ( ) để giải thuật chuỗi đã choví dụ 1. Ví dụ này minh họa việc mã hóa và giải thuật chuỗi


đầu ra

Original String: Welcome to GeeksforGeeks
Encrypted String: hwB1K5NkfcIzkLTWQeQfHLNg5FlyX3PNUA==
Decrypted String: Welcome to GeeksforGeeks

ví dụ 2. Ví dụ dưới đây minh họa việc mã hóa và giải thuật chuỗiỞ đây chuỗi mã hóa và chuỗi giải thuật giống nhau nhưng chuỗi mã hóa biến hóa ngẫu nhiên tương ứng


đầu ra

Original String: Welcome to GeeksforGeeks
Encrypted String: hwB1K5NkfcIzkLTWQeQfHLNg5FlyX3PNUA==
Decrypted String: Welcome to GeeksforGeeks

[ Mắc kẹt ở giữa ?

Phần kết luận

Nói tóm lại, ngày hôm nay tất cả chúng ta đã thấy những bước tiếp theo của Kỹ thuật viên tương hỗ của chúng tôi để mã hóa và giải thuật chuỗi php bằng OpenSSL

NGĂN CHẶN MÁY CHỦ CỦA BẠN KHỎI SỰ CỐ

Không khi nào mất người mua vì vận tốc sever kém. Hãy để chúng tôi giúp bạnCác chuyên viên sever của chúng tôi sẽ giám sát và bảo dưỡng sever của bạn 24/7 để nó luôn hoạt động giải trí nhanh và bảo đảm an toàn Lưu ý. Tôi không phải là chuyên viên mã hóa. Tôi không muốn mật khẩu email SMTP của mình được tàng trữ trong cơ sở tài liệu ở dạng văn bản thuần túy, thế cho nên đây là giải pháp của tôi. Nếu bạn đang làm một cái gì đó tương tự như, điều này sẽ ổn thôi. Nếu bạn đang tàng trữ tài liệu SSN hoặc thẻ tín dụng thanh toán, bạn sẽ muốn tìm hiểu thêm quan điểm ​ ​ của chuyên viên mã hóaHướng dẫn sử dụng php hiện thiếu tài liệu cho những hàm “ openssl_encrypt ” và “ openssl_decrypt ”, vì thế, tôi đã mất một lúc để tổng hợp những việc cần làm để những hàm này hoạt động giải trí sửa chữa thay thế cho mcrypt, vốn đã không còn được duy trì từ năm 2003. Hy vọng rằng điều này sẽ giúp bạn đến được nơi cần đến với việc mã hóa và giải thuật tài liệu của mìnhTrước tiên, bạn sẽ cần tạo một chuỗi byte giả ngẫu nhiên mà bạn sẽ sử dụng làm khóa mã hóa 256 bit. Độ dài được nhu yếu sẽ là 32 ( vì 32 byte = 256 bit ). Nếu bạn lặp lại phím, bạn sẽ nhận thấy rằng trình duyệt của bạn bị nghẹt. Để tránh lỗi hoàn toàn có thể xảy ra khi tàng trữ khóa trong tệp hoặc cơ sở tài liệu, chúng tôi sẽ base64_mã hóa khóa đó. Sử dụng mã bên dưới để tạo ( những ) khóa của bạn. Khóa sẽ cần được lưu vì tài liệu phải được mã hóa và giải thuật bằng cùng một khóa. Nếu tài liệu được mã hóa của bạn đang được tàng trữ trong cơ sở tài liệu, thì rất hoàn toàn có thể khóa mã hóa của bạn sẽ cần được tàng trữ trong tệp thông số kỹ thuật1USD encryption_key_256bit = base64_encode ( openssl_random_pseudo_bytes ( 32 ) ) ;Bây giờ chúng tôi đã có khóa của mình, chúng tôi sẽ tạo tính năng mã hóa. Chúng tôi sẽ chuyển tài liệu của chúng tôi sẽ được mã hóa và khóa của chúng tôi vào công dụng. Ngoài khóa của chúng tôi, còn có một chuỗi ngẫu nhiên phụ mà chúng tôi sẽ tạo và sử dụng được gọi là véc tơ khởi tạo ( IV ) giúp giúp tăng cường mã hóa

Có thể bạn quan tâm

  • Sirius 50 bao nhiêu mã lực?
  • Vé lễ hội hóa trang Rio de Janeiro 2024
  • Tử Vi Nhân Mã 2023 Hôm Nay
  • Corvette ZR1 2023 có bao nhiêu mã lực?
  • Xuất hóa đơn đỏ tối đã bao nhiêu tiền

12345678910hàm my_encrypt ( $ dữ liệu, $ key ) {/ / Xóa mã hóa base64 khỏi khóa của chúng tôiUSD encryption_key = base64_decode ( $ key ) ;/ / Tạo vectơ khởi tạoUSD iv = openssl_random_pseudo_bytes ( openssl_cipher_iv_length ( ‘ aes-256-cbc ‘ ) ) ;/ / Mã hóa dữ liệu bằng mã hóa AES 256 ở chính sách CBC bằng khóa mã hóa và vectơ khởi tạo của chúng tôi .USD đã mã hóa = openssl_encrypt ( $ data, ‘ aes-256-cbc ‘, USD encryption_key, 0, $ iv ) ;/ / USD iv cũng quan trọng như chìa khóa để giải thuật, thế cho nên hãy lưu nó cùng với tài liệu được mã hóa của chúng tôi bằng dấu tách duy nhất (. )return base64_encode ( $ encrypted. ‘. ‘. $ iv ) ;}Bây giờ cho công dụng giải thuật1234567

hàm my_decrypt ( $ dữ liệu, $ key ) {/ / Xóa mã hóa base64 khỏi khóa của chúng tôiUSD encryption_key = base64_decode ( $ key ) ;/ / Để giải thuật, hãy tách tài liệu được mã hóa khỏi IV của chúng tôi – dấu tách duy nhất chúng tôi sử dụng là “. “list ( $ encrypted_data, $ iv ) = explode ( ‘ :: ‘, base64_decode ( $ data ), 2 ) ;return openssl_decrypt ( $ encrypted_data, ‘ aes-256-cbc ‘, USD encryption_key, 0, $ iv ) ;}Để tổng thể chúng cùng nhau1234567891011121314151617181920212223242526272829303132333435

/ / USD key là khóa 256 bit được mã hóa base64 mà chúng tôi đã tạo trước đó. Bạn hoàn toàn có thể sẽ tàng trữ và xác lập khóa này trong tệp thông số kỹ thuậtUSD key = ‘ bRuD5WYw5wd0rdHR9yLlM6wt2vteuiniQBqE70nAuhU = ‘ ; Làm cách nào để mã hóa tệp PHP?

✅ Mã hóa những phần nhỏ hơn của một tệp lớn.

Tạo Vector khởi tạo ngẫu nhiên ( IV ). Lưu trữ IV này ở đầu tệp được mã hóa. . Lấy một đoạn tiên phong, mã hóa nó bằng IV và tàng trữ nó. . Sử dụng những ký tự tiên phong của đoạn mã hóa cho IV tiếp theo. . Lấy đoạn tiếp theo và lặp lại bước 3

Làm cách nào để sử dụng openssl_encrypt trong PHP?

$iv = openssl_random_pseudo_bytes($ivlen);

Làm cách nào để mã hóa văn bản trong PHP?

Mã hóa dữ liệu bằng openssl_encrypt ( )

. Khi thành công, nó trả về chuỗi được mã hóa. Nếu không, nó trả về FALSE.

Làm cách nào để mã hóa dữ liệu bài đăng trong PHP?

php require ‘encryption. php’; if ($_SERVER[‘REQUEST_METHOD’] == ‘POST’) { // print_r($_POST);exit $nonceValue=$_POST[‘enckey’]; $Encryption = new Encryption(); $username = $Encryption->decrypt($_POST[‘username’], $nonceValue); // echo ‘decrypted: ‘. $mobileNumber. ‘
‘; echo ‘decrypted: ‘ .

OpenSSL mã hóa PHP

Bài viết liên quan
Hotline 24/7: O984.666.352
Alternate Text Gọi ngay