Hướng dẫn defuse php-encryption library via composer - gỡ bỏ thư viện mã hóa php thông qua trình soạn nhạc

Readme

Hướng dẫn defuse php-encryption library via composer - gỡ bỏ thư viện mã hóa php thông qua trình soạn nhạc

composer require defuse/php-encryption

Đây là một thư viện để mã hóa dữ liệu bằng khóa hoặc mật khẩu trong PHP. Nó yêu cầu PHP 5.6 hoặc mới hơn và OpenSSL 1.0.1 hoặc mới hơn. Chúng tôi khuyên bạn nên sử dụng phiên bản PHP vẫn có hỗ trợ bảo mật, tại thời điểm viết có nghĩa là PHP 7.4 trở lên. Sử dụng thư viện này với phiên bản PHP không được hỗ trợ có thể dẫn đến các lỗ hổng bảo mật.It requires PHP 5.6 or newer and OpenSSL 1.0.1 or newer. We recommend using a version of PHP that still has security support, which at the time of writing means PHP 7.4 or later. Using this library with an unsupported version of PHP could lead to security vulnerabilities.

Phiên bản hiện tại của php-encryption là v2.3.1. Thư viện này dự kiến ​​sẽ duy trì ổn định và được hỗ trợ bởi các tác giả của nó với bảo mật và lỗi cho đến ít nhất là ngày 1 tháng 1 năm 2024.

Thư viện là một nỗ lực chung giữa Taylor Hornby và Scott Arciszewski cũng như nhiều người đóng góp nguồn mở.

Điều tách biệt thư viện này với các thư viện mã hóa PHP khác, trước tiên là nó an toàn. Các tác giả đã từng gặp mã mã hóa PHP không an toàn hàng ngày, vì vậy họ đã tạo thư viện này để mang lại nhiều bảo mật hơn cho hệ sinh thái. Thứ hai, thư viện này là "khó sử dụng sai". Giống như libsodium, API của nó được thiết kế để dễ sử dụng một cách an toàn và khó sử dụng theo cách không an toàn.

Phụ thuộc

Thư viện này không yêu cầu các phụ thuộc đặc biệt ngoại trừ PHP 5.6 hoặc mới hơn với các tiện ích mở rộng OpenSSL (phiên bản 1.0.1 trở lên) được bật (đây là mặc định). Nó sử dụng Random_compat, được gói cùng với thư viện này để người dùng của bạn không cần phải làm theo bất kỳ bước cài đặt đặc biệt nào.

Bắt đầu

Bắt đầu với hướng dẫn. Bạn có thể tìm thấy các hướng dẫn để có được mã của thư viện này một cách an toàn trong tài liệu cài đặt và xác minh.Tutorial. You can find instructions for obtaining this library's code securely in the Installing and Verifying documentation.

Sau khi bạn đọc hướng dẫn và lấy mã, hãy tham khảo tài liệu chính thức cho từng lớp mà thư viện này cung cấp:

  • Tiền điện tử
  • Tập tin
  • Chìa khóa
  • KeyProtectedByPassword

Nếu bạn gặp khó khăn, hãy xem câu trả lời của Câu hỏi thường gặp. Các bản sửa lỗi cho các vấn đề được báo cáo phổ biến nhất được giải thích ở đó.

Nếu bạn là một nhà mật mã học và muốn hiểu các chi tiết lớn về cách thức hoạt động của thư viện này, hãy xem tài liệu chi tiết về mật mã.

Nếu bạn quan tâm đến việc đóng góp cho thư viện này, hãy xem tài liệu nhà phát triển nội bộ.

Hỗ trợ ngôn ngữ khác

Thư viện này được dành cho phần mềm PHP phía máy chủ cần mã hóa dữ liệu khi nghỉ ngơi. Nếu bạn đang xây dựng phần mềm cần mã hóa phía máy khách hoặc xây dựng một hệ thống yêu cầu hỗ trợ mã hóa/giải mã đa nền tảng, chúng tôi khuyên bạn nên sử dụng libsodium thay thế.

Ví dụ

Nếu tài liệu không đủ để bạn hiểu cách sử dụng thư viện này, thì bạn có thể xem một dự án ví dụ sử dụng thư viện này:

  • bao bọc
  • FileNcrypt

Trạng thái kiểm toán bảo mật

Mã này đã không phải chịu một cuộc kiểm toán bảo mật chính thức, được trả tiền, được trả tiền. Tuy nhiên, nó đã nhận được rất nhiều đánh giá từ các thành viên của cộng đồng bảo mật PHP và các tác giả có kinh nghiệm với mật mã. Trong tất cả khả năng, bạn an toàn hơn khi sử dụng thư viện này hơn hầu hết mọi thư viện mã hóa khác cho PHP.

Nếu bạn sử dụng thư viện này như một phần của doanh nghiệp của bạn và muốn giúp tài trợ cho một cuộc kiểm toán chính thức, vui lòng liên hệ với Taylor Hornby.

Khóa công khai

Khóa công khai GNUPG được sử dụng để ký các bản phát hành hiện tại và cũ hơn có sẵn trong Dist/SigningKey.asc. Dấu vân tay của nó là:

2FA6 1D8D 99B9 2658 6BAC  3D53 385E E055 A129 1538

Bạn có thể xác minh nó đối với trang liên hệ và Twitter của Taylor Hornby.

Do khóa cũ hết hạn, các bản phát hành mới sẽ được ký hợp đồng với khóa công khai mới có sẵn trong Dist/SigningKey-new.asc. Dấu vân tay của nó là:

6DD6 E677 0281 5846 FC85  25A3 DD2E 507F 7BDB 1669

Chữ ký của khóa mới này của khóa cũ có sẵn trong Dist/SigningKey-new.asc.sig.