Вот крч.
Код
Dictionary<string, string> ids = new Dictionary<string, string>();
ManagementObjectSearcher searcher;
//процессор
searcher = new ManagementObjectSearcher("root\\CIMV2",
"SELECT * FROM Win32_Processor");
foreach (ManagementObject queryObj in searcher.Get())
ids.Add("ProcessorId", queryObj["ProcessorId"].ToString());
searcher = new ManagementObjectSearcher("root\\CIMV2",
"SELECT * FROM Win32_SoundDevice");
foreach (ManagementObject queryObj in searcher.Get())
ids.Add("SoundCardID", queryObj["DeviceID"].ToString());
string key = "";
foreach (var x in ids)
{
//richTextBox1.Text += x.Key + ": " + x.Value + "\r\n";
key += x.Value;
}