it-swarm-vi.com

Làm thế nào để keygens phần mềm hoạt động?

Tôi đã thấy chúng rất nhiều lần, với nhiều loại phần mềm khác nhau, nhưng một điều tôi luôn tự hỏi, là làm thế nào keygens phần mềm biết khóa nào để tạo. Tôi biết nguyên tắc cơ bản của nó: keygen tìm ở đâu đó trong các tệp cài đặt phần mềm và tạo một khóa khớp với một số tệp được mã hóa cho phép chương trình hoạt động. Nhưng tôi muốn biết làm thế nào họ làm điều đó, và làm thế nào để ngăn chặn nó. Đây thực sự là một câu hỏi nhiều phần.

  1. Hệ thống khóa hoạt động như thế nào? [.__.]
    • Làm thế nào để lập trình viên thường tạo ra phần mềm hoạt động dựa trên khóa. Tôi là một lập trình viên trung gian, nhưng tôi chưa bao giờ học được nhiều khía cạnh bảo mật/chống vi phạm bản quyền của nó. Làm thế nào để họ tạo và/hoặc nhận ra các phím để cho phép phần mềm bắt đầu hoạt động?
  2. Nơi nào thường tìm thấy "tệp được mã hóa" này?

    • Có phải trong một tệp vật lý trên máy tính hoặc cơ sở dữ liệu của trang web mà nó gọi không?
  3. Các công ty làm gì để mã hóa tập tin đó?

    • Tôi sẽ nhấn mạnh rằng khóa phải được lưu trữ không chỉ là bản rõ, họ làm gì để giữ cho nó được mã hóa?
  4. Keygen sử dụng phương thức nào để tạo khóa? [.__.]
    • Tôi đã chơi xung quanh một phụ đề với một số phần mềm bẻ khóa mật khẩu như "cain & could" và tôi đã nhận thấy rằng với một số phương pháp bẻ khóa mật khẩu, chẳng hạn như brute-force và dictionary, nó mang lại cho tôi ETA trong nhiều năm, tuy nhiên keygens dường như tạo khóa ngay lập tức. Có phải họ đang sử dụng các phương pháp khác nhau hoàn toàn?
  5. Các công ty có thể thực hiện các biện pháp nào để ngăn chặn việc sử dụng keygens trong phần mềm lậu? [.__.]
    • Tôi đang bắt đầu viết phần mềm của riêng mình để được phân phối, tôi đã tự hỏi những phương pháp hiện có, dễ dàng mà tôi có thể sử dụng để ngăn chặn
11
Ephraim

Hệ thống khóa hoạt động như thế nào?

Vâng, nó phụ thuộc vào có nhiều triển khai. Một trong số chúng đã được thảo luận trong stackoverflow :

Giả sử bạn không muốn thực hiện một bản dựng đặc biệt cho mỗi người dùng, thì:

  • Tạo cho mình một chìa khóa bí mật cho sản phẩm
  • Lấy tên người dùng
  • Liên kết tên người dùng và khóa bí mật và băm với (ví dụ) SHA1
  • Giải nén băm SHA1 dưới dạng một chuỗi ký tự chữ và số. Đây là "Khóa sản phẩm" của từng người dùng
  • Trong chương trình, thực hiện cùng một hàm băm và so sánh với khóa sản phẩm. Nếu bằng nhau, OK.

Lưu ý: mọi sơ đồ chính có thể bị bẻ khóa. Đó là lý do tại sao rất nhiều công cụ sử dụng xác nhận trực tuyến.

Nó thường tìm ở đâu để tìm "tập tin được mã hóa" này?

Thường không có tệp được mã hóa khi sử dụng phương pháp trước đó. Có thể có các phương pháp khác để tạo khóa bằng thuật toán khác, nhưng chúng không bao giờ lưu trữ tất cả các khóa trong chương trình.

Các công ty làm gì để mã hóa tập tin đó?

Chà, nếu bạn đang đề cập đến việc lưu trữ khóa mà người dùng đã nhập vào hệ thống của bạn, thì đôi khi nó được lưu lại văn bản gốc trong một tệp cấu hình. Đôi khi, họ sử dụng mã hóa đối xứng (như AES) với khóa được mã hóa cứng để mã hóa tệp này.

Keygen sử dụng phương pháp nào để tạo khóa?

Bởi vì có những người có thể tìm ra chương trình mà chương trình sử dụng và chỉ thực hiện nó trong keygen của riêng họ.

Các công ty có thể thực hiện những biện pháp nào để ngăn chặn việc sử dụng keygens trong phần mềm lậu?

