Guid.NewGuid Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Inicializálja a struktúra új példányát Guid .
public:
static Guid NewGuid();
public static Guid NewGuid();
static member NewGuid : unit -> Guid
Public Shared Function NewGuid () As Guid
Válaszok
Új GUID-objektum.
Példák
Az alábbi példakód két Guid objektum értékeit hozza létre és jeleníti meg.
// Create and display the value of two GUIDs.
Guid g = Guid.NewGuid();
Console.WriteLine(g);
Console.WriteLine(Guid.NewGuid());
// This code example produces a result similar to the following:
// 0f8fad5b-d9cb-469f-a165-70867728950e
// 7c9e6679-7425-40de-944b-e07fc1f90ae7
open System
// Create and display the value of two GUIDs.
let g = Guid.NewGuid()
printfn $"{g}"
printfn $"{Guid.NewGuid()}"
// This code example produces a result similar to the following:
// 0f8fad5b-d9cb-469f-a165-70867728950e
// 7c9e6679-7425-40de-944b-e07fc1f90ae7
' This code example demonstrates the Guid.NewGuid() method.
Class Sample
Public Shared Sub Main()
Dim g As Guid
' Create and display the value of two GUIDs.
g = Guid.NewGuid()
Console.WriteLine(g)
Console.WriteLine(Guid.NewGuid())
End Sub
End Class
'
'This code example produces the following results:
'
'0f8fad5b-d9cb-469f-a165-70867728950e
'7c9e6679-7425-40de-944b-e07fc1f90ae7
'
Megjegyzések
Ez egy kényelmes static módszer, amelyet meghívhat egy új Guid. A metódus létrehoz egy 4-es verziójú univerzálisan egyedi azonosítót (UUID) az RFC 4122, 4.4. A visszaadott Guid érték garantáltan nem egyenlő Guid.Empty.
A Windows ez a függvény a CoCreateGuid függvény hívását csomagolja. A generált GUID 122 bit erős entrópiát tartalmaz.
A nem Windows platformokon a 6. .NET kezdve ez a függvény meghívja az operációs rendszer mögöttes kriptográfiailag biztonságos pszeudo-véletlenszerű számgenerátorát (CSPRNG), hogy 122 bit erős entrópiát generáljon. A .NET korábbi verzióiban az entrópia nem garantáltan CSPRNG-sel jön létre.
Javasoljuk, hogy az alkalmazások ne használják a NewGuid metódust titkosítási célokra. Először is, mivel a 4-es verziójú UUID részben kiszámítható bitmintával rendelkezik, a NewGuid függvény nem szolgálhat megfelelő titkosítási pszeudo-véletlenszerű függvényként (PRF). Ha a NewGuid kimenetét olyan kriptográfiai összetevő kapja meg, amely megköveteli, hogy a bemenetét egy megfelelő PRF hozza létre, előfordulhat, hogy a titkosítási összetevő nem tudja fenntartani a biztonsági tulajdonságait. Másodszor, a NewGuid platformtól függetlenül legfeljebb 122 bit entrópiát használ. Egyes titkosítási összetevők minimális entrópiaszintet határoznak meg a bemeneteiken szabályzatként. Az ilyen szabályzatok gyakran 128 bites vagy annál magasabb minimális entrópiaszintet határoznak meg. A NewGuid kimenetének átadása egy ilyen rutinba sértheti a szabályzatát.
Ha egy alkalmazás titkosítási célból véletlenszerű adatokat igényel, fontolja meg egy statikus módszer használatát az RandomNumberGenerator osztályon. Ez az osztály egy véletlenszerű számgenerátort biztosít, amely alkalmas titkosítási használatra.