Kako saznati ključ sustava Windows 8

U ovom ćemo članku govoriti o tome kako možete saznati Windows 8 tipku s kojom je sustav aktiviran. Podsjetimo da je u sustavu Windows 8, kao i u prethodnim operativnim sustavima Microsoftove obitelji, ključ proizvoda niz od 25 znakova, podijeljen u 5 skupina od po 5 znakova (XXXXX-XXXXX-XXXXX-XXXXX-XXXXX). Ova se tipka koristi za aktiviranje svih verzija sustava Windows 8.

Prilikom aktiviranja sustava Windows 8 morate uzeti u obzir sljedeće točke:

  • Tipka Windows 8 može se koristiti samo za aktiviranje izdanja sustava Windows 8 za koje je namijenjena, a ne za bilo koji drugi (tj., Korištenje tipke Windows 8 Pro neće raditi na aktiviranju Windows 8 kuće).
  • OEM ključ se može koristiti za aktiviranje OEM kopije sustava Windows 8 na istom računalu na kojem je prvo aktiviran, a ni na kojem drugom
  • Ključ maloprodaja Windows 8 možete aktivirati na bilo kojem računalu, ali samo na jednom odjednom

Nakon kupnje maloprodaja U verziji sustava Windows 8, ključ proizvoda dolazi u obliku naljepnice koja se može zalijepiti na sistemsku jedinicu ili prijenosno računalo, ako kupite uređaj s unaprijed instaliranim sustavom Windows 8.,  OEM- ključ će već biti zalijepljen za kućište uređaja. Ova naljepnica se zove Potvrda o autentičnosti (COA).

Međutim, često se dogodi da iz nekog „tragičnog razloga“ tekst na tako licenciranoj naljepnici postane nečitljiv (kava se prosula, protrljala o koljenima, jednostavno izgubila, itd.). Kako u ovom slučaju možete programsko pronaći tipku Windows 8 da biste je kasnije mogli ponovo aktivirati prilikom ponovne instalacije sustava? Pored toga, možda će biti potrebno provjeriti sustav za licenciranje i podudaranje ključa instaliranog u sustavu i ključa na naljepnici.

Aktivacijski ključ sustava Windows 8 sprema se u registar, ali ne u običnom tekstu, već u šifriranom obliku (kodiranje) baza 24). I u principu, može se iz nje izvući, dešifrirati i kopirati na komad papira. Ključni podaci pohranjuju se u ključu registra HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ DigitalProductId, samo je moramo izdvojiti i dešifrirati.

Općenito, aktivirani ključ može se pronaći putem WMI-ja. To možete učiniti bez korištenja programa trećih strana pomoću alata koji su već dostupni u sustavu Windows 8: VBScrit i Powershell. Ispod su oba načina za određivanje ključa sustava Windows 8.

Nabavite ključ za aktivaciju sustava Windows 8 pomoću VBScript

  1. Izradite novu tekstnu datoteku po imenu get_windows_8_key.vbs i spremite ga na radnu površinu
  2. Zalijepite sljedeći kod
    Postavite WshShell = CreateObject ("WScript.Shell") regKey = "HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \" DigitalProductId = WshShell.RegRead (regKey & "DigitalProductId") Win8ProductName = "Windows Product Name:" (regKey & "ProductName") & vbNewLine Win8ProductID = "ID proizvoda za Windows:" & WshShell.RegRead (regKey & "ProductID") & vbNewLine Win8ProductKey = ConvertToKey (DigitalProductId) strProductKey8 WinProductPame8 "WinProductPame8" WinProductPame8 "WinProductPame8" WinProductPame8 "WinProductPame8" WinProductPame8 "WinProductPame8" WinProductPame8 "WinProductPame8" WinProductPame8 "WinProductPame8" WinProductPame8 "WinNroductPame" WinProductPrimerv & Win7Prodaja "WinProductPrime8" WinProductPrime8 "WinProductPrime8" WinProductPrint8Name "Win7ProizvodNamestite" Win7Proizvestite! Win8ProductID & strProductKey MsgBox (Win8ProductKey) MsgBox (Win8ProductID) Funkcija ConvertToKey (regKey) Const KeyOffset = 52 isWin8 = (regKey (66) \ 6) I 1 regKey (66) =) I (i RegHey (66) 2) * 4) j = 24 Chars = "BCDFGHJKMPQRTVWXY2346789" Do Cur = 0 y = 14 Do Cur = Cur * 256 Cur = regKey (y + KeyOffset) + Cur regKey (y + KeyOffset) = (Cur \ 24) Cur = Cur Mod 24 y = y -1 Petlja dok je y> = 0 j = j -1 winKeyOutput = Sredina (Chars, Cur + 1, 1) & winKeyOutput Last = Cur petlja Dok j> = 0 If (is Win8 = 1) Zatim keypart1 = Mid (winKeyOutput, 2, Zadnji) umetnite = "N" winKeyOutput = Zamijenite (winKeyOutput, keypart1, keypart1 i umetnite, 2, 1, 0) Ako je zadnji = 0 Zatim winKeyOutput = umetnite & winKeyOutput Kraj a = Sredina (winKeyOutput, 1, 5) b = Sredina (winKeyOutput, 6, 5) c = Sredina (winKeyOutput, 11, 5) d = Sredina (winKeyOutput, 16, 5) e = Sredina (winKeyOutput, 21, 5) ConvertToKey = a & "-" & b & "-" & c & "-" & d & "-" & e end funkcija
  3. Dvaput kliknite na datoteku nakon čega bi se trebao pojaviti prozor s ključem proizvoda koji se prikazuje u njoj. U našem slučaju sustav se aktivira tipkom Preview Release Preview Windows 8.

