Hướng dẫn wordpress encrypt decrypt string - chuỗi giải mã mã hóa wordpress

Bạn không nghi ngờ gì đã nghe thấy nó một triệu lần trước đây, nhưng vấn đề vẫn giữ nguyên, WordPress không chỉ là một cơ chế viết blog đơn giản, trên thực tế, tôi sẽ cho rằng bạn có thể xây dựng bất kỳ loại nền tảng trực tuyến hoặc trang web nào với WordPress là Core, bạn thực sự chỉ bị giới hạn bởi trí tưởng tượng của bạn.

Nếu tôi bắt đầu một dự án có thể yêu cầu tài khoản người dùng hoặc nhiều yêu cầu xử lý cơ sở dữ liệu, tâm trí tôi luôn nhảy thẳng vào WordPress. Vâng, có những người trong số các bạn sẽ lập luận rằng tất cả những điều đó có thể đạt được bằng cách sử dụng các thư viện cụ thể, nhưng, bạn có thể thực sự có được tất cả những điều đó được thiết lập và làm việc trong vài phút không? Không dễ dàng!

Đối với tôi, những lợi ích thực sự của WordPress đi kèm với số lượng lớn các chức năng được cung cấp có sẵn mà không cần bất kỳ chương trình bổ sung nào, ví dụ như kiểm tra xem người dùng có được đăng nhập chỉ yêu cầu is_user_logged_in [] hoặc khả năng dễ dàng gửi email bằng wp_mail [].is_user_logged_in[] or the ability to easily send an email with wp_mail[].

Khi bạn bắt đầu xây dựng các dự án tùy chỉnh của riêng mình, bạn sẽ bắt đầu dựa vào các dịch vụ mã này ngày càng nhiều hơn, nhưng, cũng sẽ có Một chút mã hóa!

WordPress không phải lúc nào cũng có mọi thứ bạn cần

Điều này đưa tôi đến chủ đề của bài viết này. Gần đây tôi đã làm việc trong một dự án mà tôi cần một cơ sở mã hóa dữ liệu để dễ dàng mã hóa và giải mã một chuỗi trong nhiều lần trên trang web của mình và trong khi tôi tình cờ thấy một vài tùy chọn cơ bản trực tuyến, tôi đã xây dựng một trong những điều mà tôi sẽ Chia sẻ với bạn ở đây.

Tạo hàm mã hóa hai chiều

Chúng tôi sẽ xây dựng chức năng trong các khối nhỏ trong nỗ lực giúp bạn hiểu rõ hơn về hoạt động bên trong và hỗ trợ việc học của bạn. Tôi sẽ cho rằng bạn hiểu những điều cơ bản của PHP về các yếu tố như biến và chức năng, v.v. Alexander Clyde.variables and functions etc. If you are fairly new to PHP I would fully recommend you check out the book ‘PHP: A Step By Step Guide from Beginner to Export’ by Alexander Clyde.

Bước 1.] Tạo hàm trống

Mã trên sẽ đi vào tệp function.php trong cài đặt WordPress của bạn. Không có gì để hét lên ở đây, chỉ là xương trần của chức năng PHP.

Bước 2.] Chuẩn bị lập luận

Mục tiêu cuối cùng của chức năng của chúng tôi là có thể chuyển nó một chuỗi và để nó trả về một phiên bản được mã hóa hoặc giải mã của chuỗi đó trở lại.

Vì vậy, đối với hai đối số của chúng tôi, hãy cho ăn trong một chuỗi và một chữ cái để biểu thị hướng mã hóa là bắt buộc.

Hy vọng rằng, bạn vẫn ở bên tôi, đối số đầu tiên của chúng tôi sẽ là chuỗi chúng tôi muốn sửa đổi và đối số thứ hai sẽ là một ’e, hoặc’ d, tùy thuộc vào việc chúng tôi đang mã hóa hay giải mã.String we want modifying, and the second argument will either be an ‘e’ or ‘d’ depending on whether we are encrypting or decrypting.