Kích hoạt trực tuyến, nhưng khách hàng càng khó sử dụng phần mềm thì bạn càng ít có khả năng họ sẽ mua nó. Cuối cùng, không có một phần mềm nào là chống vi phạm bản quyền . Nếu có, các công ty như Adobe và Microsoft sẽ thuê bạn ngay lập tức.

8
Lucas Kauffman

Số sê-ri cho phần mềm máy tính có một mẫu cụ thể, cho phép trình cài đặt hoặc ứng dụng phát hiện xem đó có phải là khóa hợp pháp hay không. Một ví dụ rất đơn giản là mỗi số sê-ri có chính xác ba lần xuất hiện của số 5 trong đó - vì vậy 1932-1253-2319-5512 sẽ là một số sê-ri hoạt động. Trong một kịch bản đời thực, mối quan hệ giữa các con số dĩ nhiên sẽ phức tạp hơn.

Phần mềm vận chuyển chứa một thuật toán kiểm tra xem serial có hợp lệ hay không. Người tạo phần mềm có một phần mềm cho phép anh ta tạo số sê-ri cho sản phẩm.

Để tạo một keygen, một nhóm cracker (những người chuyên phá vỡ các sơ đồ bảo vệ bản sao) phân tích chương trình thực thi để tìm phần kiểm tra nối tiếp. Sau đó, họ xây dựng lại thuật toán để tạo ra các chuỗi dựa trên mã kiểm tra. Keygen đã hoàn thành là một ứng dụng áp dụng thuật toán để tạo số sê-ri.

Đôi khi các keygens không thực sự chứa thuật toán, mà là một danh sách các số sê-ri hợp lệ, trong đó một số được chọn ngẫu nhiên.

Keygen cho Windows xp trong các gói dịch vụ sau này phức tạp hơn, bởi vì Microsoft đã kiểm tra không chỉ liệu một khóa có hợp lệ hay không, mà còn được bán với một bản sao và chưa được sử dụng trên một máy tính khác. Keygen đã gửi yêu cầu hàng loạt đến máy chủ của Microsoft để kiểm tra xem đó có phải là khóa hoạt động hay không.

6
Anna Ashmore

Hệ thống khóa hoạt động như thế nào?

Ở dạng phổ biến nhất if (some-complex-or-not conditions-here) then (OK). Sự phức tạp của điều kiện kiểm tra chỉ giới hạn bởi tưởng tượng của bạn

Nó thường tìm ở đâu để tìm "tập tin được mã hóa" này?

không có bất kỳ mẫu phổ biến nào, nơi và cách lưu trữ và đọc thông tin này. Nó có thể là tệp và hoàn toàn không phải là tệp (khóa đăng ký, ví dụ, trong trường hợp Windows)

Các công ty làm gì để mã hóa tập tin đó?

Thực tế thông thường - không bao giờ lưu trữ dưới dạng văn bản thuần túy, sử dụng các phương pháp chuyển đổi không thể đảo ngược trước khi lưu trữ, nhưng - với kích hoạt khóa, ngay cả lưu trữ khóa văn bản đơn giản cũng có thể chống đạn: khóa bị đánh cắp, một khi được kích hoạt, sẽ không hoạt động từ đăng ký thứ hai (có thể sử dụng được và phương pháp có thể hack, nhưng có thể hoạt động ở một mức độ nào đó)

Keygen sử dụng phương pháp nào để tạo khóa?

Reverse-engineered phương pháp kiểm tra tính hợp lệ trợ giúp trong kỹ thuật đảo ngược thuật toán tạo key-data

Các công ty có thể thực hiện những biện pháp nào để ngăn chặn việc sử dụng keygens trong phần mềm lậu?

Phi kỹ thuật - giá cả hợp lý cho sản phẩm. Trong trường hợp này, keygens sẽ (có thể) xuất hiện bằng mọi cách, nhưng nó sẽ "vui hơn" game cho các nhóm crack, hơn được yêu cầ (và đã sử dụng với tác động trực tiếp) bởi người tiêu dùng đại chúng sản phẩm.

Về mặt kỹ thuật - ngăn không cho chạy theo trình gỡ lỗi, kết hợp với mã được mã hóa trong tệp (với giải mã trong bộ nhớ, có thể - nhiều lớp cho một số phần nhạy cảm), chuỗi thao tác bộ nhớ, xác minh trực tuyến các khóa trong bộ nhớ ngoài (xem các phương pháp trước đó, cũng được áp dụng riêng cho người kiểm tra) ...

2
Lazy Badger