Spremna vbs skripta možete preuzeti ovdje: get_windows_8_key_vbs.zip.

Kako saznati ključ za aktiviranje sustava Windows 8 pomoću Powershell-a

Možete pronaći i ključ instaliranog sustava Windows 8 pomoću programa Powerhell.

  1. Stvorite datoteku s nastavkom get_windows_8_key.ps1 i kopirajte u nju sljedeći kôd:
    funkcija Get-WindowsKey ## dobiti ključ proizvoda Windows iz bilo kojeg računala param ($ target = ".") $ hklm = 2147483650 $ regPath = "Softver \ Microsoft \ Windows NT \ CurrentVersion" $ regValue = "DigitalProductId" Foreach ($ target u $ target) $ productKey = $ null $ win32os = $ null $ wmi = [WMIClass] "\\ $ target \ root \ default: stdRegProv" $ data = $ wmi.GetBinaryValue ($ hklm, $ regPath, $ regValue ) $ binArray = ($ data.uValue) [52 ... 66] $ charsArray = "B", "C", "D", "F", "G", "H", "J", "K", "M", "P", "Q", "R", "T", "V", "W", "X", "Y", "2", "3", "4", "6 "," 7 "," 8 "," 9 "## dešifriranje binarnih podataka kodiranih base24 za ($ i = 24; $ i -ge 0; $ i--) $ k = 0 For ($ j = 14; $ j -ge 0; $ j--) $ k = $ k * 256 -bxor $ binArray [$ j] $ binArray [$ j] = [matematika] :: skraćivanje ($ k / 24) $ k = $ k% 24 $ productKey = $ charsArray [$ k] + $ productKey If (($ i% 5 -eq 0) -and ($ i -ne 0)) $ productKey = "-" + $ productKey $ win32os = Get-WmiObject Win32_OperatingSystem -computer $ target $ obj = Novi objekat $ obj | Računalo dodataka za članske bilješke-vrijednost $ target $ obj | Opis dodavanja za članske napomene-vrijednost $ win32os.Caption $ obj | Napomena svojstva Add-Member CSDVersion-vrijednost $ win32os.CSDVersion $ obj | Add-Member Noteproperty OSArch-vrijednost $ win32os.OSArchitecture $ obj | Note-Property BuildNumber BuildNumber-vrijednost $ win32os.BuildNumber $ obj | Registrirano vlasništvo dodavanja za članove - vrijednost $ win32os.RegisteredUser $ obj | NoteID svojstva proizvoda za članove-vrijednost $ win32os.SerialNumber $ obj | Napomena o svojstvu proizvoda za članove ProductKey - vrijednost $ productkey $ obj
  2. Pokrenite naredbeni redak s povlasticama administratora i u njemu pokrenite naredbu powerhell da biste otvorili PoSh konzolu
  3. U prozoru koji se pojavi morate omogućiti izvršavanje nepotpisanih skripti naredbom:
    Set-ExecutionPolicy RemoteSigned
  4. Izvršite naredbe
    Uvozni modul d: \ myfile.ps1; Get-WindowsKey
  5. Kao rezultat toga, ključ instaliranog sustava Windows prikazat će se u prozoru Powershell
  6. Ako trebate pronaći ključeve za aktiviranje na udaljenim računalima, koristite naredbu Get-WindowsKey "computer1", "serv-dc2", "romp-buh02"

Gotova skripta ovlasti je ovdje: get_windows_8_key_ps.zip