Bạn cũng sẽ nhận thấy tôi đã thêm một số giá trị mặc định vào các tranh luận, đây không phải là điều cần thiết, nhưng chúng có thể giúp giảm số lượng lỗi sau này nếu bạn quên cung cấp mọi thứ mà hàm yêu cầu.

Bước 3.] Chuẩn bị khóa mã hóa

Mọi thứ sẽ sớm tăng lên khá nhanh ở đây, việc tranh giành một chuỗi có thể được thực hiện theo một số cách khác nhau và chúng tôi sẽ sử dụng một số trong số chúng để tăng cường bảo mật.

Trước tiên, bạn cần hiểu rằng quá trình có thể sửa đổi một chuỗi và sau đó hoàn nguyên lại sau đó sẽ yêu cầu ít nhất một điểm tham chiếu ‘, trong trường hợp của chúng tôi sẽ sử dụng một số chuỗi khóa mã hóa.

Hai chuỗi của $ Secret_key và $ Secret_iv [vectơ khởi tạo] có thể là bất cứ điều gì bạn thích, nhưng hãy nhớ rằng việc thay đổi chúng sẽ thay đổi cách toàn bộ chức năng cuối cùng sẽ hoạt động.$secret_key and $secret_iv [initialization vector] can be whatever you like, but keep in mind that altering them will change the way the entire final function will work.

Nói cách khác, nếu bạn mã hóa một chuỗi và sau đó sửa đổi các phím trên sau đó, sau đó bạn sẽ không thể giải mã nó lại.

Bước 4.] Băm và mã hóa

Hãy nhớ rằng tôi đã nói rằng hướng dẫn này sẽ tăng lên? Vâng, đây là điểm xảy ra.

Trong phần này, chúng tôi sẽ sử dụng một số chức năng PHP phức tạp và trừ khi bạn muốn bỏ qua cuối và sao chép khối mã đã hoàn thành, tôi khuyên bạn nên đọc ngắn mỗi người để hiểu những gì họ làm. Dưới đây là các chức năng chúng tôi sẽ tích hợp:

  • hash[]
  • substr[]
  • base64_encode[]
  • openssl_encrypt[]
  • openssl_decrypt[]

Đối với cả người xử lý mã hóa và giải mã, chúng tôi sẽ cần một khóa đơn lẻ. Bây giờ chúng tôi có một khóa tiêu chuẩn trong $ secret_key của chúng tôi, vì vậy hãy để cho một hàm băm SHA256 và lưu trữ nó trong một biến sẵn sàng để đi.$secret_key so let’s give that a SHA256 Hash and store it in a variable ready to go.

Cũng như khóa số ít, cả hai trình xử lý sắp tới cho quy trình mã hóa sẽ yêu cầu giá trị vectơ init và bạn có thể đọc thêm về những người sử dụng các liên kết chức năng ở trên. Tất cả những gì bạn thực sự cần biết ở đây là chúng ta cần một giá trị có độ dài 16 ký tự.init vector value and you can read more about those using the function links above. All you really need to know here is that we need a value that is 16 characters in length.

Hãy cùng phá hủy chức năng băm SHA256 ngày càng tốt và làm tổ trong chức năng phụ để chỉ trả về 16 ký tự đầu tiên.SHA256 Hash function again and nest that within a substring function to only return the first 16 characters.

Bây giờ chúng tôi có mọi thứ cần thiết và hy vọng, bạn vẫn ở bên tôi! Bây giờ chúng ta có thể thêm một vài dòng cuối cùng. Đầu tiên, chúng tôi sẽ thêm một câu lệnh nếu kiểm tra câu lệnh nếu chúng tôi đang mã hóa hoặc giải mã.

Bây giờ chúng tôi có thể thêm vào một sự kết hợp lồng nhau của các hàm PHP phức tạp mà chúng tôi đã tham khảo trước đó để xử lý ’tranh giành.

Bài Viết Liên Quan

Chủ Đề