Chống dịch ngược chương trình mã nguồn .Net Framework bằng Dotfuscator

by My Love

27/12/2019, 2:53 PM   |    27/12/2019, 2:55 PM   |    3.5K   |    0

      Như bạn đã biết, trong ứng dụng C# khi đóng gói để cài đặt mà không thực hiện các biện pháp bảo mật code chống mã hoá, người khác hoàn toàn có thể dễ dàng dịch ngược code để xem được phần lớn các mã code của bạn. Một số phần mềm dịch ngược hay được dùng như ILSpy, vb-decompiler, Net Refector ..v..v..
      Vậy để chống dịch ngược mã nguồn như vậy, hay ít nhất cũng là gây khó khăn cho người muốn dịch ngược mã nguồn có nhiều giải pháp, và Dotfuscator là một giải pháp đơn giản được hỗ trợ tích hợp vào Visual Studio mà bạn có thể sử dụng trước khi thực hiện đóng gói phần mềm. Sở dĩ mình nói là gây khó khăn là bởi vì hầu hết các chương trình đều có thể dịch ngược nếu người dịch có kĩ năng cao.
 

1. Add Dotfuscator vào Visual Studio


       Nếu Visual của bản chưa có Dotfuscator thì cần add vào trước đã.
- Trong Visual studio nhấn Ctrl + Q, sau đó nhập từ khoá Dotfuscator để tìm kiếm và cài đặt (Hình 1)
 

Hình 1

- Tiếp theo ở cửa sổ hiện lên bạn sẽ cần tải về và cài đặt
 

Hình 2

- Trong quá trình cài đặt có thể bạn sẽ phải điền một số thông tin như : Tên, Email. Sau đó có một mã sẽ được gửi về Email của bạn, lấy mã đó để điền vào bước tiếp theo để hoàn tất

- Sau khi cài đặt thành công, bạn vào Tool sẽ có lựa chọn Dotfuscator Community (Hình 3)
 

Hình 3


2. Sử dụng Dotfuscator


        Việc sử dụng Dotfuscator khá đơn giản, đầu tiên vào Tool > PreEmptive Protection - Dotfuscator Community
- Tại giao diện chọn File > New
- Chọn mục Input > sau đó click vào đấu cộng màu xanh (Hình 4)
 
Hình 4

- Một cửa sổ hiện lên, bạn tìm đến file chạy cần mã hoá. Ở ví dụ này mình sử dụng cho một Project trước khi đóng gói phần mềm, nên file chạy sẽ nằm trong thư mục của Project\bin\Debug\FileName.exe

- Chọn xong bạn nhấn Build
 
Hình 5

- Một bảng hiện lên để bạn chọn nơi lưu lại (Hình 5), mặc định sẽ tạo ra một thư mục với tên Dotfuscator trong cùng nơi chứa file chạy của bạn, trong tư mục Dotfuscator đó sẽ chứa file chạy mới được tạo để chống dịch ngược. 
- Lúc này bạn dùng file mới được tạo trong thư mục Dotfuscator để thay thế cho chạy lúc đầu là xong.
- Bạn có thể dùng một số phần mềm như ILSpy, vb-decompiler, Net Refector ..v..v.. để kiểm tra xem file lúc đầu và file sau có khác nhau không nhé.