Hallo zusammen, ich programmiere für mein Projekt eine HWID sicherung, doch diese funktioniert nicht ganz.
Aus diesem tut:
[Only registered and activated users can see links. Click Here To Register...]
Ich arbeite zusammen mit einen php script, das auf meinen webhost liegt, dieses fragt eine Tabelle auf dem MySQL server ab.
Und wie generiere ich nun richtig den HWID Code zum testen? denn ich denke es liegt daran das ich immer die verschlüsselte HWID eintrage. Fehler?
Vb.net Code:
Aus diesem tut:
[Only registered and activated users can see links. Click Here To Register...]
Ich arbeite zusammen mit einen php script, das auf meinen webhost liegt, dieses fragt eine Tabelle auf dem MySQL server ab.
Und wie generiere ich nun richtig den HWID Code zum testen? denn ich denke es liegt daran das ich immer die verschlüsselte HWID eintrage. Fehler?
Vb.net Code:
Code:
Imports System.Management
Imports System.Security.Cryptography, System.Text
Imports System.Net
Public Class Form1
Dim cpuid As String = ""
Dim mac As String = ""
Dim hwid As String = ""
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
End Sub
Private Function gethwid() As String
Dim cpuInfo As String = String.Empty
Dim mc As New ManagementClass("win32_processor")
Dim moc As ManagementObjectCollection = mc.GetInstances()
For Each mo As ManagementObject In moc
If cpuInfo = "" Then
cpuInfo = mo.Properties("processorID").Value.ToString()
Return cpuInfo
Exit For
End If
Next
End Function
Private Function GetMacAddress() As String
Dim mc As ManagementClass = New ManagementClass("Win32_NetworkAdapterConfiguration")
Dim moc As ManagementObjectCollection = mc.GetInstances()
For Each mo As ManagementObject In moc
If mo.Item("IPEnabled") Then
Return mo.Item("MacAddress").ToString()
End If
Next
End Function
Public Function MD5StringHash(ByVal strString As String) As String
Dim MD5 As New MD5CryptoServiceProvider
Dim Data As Byte()
Dim Result As Byte()
Dim Res As String = ""
Dim Tmp As String = ""
Data = Encoding.ASCII.GetBytes(strString)
Result = MD5.ComputeHash(Data)
For i As Integer = 0 To Result.Length - 1
Tmp = Hex(Result(i))
If Len(Tmp) = 1 Then Tmp = "0" & Tmp
Res += Tmp
Next
Return Res
End Function
Private Sub Ambiance_Toggle1_ToggledChanged() Handles Ambiance_Toggle1.ToggledChanged
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
cpuid = gethwid()
MsgBox (MD5StringHash(cpuid & mac & "KUNDE")
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
cpuid = gethwid()
mac = GetMacAddress()
hwid = MD5StringHash(cpuid & mac & "KUNDE")
Try
Dim client As WebClient = New WebClient()
Dim reply As String = client.DownloadString("http://WEBSITE.de/hwid.php?hwid=" & hwid)
If reply = hwid Then 'wenn HWID richtig ist
MsgBox("Erfolgreich") 'HWID Fenster verstecken
Else
MsgBox("HWID nicht gelistet!", MsgBoxStyle.Critical)
End If
Catch ex As Exception
MsgBox(ex.Message) 'wenn eine Fehler auftritt Fehler anzeigen und Programm beenden
Application.Exit()
End Try
End Sub
End Class
PHP Code:
<?php
$hwid = mysql_real_escape_string($_GET['hwid']); //mysql escape Zeichen hinzufügen gegen sql injection
//$hwid ist die HWID vom Programm
$connectionid = mysql_connect ("localhost", "user", "passwort"); //zur Datenbank verbinden
if (!mysql_select_db ("datenbankname", $connectionid)) //Datenbank auswählen und testen
{
die ("Keine Verbindung zur Datenbank");
}
$user = mysql_query("SELECT hwid FROM tabellenname WHERE hwid='".$hwid."' LIMIT 1") or die(mysql_error()); //wert auslesen, bei denen die HWID der entspricht die das Programm gesendet hat.
$verify = mysql_num_rows($user); //die Zeilen Zählen entweder 1 oder 0
if($verify > 0){ // Wenn es 1 oder mehr Zeilen sind die HWID wieder ausgeben
echo $hwid;
}else{
echo "NO"; //Wenn es 0 Zeilen sind eine NO zurückgeben.
}
?>