2010-04-02 38 views
6

Tôi đã nghĩ đến việc tạo một ứng dụng thương mại để bán cho khách hàng để cài đặt trên máy chủ của họ nhưng tôi muốn làm điều đó với PHP & MySQL.ứng dụng web thương mại PHP -

tôi nên làm gì để đảm bảo rằng mã nguồn (& Cơ sở dữ liệu) sẽ không được mở hoặc sao chép. Điều quan trọng nhất là mã sẽ được lưu trữ trên máy chủ của khách hàng. Và cũng như thế nào để đảm bảo rằng khách hàng sẽ không bán lại ứng dụng web (như sao chép mã & Db cho người khác)

Cảm ơn bạn

Trả lời

6

Có rất nhiều câu hỏi xung quanh mã PHP obfuscation/mã hóa/biên dịch trên SO. Kiểm tra chúng ra.

Có một số sản phẩm để bảo vệ mã PHP như Zend Guard, ioncube encoder và các sản phẩm khác.

liên quan SO câu hỏi:

+0

+1 danh sách thông tin tốt – Cez

+1

1 vĩ đại thông tin Pekka. (mặc dù nó chỉ bao gồm một nửa vấn đề. DB là hạt cứng để bảo vệ). – codenheim

+0

@mrj bạn được chào đón. Nhưng một * DB *? Không đọc phần đó. Tôi muốn nói điều đó là khá không thể bảo vệ theo bất kỳ cách nào theo định hướng hiệu suất. Sau đó, bạn cần phải suy nghĩ về phần mềm như một dịch vụ. –

0

Không thể, IMO, mà không có một môi trường hoàn toàn tổ chức. Một khi trên máy chủ của khách hàng, họ có quyền truy cập, thì đó là vấn đề về quyết tâm và tài nguyên. Tôi nói điều này bởi vì thậm chí mạnh mẽ, bảo vệ bản quyền mã nguồn gốc bị phá hủy tất cả các thời gian, chỉ cần Google để xem tất cả các phím nứt.

Nếu bạn KHÔNG muốn bảo vệ mã của mình, hãy sử dụng ngôn ngữ bản địa hoặc các bản án bị xáo trộn (ít nhất) sẽ chỉ làm thay đổi độ khó, nhưng không làm giảm rủi ro.

Bảo vệ cơ sở dữ liệu thậm chí còn khó khăn hơn. Ngay cả động cơ cho phép mã hóa DB đầy đủ yêu cầu khóa để bắt đầu/kết nối với db. Nếu đó là một phần của ứng dụng web của bạn hoặc trong tay của khách hàng, họ có toàn quyền truy cập. Mã hóa DB thực sự là để bảo vệ chống lại tin tặc, không chống lại khách hàng của bạn.

Vi phạm bản quyền sẽ trở thành vấn đề pháp lý chứ không phải vấn đề kỹ thuật.

1

Bạn có thể sử dụng Zend Guard và một số điều khiển bên trong ứng dụng của mình để cố gắng giảm thiểu vi phạm bản quyền trên các ứng dụng PHP WEB của bạn.

DataBase có thể sẽ vẫn mở.

0

Tôi nghĩ rằng hầu hết các bạn có thể làm là mã hóa nó nhưng nếu họ đủ hiểu biết để họ có thể giải mã nó ... PHP là một ngôn ngữ kịch bản được diễn giải trong thời gian chạy.

Khách hàng của bạn phải ký hợp đồng cho biết họ sẽ không giao nó, bạn có thể kiểm tra cấp phép kiểm tra phần mềm để xác minh rằng không ai sử dụng bất hợp pháp ... vbulletin là một ví dụ về ứng dụng web PHP thương mại, bạn có thể xem xét cách họ kinh doanh.

2

Chừng nào các phần mềm được phân phối dưới dạng mã nguồn (so với nhị phân), có không có cách nào để ngăn chặn việc mở khách hàng/thay đổi nó. Ngay cả các tệp nhị phân cũng có thể được thiết kế ngược hoặc ít hơn bằng cách dịch ngược chúng.

Có thể obfuscate mã để khó đọc/hiểu cách hoạt động, nhưng theo mọi biện pháp đối phó, nó sẽ không ngừng vi phạm bản quyền - sớm hay muộn ai đó có đủ động lực sẽ bỏ qua nó.

Bạn có vài lựa chọn:

  1. Bán phần mềm của bạn như một dịch vụ (SaaS).

  2. Đừng quan tâm đến vi phạm bản quyền, hồ sơ cao/hầu hết người dùng có thể sẽ trả tiền nếu giá hợp lý.

  3. Giấy phép nó như free (libre) và lợi nhuận bằng cách bán hỗ trợ, vv

Các vấn đề liên quan