Register for your free account! | Forgot your password?

You last visited: Today at 02:50

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[c#]hwid

Discussion on [c#]hwid within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1

 
itelligence's Avatar
 
elite*gold: 0
The Black Market: 110/0/0
Join Date: Oct 2007
Posts: 1,594
Received Thanks: 119
[c#]hwid

ich möchte gerne die hwid auslesen lassen,
habe bisher etwas gefunden:
Code:
            ManagementObjectCollection mbsList = null;
            ManagementObjectSearcher mbs = new ManagementObjectSearcher("Select * From Win32_processor");
            mbsList = mbs.Get();
            string id="";
            foreach (ManagementObject mo in mbsList)
            {
            id = mo["ProcessorID"].ToString();
            }
damit bekomme ich aber nur die prozessorid raus:

in meinem fall:
XXXXXBFF000206A7

wenn ich jetzt aber zb. an einen ersteller eines programmes meine hwid senden muss, sieht diese so aus:

XXXXXBFF000206A7XXXXXXXXXXXXXXXX-XXXXXXXXXX

habs mal verfällscht...

wie bekomme dich die volle hwid raus, bzw aus was setzt sie sich zusammen?
itelligence is offline  
Old 01/13/2013, 21:53   #2
 
tolio's Avatar
 
elite*gold: 2932
The Black Market: 169/1/0
Join Date: Oct 2009
Posts: 6,966
Received Thanks: 1,097
es gibt keine "volle hwid"
jeder programmierer kann sicher selber was aussuchen was er nimmt zum auslesen, das ist ja das schöne am programmieren
tolio is offline  
Thanks
2 Users
Old 01/14/2013, 15:05   #3
 
coladose's Avatar
 
elite*gold: 106
Join Date: Jun 2010
Posts: 2,256
Received Thanks: 3,867
für gewöhnlich hashd man die Prozessor ID in md5.
Deswegen wird es auch dementsprechend länger..
coladose is offline  
Old 01/14/2013, 15:26   #4
 
'Heaven.'s Avatar
 
elite*gold: 1
The Black Market: 331/0/0
Join Date: Jun 2012
Posts: 5,819
Received Thanks: 3,200
Niemals nur die ProzessorID hashen....Dann können hinterher 30 Leute den nutzen, weil sie einen prozessor aus der selben serie haben...

man nimmt eig bios,mainboard und prozessor und nimmt den sha1 hash
'Heaven. is offline  
Old 01/14/2013, 17:15   #5
 
elite*gold: 10
Join Date: Aug 2012
Posts: 813
Received Thanks: 106
Quote:
Originally Posted by 'Heaven. View Post
Niemals nur die ProzessorID hashen....Dann können hinterher 30 Leute den nutzen, weil sie einen prozessor aus der selben serie haben...

man nimmt eig bios,mainboard und prozessor und nimmt den sha1 hash
1) Was meinst du mit Bios?
2) Wie kannst du das Bios auslesen?
3) Was meinst du mit Mainboard?
4) Wie kannst du das Mainboard auslesen?

Ja, ich weiß, was das Bios und ein Mainboard ist, aber was davon willst du verwenden und wie kommst du an diese Infos?
(Bessere Erklärung zu solchen Sachen währe gut, da diese Dinge nicht nur 1 Info enthalten bzw. besitzen, sondern mehrere)
GodHacker is offline  
Old 01/14/2013, 18:57   #6
 
'Heaven.'s Avatar
 
elite*gold: 1
The Black Market: 331/0/0
Join Date: Jun 2012
Posts: 5,819
Received Thanks: 3,200
Code:
Public Function GetHWID() As String 
    Dim stringBuilder As StringBuilder = New StringBuilder()
    Try
        Dim managementObjectSearcher As ManagementObjectSearcher = New ManagementObjectSearcher("root\CIMV2", "SELECT * FROM Win32_BIOS")
        For Each managementObject As ManagementObject In managementObjectSearcher.Get()
            stringBuilder.Append(managementObject("SerialNumber"))
        NextCatch (managementException1 As ManagementException)
        Dim managementException As ManagementException = managementException1
        Console.WriteLine(String.Concat("An error occurred while querying for WMI data: ", managementException.Message))
    End Try
    Try
        Dim managementObjectSearcher1 As ManagementObjectSearcher = New ManagementObjectSearcher("root\CIMV2", "SELECT * FROM Win32_OperatingSystem")
        For Each managementObject1 As ManagementObject In managementObjectSearcher1.Get()
            stringBuilder.Append(managementObject1("SerialNumber"))
        NextCatch (managementException3 As ManagementException)
        Dim managementException2 As ManagementException = managementException3
        Console.WriteLine(String.Concat("An error occurred while querying for WMI data: ", managementException2.Message))
    End Try
    Dim sHA256CryptoServiceProvider As HashAlgorithm = New SHA256CryptoServiceProvider()
    sHA256CryptoServiceProvider.Initialize()
    Dim numArray As Byte() = sHA256CryptoServiceProvider.ComputeHash(Encoding.Unicode.GetBytes(stringBuilder.ToString()))
    Dim str As String = BitConverter.ToString(numArray)
    str = str.Replace("-", String.Empty)
    str = str.ToLower()
    Return str
