windows der svarer til denne bash-kommando, der bruger/dev/urandom

Indlæg af Hanne Mølgaard Plasc

Problem



Er der en simpel Windows-ækvivalent for denne bash-kommando:


head -c 500 /dev/urandom | tr -dc abcdefghijklmnopqrstuvwxyz | head -c 9; echo


Jeg tror, ​​at hovedproblemet er/dev/urandom, da jeg har hørt om CryptoAPI, men jeg ved ikke, om det er kryptografisk sikkert nok.


EDIT: Beklager, koden bruges i et php script, og \%s repræsenterer en strengsubstitution; Jeg har glemt at gøre denne substitution, da jeg stillede spørgsmålet. Fast.

Bedste reference


Modtaget fra RFC 4086:



   7.1.3. Windows CryptGenRandom

  
  Microsofts henstilling til brugere af den meget udbredte Windows
  operativsystemet er generelt at bruge CryptGenRandom pseudo-tilfældige
  Nummergenerering opkald med CryptAPI kryptografisk service
  udbyder. Dette tager et håndtag til en kryptografisk tjenesteudbyder
  bibliotek, en peger til en buffer, som den, der ringer op, kan give
  entropi og i hvilken den genererede pseudo-tilfældighed returneres,
  og en indikation af hvor mange oktets tilfældighed der ønskes.

  
  Windows CryptAPI kryptografiske tjenesteudbyder opbevarer et frø
  tilstand variabel med hver bruger. Når CryptGenRandom kaldes, dette
  er kombineret med enhver tilfældighed i opkaldet og med forskellige
  system- og brugerdata såsom proces-id, tråd-id, systemur,
  systemtid, systemtæller, hukommelsesstatus, gratis diskklynger og
  hashed bruger miljø blok. Disse data er alle fodret til SHA-1 og
  udgangen bruges til at udsende en RC4-tastestrøm. Den nøgle strøm er
  bruges til at producere de pseudo-tilfældige data, der anmodes om og til at opdatere
  brugerens frøstatstil variabel.

  
  Brugere af Windows '.NET' vil nok finde det lettere at bruge
  RNGCryptoServiceProvider.GetBytes metode grænseflade.