2011-01-31 67 views
5

Có thể mã hóa tệp Zip không? Tôi biết mã hóa được sử dụng để tạo các tệp .txt không thể đọc được cho đến khi được giải mã bằng khóa. Mặc dù tôi muốn làm tương tự với một tệp .zip.
Tôi có nhiều tệp tôi muốn người dùng tải xuống từ internet thông qua chương trình tôi đang tạo, vì vậy tôi nghĩ tôi sẽ nén các tệp đó thành tệp .zip và sau đó mã hóa Zip để tăng cường bảo mật. (Tôi không muốn người dùng truy cập tệp trong tệp .zip mà không cần mã nối tiếp)
Tôi sẽ giữ 'khóa nối tiếp' trong cơ sở dữ liệu trực tuyến mà chương trình sẽ nhận được.Làm thế nào để mã hóa một tệp .zip?

Bạn đang thực hiện điều này theo cách sai?

Trả lời

11

Cả hai DotNetZipSharpZipLib hỗ trợ mã hóa nội dung của khóa và hoàn toàn miễn phí.

4

Sử dụng thư viện dotnetzip để thực hiện các thao tác nén/giải nén của bạn.

Nó hỗ trợ mã hóa AES. Từ trang web:

Thư viện hỗ trợ mật khẩu zip, Unicode, ZIP64, đầu vào và đầu ra luồng, mã hóa AES, nhiều mức nén, lưu trữ tự giải nén, lưu trữ được mở rộng và hơn thế nữa.

-1

Có bạn có thể sử dụng thư viện zip của bên thứ ba như được hiển thị bằng các câu trả lời khác, nhưng hãy nhớ rằng phương pháp bảo vệ tệp của bạn là thô sơ ... sẽ không quá khó khăn để quan sát chương trình của bạn hoạt động và khôi phục tệp sau khi chương trình của bạn giải mã chúng một cách hữu ích. Nếu bạn đang lưu trữ khóa như là một hằng số trong chương trình, đó là khá tầm thường để trích xuất là tốt.

Bảo vệ phần mềm là một trường phức tạp và rất khó ngăn người dùng được xác định xem dữ liệu được lưu trữ trên hệ thống mà họ kiểm soát. Phần mềm thương mại có độ dài lớn để ngăn chặn điều này và các giải pháp khá phức tạp. (ví dụ: thử gắn một trình gỡ lỗi cho Skype và xem điều gì sẽ xảy ra)

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