Još jedna verzija Powershell skripte iz komentara korisnika akaNeo

   
## Izjava funkcije za dobivanje ključa proizvoda Windows ## Skripta je dizajnirala PowerShell verzija 2.0 (relevantna za sve verzije sustava Windows) Funkcija Get-WindowsProduct ## Funkcija vraća instalirani ključ sustava Windows s bilo kojeg računala na mreži, te kratke informacije o instaliranoj verziji. Poziv bez ključa uključuje pristup param hostu ($ Targets = [System.Net.Dns] :: GetHostName ()) PIDDecoderFromRegistry ($ digitalProductId) Nova varijabla-naziv baze24 -Value 'BCDFGHJKMPQRTVWXY2346789' ## -Od znakova koji se koriste u ključevima proizvoda Windows i Office New-Variable -Name decodeLength -Value 14 ## -Option Const ## Šifrirana duljina ključa Nova varijabla -Name decodeLength -Value 14 ## -Option Const ## Dužina šifriranog ključa proizvod u bajtovima (znakovi su pohranjeni u niblicama) New-Variable -Name decodedKey -Value ([System.String] :: Empty) ## String koji sadrži dešifrirani ključ proizvoda ## Provjera sadrži li ključ proizvoda 'N' (ovo je moguće za Windows 8 Office 15) $ sadržiN = ($ digitalProductId [$ decodeLength] / 8) -bAnd 1 ## ($ digitalProductId [$ decodeLength] -shr 3) -bAnd 1 ## PS 4.0 $ digitalProductId [$ decodeLength] = [System.Byte ] ($ digitalProductId [$ decodeLength] -bAnd [System.Convert] :: ToByte ('F7', 16)) ## 247 ## Sam postupak dešifriranja za ($ i = $ decodeStringLength; $ i -ge 0; $ i--) $ digitMapIndex = 0 za ($ j = $ decodeLength; $ j -ge 0; $ j--) $ digitMapIndex = $ digitMapIndex * 256 -bXor $ digitalProductId [$ j] ## $ digitMapIndex - shl 8 -bXor $ digitalProductId [$ j] ## PS 4.0 $ digitalProductId [$ j] = [System.Math] :: Odrezivanje ($ digitMapIndex / $ base24.Length) $ digitMapIndex = $ digitMapIndex% $ base24.Length $ decodedKey = $ decodedKey.Insert (0, $ base24 [$ digitMapIndex]) ## Brisanje prvog znaka u ključu i stavljanje N u željeni položaj ako ([System.Boolean] $ sadržiN) $ firstLetterIndex = 0 za ($ index = 0; $ index -lt $ decodeStringLength; $ index ++) if ($ decodedKey [0] -ne $ base24 [$ index]) nastavi $ firstLetterIndex = $ index break $ keyWithN = $ decodedKey $ keyWithN = $ keyWithN.Remove (0, 1) $ keyWithN = $ keyWithN.Substring (0, $ firstLetterIndex) + 'N' + $ keyWithN.Remove (0, $ firstLetterIndex) $ decodedKey = $ keyWithN;  $ returnValue = $ decodedKey ## Umetanje crtice svakih pet znakova za ($ t = 20; $ t -ge 5; $ t - = 5) $ returnValue = $ returnValue.Insert ($ t, '-') return $ returnValue ## Main New-Variable -Name hklm -Value 2147483650 ## -Option Const New-Variable -Name regPath -Value 'Software \ Microsoft \ Windows NT \ CurrentVersion' ## -Option Const New-Variable -Name regValue -Value 'DigitalProductId' ## -Option Const Foreach ($ target u $ Targets) $ win32os = $ null $ wmi = [WMIClass] "\\ $ target \ root \ default: stdRegProv" $ binArray = $ wmi.GetBinaryValue ( $ hklm, $ regPath, $ regValue) .uValue [52 ... 66] $ win32os = Get-WmiObject -Class 'Win32_OperatingSystem' -ComputerName $ target $ product = New-Object -TypeName System.Object ## Constructor $ product | Add-Member -MemberType 'NoteProperty' -Name 'Computer' -Value $ target $ product | Add-Member -MemberType 'NoteProperty' -Name 'Caption' -Value $ win32os.Caption $ product | Add-Member -MemberType 'NoteProperty' -Name 'CSDVersion' -Value $ win32os.CSDVersion $ product | Add-Member -MemberType 'NoteProperty' -Name 'OSArch' -Value $ win32os.OSArchitecture $ product | Add-Member -MemberType 'NoteProperty' -Name 'BuildNumber' -Value $ win32os.BuildNumber $ proizvod | Add-Member -MemberType 'NoteProperty' -Name 'RegisteredTo' -Value $ win32os.RegisteredUser $ product | Add-Member -MemberType 'NoteProperty' -Name 'ProductID' -Value $ win32os.SerialNumber $ product | Add-Member -MemberType 'NoteProperty' -Name 'ProductKey' -Value (PIDDecoderFromRegistry ($ binArray)) Pisanje-izlaz $ product ## End Get-WindowsProduct