2011-08-25 36 views
18

Sắp phát hành phiên bản miễn phí của ứng dụng của tôi và tôi đang tìm kiếm mô hình mium miễn phí để cung cấp thêm tùy chọn cho người dùng. Tuy nhiên, tôi chắc chắn lo lắng về việc nó bị sao chép lậu quá nhanh để tôi có thể làm bất cứ điều gì.Bẫy sao chép bảo vệ

Có ai có một số kỹ thuật bảo vệ chống sao chép chất lượng cho Android không? Và tôi không nói về LVL pos được cung cấp. Tôi đang tìm một số bẫy lén lút để phát hiện xem mã của tôi đã bị giả mạo với chưa. Bất kỳ ý tưởng chào đón; gotta làm cho nó đủ cứng trên họ rằng nó chỉ là không có giá trị nó.

Trả lời

16

Nó sẽ chỉ bị lậu nếu nó phổ biến, vì vậy bạn có một chặng đường dài để đi :). Nói chung, obfuscate mã của bạn, không sử dụng LVL như là kể từ khi có những công cụ vô hiệu hóa nó tự động. Không chắc chắn ý tưởng của bạn về 'bẫy lén lút' là gì, nhưng hãy xem this để biết một số ý tưởng về cách bảo vệ ứng dụng của bạn.

Những được đề cập trong đoạn video, nhưng:

  • sử dụng ProGuard để xáo trộn mã của bạn
  • để phát hiện nếu mã của bạn đã được thay đổi, bạn có thể kiểm tra CRC của classes.dex hoặc kiểm tra xem APK đã được ký với chứng chỉ của bạn (nếu ai đó thay đổi mã của bạn, họ sẽ phải từ bỏ nó). Tuy nhiên, công cụ antilvl vô hiệu hóa hiệu quả các API bạn sẽ sử dụng để kiểm tra giả mạo. Vì vậy, bạn cần phải làm điều đó trong mã gốc nếu bạn muốn nó có hiệu quả.
  • không thực hiện kiểm tra khi khởi động, nhưng sau này chúng sẽ khó phát hiện hơn.
  • nếu có thể, có thành phần phía máy chủ để kiểm tra giấy phép/giả mạo của bạn. Hãy suy nghĩ về cách ứng dụng của bạn sẽ hoạt động nếu không có kết nối mạng. Phản hồi của máy chủ bộ nhớ cache? Trong bao lâu? Từ chối truy cập ngay lập tức? Cho phép truy cập luôn?, V.v.
+0

+1 trên vid đó. Nhưng tôi có nghĩa là lén lút bằng cách chỉ cách để ẩn mã mà bạn sử dụng để kiểm tra trong một số khó đọc java. Hoặc các cách để có thể bật quảng cáo sau một thời gian trễ nếu mã của bạn bị phát hiện bị giả mạo với số –

6

Bạn có thể sử dụng ProGuard trong nhật thực để làm xáo trộn mã của bạn. Nó tối ưu hóa, và obfuscates mã của bạn bằng cách loại bỏ mã không sử dụng và đổi tên các lớp học, các lĩnh vực, và phương pháp với tên tối nghĩa ngữ nghĩa. Kết quả là tệp .apk có kích thước nhỏ hơn, đó là khó khăn hơn để đảo ngược kỹ sư. Bằng cách đó, mã của bạn sẽ được chứng minh giả mạo hơn.

tham khảo: developer.android

7

bảo vệ luôn có thể bị phá vỡ, tất cả các bạn có thể làm là làm cho nó khó khăn hơn để phá vỡ. Một điều bạn có thể làm là viết một số phần quan trọng của mã trong C và gọi nó qua NDK. Sau đó, bạn có thể làm một số thử nghiệm trong đó, bởi vì biên dịch lại phần C sẽ khó hơn nhiều so với giải mã bytecode.

+3

. java chắc chắn là ngôn ngữ sai cho điều này, vì nó không thể hiểu được bởi thiết kế. –

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