End Function
'Heaven. is offline  
Thanks
2 Users
Old 01/14/2013, 18:58   #7



 
Shawak's Avatar
 
elite*gold: 0
The Black Market: 259/0/0
Join Date: Apr 2010
Posts: 10,289
Received Thanks: 3,613
Code:
    Private Function getHWID() As String
        Return MD5CalcString(GetProcessorId() + "-" + GetVolumeSerial() + "-" + GetMotherBoardID())
    End Function

    Private Function MD5CalcString(ByVal strData As String) As String
        Dim objMD5 As New System.Security.Cryptography.MD5CryptoServiceProvider
        Dim arrData() As Byte
        Dim arrHash() As Byte
        arrData = System.Text.Encoding.UTF8.GetBytes(strData)
        arrHash = objMD5.ComputeHash(arrData)
        objMD5 = Nothing
        Return ByteArrayToString(arrHash)
    End Function

    Private Function ByteArrayToString(ByVal arrInput() As Byte) As String
        Dim strOutput As New System.Text.StringBuilder(arrInput.Length)
        For i As Integer = 0 To arrInput.Length - 1
            strOutput.Append(arrInput(i).ToString("X2"))
        Next
        Return strOutput.ToString().ToLower
    End Function

    Friend Function GetProcessorId() As String
        Dim strProcessorId As String = String.Empty
        Dim query As New SelectQuery("Win32_processor")
        Dim search As New ManagementObjectSearcher(query)
        Dim info As ManagementObject
        For Each info In search.Get()
            strProcessorId = info("processorId").ToString()
        Next
        Return strProcessorId
    End Function

    Friend Function GetVolumeSerial(Optional ByVal strDriveLetter As String = "C") As String
        Dim disk As ManagementObject = New ManagementObject(String.Format("win32_logicaldisk.deviceid=""{0}:""", strDriveLetter))
        disk.Get()
        Return disk("VolumeSerialNumber").ToString()
    End Function

    Friend Function GetMotherBoardID() As String
        Dim strMotherBoardID As String = String.Empty
        Dim query As New SelectQuery("Win32_BaseBoard")
        Dim search As New ManagementObjectSearcher(query)
        Dim info As ManagementObject
        For Each info In search.Get()
            strMotherBoardID = info("SerialNumber").ToString()
        Next
        Return strMotherBoardID
    End Function
Ist VB, hier ein Converter:

Edit: Hmm da war wer schneller.

Lg Shawak
Shawak is offline  
Thanks
2 Users
Old 01/14/2013, 19:06   #8
 
'Heaven.'s Avatar
 
elite*gold: 1
The Black Market: 331/0/0
Join Date: Jun 2012
Posts: 5,819
Received Thanks: 3,200
BTW, wenn du nicht möchtest, dass nach einer neuinstallation von windoof die lizenznichtmehr geht nutz die MAC(von shawak) wenn nicht lass die weg
'Heaven. is offline  
Old 01/14/2013, 21:47   #9
 
tolio's Avatar
 
elite*gold: 2932
The Black Market: 169/1/0
Join Date: Oct 2009
Posts: 6,966
Received Thanks: 1,097
mac nutzen ist in vielerlei hinsicht sehr suboptimal, zb. ich hab an meinem pc zwei ethernet ports und nutze manchmal noch nen wlan stick, dann könnte ich die software nur nutzen wenn ich den netzwerkadapter nutze den ich bei der installtion verwendet hab
@heaven, die mac adresse ist idr hardcoded, jedoch kann die mac adresse wirklich mit leichtigkeit und ohne vorkenntnis gespoofed werden
tolio is offline  
Old 01/14/2013, 22:23   #10



 
Shawak's Avatar
 
elite*gold: 0
The Black Market: 259/0/0
Join Date: Apr 2010
Posts: 10,289
Received Thanks: 3,613
Quote:
Originally Posted by tolio View Post
mac nutzen ist in vielerlei hinsicht sehr suboptimal, zb. ich hab an meinem pc zwei ethernet ports und nutze manchmal noch nen wlan stick, dann könnte ich die software nur nutzen wenn ich den netzwerkadapter nutze den ich bei der installtion verwendet hab
@heaven, die mac adresse ist idr hardcoded, jedoch kann die mac adresse wirklich mit leichtigkeit und ohne vorkenntnis gespoofed werden
Mein Fehler, nutze das Snippet selber nicht und es ist auch schon etwas älter, wäre mir gar nicht aufgefallen.

Danke ich werde es editieren.
Shawak is offline  
Reply


Similar Threads Similar Threads
HWID Generator & Dev-Tools für e*pvp's HWID System
01/28/2011 - Main - 0 Replies
Hier die Downloads passend zum News-Thread, da das Attachen von Daten an News-Threads nicht möglich ist ;) News-Thread: http://www.elitepvpers.com/forum/e-pvp-news-de/981 343-hwid-system-f-r-entwickler.html Credits für den 2. Generator gehen an Anfang! Lg, Ende!



All times are GMT +1. The time now is 02:51.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.