Theo những gì thảo luận trên diễn đàn, các bạn đều đồng ý rằng DLL VB6 là khó dịch ngược.
Ngoài ra ở topic
Bước 1 :
Đọc HDD serinumber :
Tham khảo :
Lấy được HDD serinumber, ta sẽ cho nó tìm trên file excel được cất trên google driver xem số HDD serinumber này có xuất hiện trên đó không. Nếu không có thì việc đăng ký sử dụng Tool coi như thất bại.
Nếu tồn tại, sẽ cho tiến hành đăng ký sử dụng Tool.
(Ở bước này nhất thiết yêu cầu người dùng phải có kết nối internet)
Bước 2:
Nếu hư cái số HDD serinumber này mà để lộ liễu,, thì chẳng khác nào bảo người ta, anh chỉ cần can thiệp chèn vô đó ký tự serinumber của anh vào.
Vì vậy cái số này nhất định phải được biến đổi thành một ký tự khác, khó suy luận được ra.
Function mã_hóa:
INPUT: HDD Serinumber
OUTPUT: code_mã_hóa
(Đây là bước quan trọng, có rất nhiều thuật toán để mã hóa chuỗi ký tự).
Bước 3:
Tạo ra file txt công khai mã hóa này, cất cùng thư mục Tool.
Trên đây là ý tưởng, tôi sẽ hiện thực hóa từng bước trong topic này.
(Còn nữa)
Ngoài ra ở topic
Bạn cần đăng nhập để thấy link
(Dự kiến công khai vào ngày 28/10/2021), điều này cho phép chúng ta nghĩ tới việc yêu cầu đăng ký sử dụng Tool, do thuật toán có thể cho vô DLL VB6, là nơi khó bị bẻ.Bước 1 :
Đọc HDD serinumber :
Mã:
Sub test()
Dim s As String
s = GetHDD()
ThisWorkbook.Sheets(1).Cells(1, 1).Value = s
End Sub
Function GetHDD() As String
Dim Wmi As Object, Disks As Object, Disk As Object
Set Wmi = GetObject("winmgmts:{impersonationLevel" & "=impersonate}!root\cimv2")
Set Disks = Wmi.ExecQuery("Select * from Win32_DiskDrive")
For Each Disk In Disks
If Len(Disk.SerialNumber) > Len(GetSerialNumber) Then GetSerialNumber = Disk.SerialNumber
Next
Set Disk = Nothing
Set Disks = Nothing
Set Wmi = Nothing
GetHDD = GetSerialNumber
End Function
Mã:
https://stackoverflow.com/questions/64293004/protect-excel-of-the-method-vba-hard-drive-serial-number
Nếu tồn tại, sẽ cho tiến hành đăng ký sử dụng Tool.
(Ở bước này nhất thiết yêu cầu người dùng phải có kết nối internet)
Bước 2:
Nếu hư cái số HDD serinumber này mà để lộ liễu,, thì chẳng khác nào bảo người ta, anh chỉ cần can thiệp chèn vô đó ký tự serinumber của anh vào.
Vì vậy cái số này nhất định phải được biến đổi thành một ký tự khác, khó suy luận được ra.
Function mã_hóa:
INPUT: HDD Serinumber
OUTPUT: code_mã_hóa
(Đây là bước quan trọng, có rất nhiều thuật toán để mã hóa chuỗi ký tự).
Bước 3:
Tạo ra file txt công khai mã hóa này, cất cùng thư mục Tool.
Bạn cần đăng nhập để thấy đính kèm
Trên đây là ý tưởng, tôi sẽ hiện thực hóa từng bước trong topic này.
(Còn nữa)