guid

Intrebari legate de programarea cu biblioteci precum MFC, ATL, WTL si GDI+.
Post Reply
toderut
Membru
Membru
Posts: 68
Joined: 03 Aug 2009, 11:17
Judet: Bihor

guid

Post by toderut » 15 May 2010, 22:07

ce este guid si cat este de util pt o securizare



User avatar
cristianamarie
Membru++
Membru++
Posts: 480
Joined: 12 Mar 2009, 18:47
Judet: Iaşi
Location: Iasi

Re: guid

Post by cristianamarie » 16 May 2010, 17:50

toderut wrote:ce este guid si cat este de util pt o securizare
globally unique identifier
N-are nici o legatura cu securizarea. Cel putin nu direct. E un pseudo unic 32-bit identifier (in teorie, se poate sa nimeresti un duplicat).

Main use e identification, nu security.
Nuclear launch detected

User avatar
Marius Bancila
Fondator
Fondator
Posts: 2344
Joined: 11 Jul 2007, 11:45
Judet: Timiş
Location: Timisoara
Contact:

Re: guid

Post by Marius Bancila » 20 May 2010, 09:44

O mica precizare, GUID-urile au 128 de biti adica 32 digiti hexa sau 16 bytes.
Marius Bancila
Fondator Codexpert, Microsoft MVP VC++
Site personal | Blog

User avatar
cristianamarie
Membru++
Membru++
Posts: 480
Joined: 12 Mar 2009, 18:47
Judet: Iaşi
Location: Iasi

Re: guid

Post by cristianamarie » 20 May 2010, 11:01

Marius Bancila wrote:O mica precizare, GUID-urile au 128 de biti adica 32 digiti hexa sau 16 bytes.
Corect. 32 character representation (cu tot cu {, } si - sint 38) voiam sa zic, __int128.
Nuclear launch detected

Dragos Cojocari
Membru++
Membru++
Posts: 789
Joined: 11 Jul 2007, 14:11

Re: guid

Post by Dragos Cojocari » 20 May 2010, 13:02

Este API Microsoft cu care sa poti genera programatic GUID-uri? Stiu ca in VS6 era un tool cu care puteai face treaba asta.

User avatar
Silviu Ardelean
Senior
Senior
Posts: 1175
Joined: 12 Jul 2007, 09:22
Judet: Timiş
Location: Timisoara
Contact:

Re: guid

Post by Silviu Ardelean » 20 May 2010, 13:34

Yep! Mai multe detalii, aici.

toderut
Membru
Membru
Posts: 68
Joined: 03 Aug 2009, 11:17
Judet: Bihor

Re: guid

Post by toderut » 20 May 2010, 14:01

Cristianamarie zice:
E un pseudo unic 32-bit identifier (in teorie, se poate sa nimeresti un duplicat)
Intrebare:
Acest pseudocod este legat de ce si este atibuit cui.
Este unic pentru un calculator , pentru un sistem de operare, pentru cine este unic? Ma gandeam sa l folosesc pentru unicitatea lui pentru a destina un soft unui singur calculator definit in mod unic de acest guid.
Multumesc! (in mod sigur am emanat cateva enormitati, dar macar recunosc ):)

User avatar
cristianamarie
Membru++
Membru++
Posts: 480
Joined: 12 Mar 2009, 18:47
Judet: Iaşi
Location: Iasi

Re: guid

Post by cristianamarie » 20 May 2010, 16:02

Dragos Cojocari wrote:Este API Microsoft cu care sa poti genera programatic GUID-uri? Stiu ca in VS6 era un tool cu care puteai face treaba asta.
CoCreateGuid sau UuidCreate.
Prima e ole32.dll, a doua e in rpcrt4.dll.
Nuclear launch detected

Dragos Cojocari
Membru++
Membru++
Posts: 789
Joined: 11 Jul 2007, 14:11

Re: guid

Post by Dragos Cojocari » 20 May 2010, 16:41

Aham, mersi.

User avatar
Marius Bancila
Fondator
Fondator
Posts: 2344
Joined: 11 Jul 2007, 11:45
Judet: Timiş
Location: Timisoara
Contact:

Re: guid

Post by Marius Bancila » 20 May 2010, 19:58

Silviu Ardelean wrote:Yep! Mai multe detalii, aici.
Mai exista si CoCreateGuid.
Marius Bancila
Fondator Codexpert, Microsoft MVP VC++
Site personal | Blog

tudor_t
Membru
Membru
Posts: 112
Joined: 26 Aug 2007, 15:11

Re: guid

Post by tudor_t » 21 May 2010, 10:08

toderut wrote: Acest pseudocod este legat de ce si este atibuit cui.
Este unic pentru un calculator , pentru un sistem de operare, pentru cine este unic? Ma gandeam sa l folosesc pentru unicitatea lui pentru a destina un soft unui singur calculator definit in mod unic de acest guid.
In principiu, este unic "in univers".. Fiind un numar pseudo-aleator, nimeni nu iti garanteaza ca va fi absolut unic, dar probabilitatea este extrem de mica..
(http://blogs.msdn.com/oldnewthing/archi ... 59071.aspx)

Dragos Cojocari
Membru++
Membru++
Posts: 789
Joined: 11 Jul 2007, 14:11

Re: guid

Post by Dragos Cojocari » 21 May 2010, 16:58

tudor_t wrote:
toderut wrote: Acest pseudocod este legat de ce si este atibuit cui.
Este unic pentru un calculator , pentru un sistem de operare, pentru cine este unic? Ma gandeam sa l folosesc pentru unicitatea lui pentru a destina un soft unui singur calculator definit in mod unic de acest guid.
In principiu, este unic "in univers".. Fiind un numar pseudo-aleator, nimeni nu iti garanteaza ca va fi absolut unic, dar probabilitatea este extrem de mica..
(http://blogs.msdn.com/oldnewthing/archi ... 59071.aspx)
As zice ca si mai interesanta e probabilitatea unui conflict. Chiar daca exista acelasi GUID e folosit in 2 sau mai multe aplicatii, probabilitatea ca acele aplicatii sa foloseasca acel GUID ptr schimb de informatii probabil e infima.

tudor_t
Membru
Membru
Posts: 112
Joined: 26 Aug 2007, 15:11

Re: guid

Post by tudor_t » 22 May 2010, 12:40

Dragos Cojocari wrote: Chiar daca exista acelasi GUID e folosit in 2 sau mai multe aplicatii, probabilitatea ca acele aplicatii sa foloseasca acel GUID ptr schimb de informatii probabil e infima.
Riscul (teoretic mai mult) e cand doua instante ale aceleiasi aplicatii client, incearca sa insereze doua inregistrari in aceeasi baza de date/tabele, si primary key-ul e un GUID generat in aplicatiile client - normal, database server-ul va arunca o eroare dar pentru user va fi cam ciudat :) . Oricum, ca sa intample asa ceva ar trebui sa se alinieze cam multe planete - GUID-urile sa fie generate exact in aceeasi milisecunda, cele doua computere client sa aiba placi de retea identice cu acelasi MAC address (modificat manual) (doar daca se foloseste un algoritm mai vechi de generare - V1) etc..

Post Reply