Hướng dẫn what is encoding and decoding php? - mã hóa và giải mã php là gì?

Hướng dẫn what is encoding and decoding php? - mã hóa và giải mã php là gì?
Có nhiều cách để mã hóa và giải mã mã PHP. Từ góc độ bảo mật trang web, có ba hàm PHP - str_rot13(), base64_encode()gzinflate - thường được sử dụng để làm xáo trộn các chuỗi mã PHP độc hại. Đối với những người tham gia vào việc bảo vệ các trang web, việc hiểu cách các chức năng này được sử dụng để mã hóa và giải mã các khối dữ liệu PHP được mã hóa là rất quan trọng để giám sát chính xác và phục hồi tấn công nhanh chóng.

Đối với những người đã quen thuộc với khái niệm này, nhưng có thể sử dụng một tài liệu tham khảo nhanh với các ví dụ, tôi đã đưa ra một bản tóm tắt ngắn gọn về bài viết này. Bài báo ở đây được dự định là một cái nhìn hậu trường của người Viking về việc giải mã và mã hóa xảy ra trên trang ví dụ. Tại đây, menu nhảy nhanh:

  • Mã hóa/giải mã str_rot13 ()
  • Mã hóa và giải mã bằng base64_encode () & base64_decode ()
  • Xuất độ và thổi phồng với gzdeflate () & gzinflate ()
  • Ví dụ kết hợp: gzinflate (str_rot13 (base64_decode ())))
  • Các công cụ trực tuyến để giải mã/mã hóa mã PHP
  • Tài nguyên bổ sung ..
  • Ví dụ nhanh về mã hóa/giải mã PHP

Mã hóa và giải mã bằng str_rot13 ()

Như đã giải thích trong tài liệu PHP, str_rot13() là một hàm đơn giản được sử dụng để xoay mọi chữ cái 13 vị trí trong bảng chữ cái trong khi bỏ qua các ký tự không phải là số đồngumeric. Loại mã hóa này được gọi là mã hóa ROT13 và nó rất đơn giản bằng cách sử dụng hàm str_rot13(). Hãy nhìn vào một ví dụ ..

Hãy để nói rằng chúng tôi muốn rot13-rode Chuỗi sau:

Chúng tôi chạy chuỗi này thông qua str_rot13() và đặt nó thành một biến có tên

1 như vậy:

2

Đang lặp lại biến

1 với trình duyệt, chúng tôi nhận được chuỗi vô nghĩa này:

4

Để giải mã một chuỗi được mã hóa bằng str_rot13(), chúng tôi chỉ cần chạy lại thông qua hàm để khôi phục chuỗi gốc. Dưới đây là một ví dụ trả lại chuỗi gốc cho một biến có tên

6:decode a string encoded with str_rot13(), we simply run it back through the function to restore the original string. Here is an example that returns the original string to a variable named
6:

7

Vang vọng

6, chúng ta thấy chuỗi ban đầu như mong đợi:

9

Ví dụ Sao chép/Dán (hãy thử cho chính mình): (try it for yourself):

Mã hóa và giải mã bằng base64_encode () & base64_decode ()

Xuất độ và thổi phồng với gzdeflate () & gzinflate ()

Ví dụ kết hợp: gzinflate (str_rot13 (base64_decode ())))

Các công cụ trực tuyến để giải mã/mã hóa mã PHP

Tài nguyên bổ sung ..

5

Đang lặp lại biến

1 với trình duyệt, chúng tôi nhận được chuỗi vô nghĩa này:

7

Để giải mã một chuỗi được mã hóa bằng str_rot13(), chúng tôi chỉ cần chạy lại thông qua hàm để khôi phục chuỗi gốc. Dưới đây là một ví dụ trả lại chuỗi gốc cho một biến có tên

6:decode a string encoded with
8, we use the converse function, base64_decode. Here is an example that returns the original string to a variable named
6:

0

Vang vọng

6, chúng ta thấy chuỗi ban đầu như mong đợi:

9

Ví dụ Sao chép/Dán (hãy thử cho chính mình): (try for yourself):

Xuất độ và thổi phồng với gzdeflate () & gzinflate ()

Ví dụ kết hợp: gzinflate (str_rot13 (base64_decode ())))

Các công cụ trực tuyến để giải mã/mã hóa mã PHP

Tài nguyên bổ sung ..

7

Ví dụ nhanh về mã hóa/giải mã PHP

9

Mã hóa và giải mã bằng str_rot13 ()inflate it with the converse function, gzinflate(), to restore the original string. Here is an example that returns the original string to a variable named str_rot13()0:

str_rot13()1

Như đã giải thích trong tài liệu PHP, str_rot13() là một hàm đơn giản được sử dụng để xoay mọi chữ cái 13 vị trí trong bảng chữ cái trong khi bỏ qua các ký tự không phải là số đồngumeric. Loại mã hóa này được gọi là mã hóa ROT13 và nó rất đơn giản bằng cách sử dụng hàm str_rot13(). Hãy nhìn vào một ví dụ ..

9

Hãy để nói rằng chúng tôi muốn rot13-rode Chuỗi sau::

Chúng tôi chạy chuỗi này thông qua str_rot13() và đặt nó thành một biến có tên
1 như vậy:

Đang lặp lại biến

1 với trình duyệt, chúng tôi nhận được chuỗi vô nghĩa này:two parameters. Perhaps surprisingly, these second parameters are different between the two functions:

  • Để giải mã một chuỗi được mã hóa bằng str_rot13(), chúng tôi chỉ cần chạy lại thông qua hàm để khôi phục chuỗi gốc. Dưới đây là một ví dụ trả lại chuỗi gốc cho một biến có tên
    6:
    str_rot13()7 = the level of compression (str_rot13()8 to str_rot13()9)
  • Vang vọng
    6, chúng ta thấy chuỗi ban đầu như mong đợi:
    base64_encode()0 = the maximum length of data to decode

Ví dụ Sao chép/Dán (hãy thử cho chính mình):

Cũng được giải thích trong tài liệu PHP, hàm base64_encode() mã hóa dữ liệu đã cho bằng base64. Thay vì đi vào cơ chế mã hóa với Base64, tôi sẽ lặp lại haiku bí ẩn được đưa ra trong các tài liệu:

base64_encode()1

9
9

Ví dụ kết hợp: gzinflate (str_rot13 (base64_decode ())))

Các tập lệnh độc hại thường kết hợp nhiều phương pháp mã hóa để tiếp tục làm xáo trộn các chuỗi dữ liệu. Sử dụng nhiều hàm loại mã hóa PHP (và các tham số khác nhau của chúng), nó có thể tranh giành dữ liệu với nhiều lớp obfuscation. Ví dụ, về kỹ thuật phổ biến để mã hóa các tập lệnh độc hại kết hợp cả ba chức năng được mô tả trong bài viết này. Cấu trúc của kỹ thuật như vậy trông như thế này:all three of the functions described in this article. The structure of such technique looks like this:

base64_encode()3

Khái niệm này rất đơn giản, tuy nhiên việc giải mã base64_encode()4 có thể là khó khăn. Cách dễ nhất để giải mã một chuỗi như vậy là sử dụng một công cụ giải mã trực tuyến. Và đó là sự khác biệt của tôi trong phần tiếp theo ..

Các công cụ trực tuyến để giải mã/mã hóa mã PHP

Để đóng góp thêm vào nguyên nhân, tôi đã tạo ra một số công cụ giải mã trực tuyến để đơn giản hóa quy trình. Dưới đây là một số công cụ để mã hóa/giải mã với một số chức năng PHP phổ biến:

  • Giải mã base64_encode()5
  • Bộ mã hóa/bộ giải mã UTF-8 (Hex)
  • Bộ giải mã/bộ chuyển đổi Unicode
  • Thêm công cụ..

Tài nguyên bổ sung

Vào công cụ giải mã/sinh thái này? Bạn cũng có thể thích những chức năng tốt này ..

  • Chunk_split () - Chia một chuỗi thành các khối nhỏ hơn
  • convert_uuencode () - uuencode một chuỗi
  • gzcompress () - nén một chuỗi
  • gzuncompress () - Khó nén một chuỗi nén
  • gzencode () - Tạo chuỗi nén GZIP

Hướng dẫn what is encoding and decoding php? - mã hóa và giải mã php là gì?

Thông tin về các Tác giả

Jeff Starr = Nhà phát triển web. Tác giả sách. Bí mật quan trọng.

Mã hóa và giải mã là gì?

Trong máy tính, mã hóa là quá trình đặt một chuỗi các ký tự (chữ cái, số, dấu câu và một số ký hiệu nhất định) vào một định dạng chuyên dụng để truyền hoặc lưu trữ hiệu quả. Giải mã là quá trình ngược lại - việc chuyển đổi định dạng được mã hóa trở lại thành chuỗi các ký tự gốc.

Sự khác biệt giữa mã hóa và giải mã trong PHP là gì?

Mã hóa được sử dụng để gói dữ liệu liên quan đến một định dạng cụ thể. Quá trình này sẽ được yêu cầu để bảo tồn tính nhất quán của dữ liệu. Giải mã là một quá trình ngược lại, hoàn nguyên dữ liệu được mã hóa trở lại dạng ban đầu.

Mã hóa trong PHP là gì?

Định nghĩa và sử dụng hàm UTF8_encode () mã hóa chuỗi ISO-8859-1 thành UTF-8.Unicode là một tiêu chuẩn phổ quát và đã được phát triển để mô tả tất cả các ký tự có thể của tất cả các ngôn ngữ cộng với rất nhiều biểu tượng với một số duy nhất cho mỗi ký tự/ký hiệu.encodes an ISO-8859-1 string to UTF-8. Unicode is a universal standard, and has been developed to describe all possible characters of all languages plus a lot of symbols with one unique number for each character/symbol.

Giải mã PHP là gì?

Hàm urldecode () là một hàm sẵn có trong PHP được sử dụng để giải mã URL được mã hóa bởi hàm được mã hóa ().Cú pháp: Chuỗi URLDECODE ($ Input) Tham số: Hàm này chấp nhận thông số đơn $ đầu vào giữ URL được giải mã.Giá trị trả về: Hàm này trả về chuỗi được giải mã khi thành công.an inbuilt function in PHP which is used to decode url which is encoded by encoded() function. Syntax: string urldecode( $input ) Parameters: This function accepts single parameter $input which holds the url to be decoded. Return Value: This function returns the decoded string on success.