[VB.NET] Instructions for creating an application security license product.

Hôm nay, mình xin hướng dẫn các bạn cách tạo License cho ứng dụng. Sau khi, tạo ứng dụng xong, nếu các bạn muốn phân phối ứng dụng của mình theo License product.

Ở bài viết này, mình hướng dẫn các bạn thuật toán cơ bản để bảo mật ứng dụng.
  1. Đầu tiên, mình lấy serial number của HDD. Vì serial number HDD là duy nhất, nên ứng dụng mình cài vào máy tính nào thì chỉ sử dụng được một máy, cài đặt vào ổ cứng khác thì ứng dụng sẽ không hoạt động.
  2. Tạo khóa token (chuỗi bảo mật).
  3. Sử dụng thuật toán SHA1, serial number HDD với token của mình. Bạn có thể sử dụng thuật toán MD5, hay 1 thuật toán mã hóa bất kỳ.

Giao diện ứng dụng:

[VB.NET] INSTRUCTIONS FOR CREATING AN APPLICATION SECURITY LICENSE PRODUCT.
- Để xem Serial number HDD bạn có thể sử dụng câu lệnh MS-DOS
wmic diskdrive get serialnumber

[VB.NET] Instructions for creating an application security license product.

Chúng ta bắt đầu Import thư viện.

Imports System.ComponentModel
Imports System.Text
Imports System.Security.Cryptography
Imports System.Management
Imports System.Data
Imports System.Data.SqlClient

Tiếp theo là hàm lấy Serial number HDD.

 Public Function GetDriveSerialNumber() As String
            Dim hdd As New ManagementObjectSearcher("select * from Win32_DiskDrive")
            Dim hd As ManagementObject
            For Each hd In hdd.Get()
                HDD_Serial = hd("SerialNumber")

            Next
            Return HDD_Serial
 End Function

Tiếp tục hàm mã hóa SHA1.

Public Function SHA1(ByVal number As String) As String
            Dim ASCIIENC As New ASCIIEncoding
            Dim strreturn As String
            strreturn = vbNullString
            Dim bytesourcetxt() As Byte = ASCIIENC.GetBytes(number)
            Dim SHA1Hash As New SHA1CryptoServiceProvider
            Dim bytehash() As Byte = SHA1Hash.ComputeHash(bytesourcetxt)
            For Each b As Byte In bytehash
                strreturn &= b.ToString("X8")
            Next
            Return strreturn
End Function

Viết hàm tạo key license cho software

 Private Sub btnCreateKey_Click(sender As Object, e As EventArgs) Handles btnCreateKey.Click
            Dim key As String
            key = SHA1(serialHDD.Trim & token)
            txtLicenseKey.Text = key
End Sub

Viết hàm đăng ký license cho ứng dụng.

Private Sub SimpleButton1_Click(sender As Object, e As EventArgs) Handles SimpleButton1.Click
            Dim keyLicense As String = txtRegister.Text
            Dim key As String
            key = SHA1(serialHDD.Trim & token)
            If (keyLicense = key) Then
                saveData("update license set licensekey='" & keyLicense & "' where id=1")
                Me.Hide()
                Dim frm As New XtraForm1
                frm.ShowDialog()
            Else
                MessageBox.Show("Key is not Valid!", "ERROR!")
            End If
End Sub

Viết hàm kiểm tra khi chạy ứng dụng, ứng dụng đã được đăng ký hay chưa

 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            lblserialHDD.Text = GetDriveSerialNumber().Trim()
            'get serial key from data
            Dim keyData As String
            keyData = getData()
            'get key from hdd serial with token sha1
            Dim key As String
            key = SHA1(serialHDD.Trim & token)
            If keyData = key Then
                Me.Hide()
                Dim frm As New XtraForm1
                frm.ShowDialog()
            End If
End Sub

VIDEO DEMO ỨNG DỤNG


Chúc các bạn thành công với thủ thuật trên.

PASSWORD UNZIP: HUNG.PRO.VN
Chúc Mọi Người Thành Công Với Thủ Thuật Trên.
Nếu mọi người có vướng mắc gì mình chia sẽ trên trang có thể gửi liên hê cho mình tại đây nhé.
Cảm ơn mọi người đã quan tâm.

1 comment:

Hà Nguyễn IOS said...

dễ bị bẻ khoá, chưa bảo mật tốt lắm.

All Right Reserved © 2015 By Hung Pro VN