HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Alternatív egyedi jelszó-generálás


Példaprogram letöltése

8418 bájt

Bizonyára sok esetben van szükség arra, hogy a felhasználói munkamenetek egyediségének biztosítására – legyen az beléptetés, vagy adatelérés – valamilyen egyedi azonosítót adjunk az adott folyamatnak. Cikkünkben bemutatunk egy ötletes megoldást arra vonatkozóan, hogy miként generálhatunk egy egyedi titkos kódot úgy, hogy elszakadunk a hagyományos véletlen-szám generátortól.

A kulcsgenerálással kapcsolatban valószínűleg mindenkinek a véletlen-szám generátor jut eszébe, hiszen kézenfekvő, hogy valamilyen egyedi számsor előállítására ennek beépített algoritmusa a legmegfelelőbb.
Van azonban egy probléma. A véletlen-szám generátor a .NET-ben úgy működik, hogy egyedi számsort képez ugyan, de ha induló értékként mindig ugyanazt a számot kapja meg, a generált számsor is ugyanaz marad. A számsor frissítéséhez újra inicializálni kell a generátort.
A mellékelt alkalmazásban arra mutatunk egy példát, hogy miként lehet titkos kulcsot, vagyis egy tetszőleges, egyedi számláncot generálni az egér mozgásának felhasználásával.
A példában egy, a Form-ra feltett GroupBox kontrollal kijelöltünk egy kliensterületet, amin belül figyelembe vesszük az egér mozgását. A GroupBox kontrolhoz így rendeltünk egy eseménykezelőt az egérmozgás eseményének kezelésére:
this.client.MouseMove += new System.Windows.Forms.MouseEventHandler(this.client_MouseMove);
Az eseménykezelő függvény paramétere egy MouseEventArgs típusú objektum, mely sok egyéb információ mellett tartalmazza a terület fölött tartózkodó egér pozíciójának koordinátáit, melyeket most felhasználunk a kulcs elkészítéséhez úgy, hogy az x koordinátákat hozzáadjuk, az y koordinátákat megszorozzuk a kulcs aktuális értékével. Természetesen a feldolgozó algoritmus tetszőleges lehet:
private void client_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
  ...
  Key += e.X;
  Key *= e.Y;  
A Form-ra feltettünk egy ProgressBar kontrolt, hogy jelezzük a hátralévő időt (mozgásszámot), amennyi még szükséges a teljes kód elkészítéséhez. A ProgressBar kontrol indikátorának mozgatásához meghívjuk PerformStep metódusát:
pb.PerformStep();
}
Az elkészült kódot azután bármire felhasználhatjuk. Azonos kód generálása szinte kizárt.

Cikksorozat

#IDKategóriaCikk címeSorozat
4483WindowsSzoftverfrissítő szolgáltatások1. rész
4536WindowsA SUS szerver telepítése2. rész


Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2002 évkönyv 721. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |