Download Latest Version HWSLib_1.4_bin.zip (72.6 kB)
Email in envelope

Get an email when there's a new version of HWSLib

Home / OldFiles
Name Modified Size InfoDownloads / Week
Parent folder
readme.txt 2006-01-04 2.6 kB
HWSLib.zip 2005-12-30 4.7 kB
Totals: 2 Items   7.3 kB 0
Íà ñåãîäíÿøíèé äåíü ïîëíàÿ äîêóìåíòàöèÿ ïî áèáëèîòåêå åùå íå íàïèñàíà,
ìîãó ïðåäñòàâèòü ïîêà òîëüêî ïðèìåð ðàáîòû ñ íåé. Áèáëèîòåêà HWSLib
ñîäåðæèò 5 êëàññîâ:

HSystem, HLogger, HEncryptor, HWSLibException, HWSLibInfo.

Äâà ïîñëåäíèõ èñïîëüçóþòñÿ â ñëóæåáíûõ öåëÿõ. Ïðè âûçîâå ëþáîãî ìåòîäà ëþáîãî
êëàññà áèáëèîòåêè â ñëó÷àå âîçíèêíîâåíèÿ èñêëþ÷åíèÿ ãåíåðèðóåòñÿ èñêëþ÷åíèå
HWSLibException ñî ñâîéñòâîì InnerException, ñîäåðæàùèì èñõîäíîå èñêëþ÷åíèå.

Ïðèìåð ðàáîòû:

HSystem

public static void HSystem.OptimizeMemoryUsage();
Ìèíèìèçèðóåò ðàçìåð èñïîëüçóåìîé ïðèëîæåíèåì ïàìÿòè. Èíîãäà ðåçóëüòàò ðàáîòû ìîæåò óäèâèòü.

HLogger

Îñóùåñòâëåíèå ïîòîêîáåçîïàñíîé çàïèñè â òåêñòîâûé ëîã-ôàéë.
Ïðèìåð:

HWSLib.HLogger MyLogger = new HWSLib.HLogger("log.txt");
MyLogger.Log("Log message");
Ýòîò ìåòîä ìîæíî âûçûâàòü îäíîâðåìåííî èç ðàçíûõ ïîòîêîâ,
íèêàêèõ êîëëèçèé íå âîçíèêíåò.

HEncryptor

Øèôðîâàíèå/Äåøèôðîâàíèå/Ïîäïèñü/Ïðîâåðêà ñòðîêè.

Ïðè øèôðîâàíèè èñïîëüçóåòñÿ àëãîðèòì RSA.
Ïðè ïîäïèñè - SHA1RSA

// Ñîçäàåì êëþ÷ äëèíîé 512 áèò
RSACryptoServiceProvider Key = new RSACryptoServiceProvider(512);
Console.Write("Enter text: ");
string data = Console.ReadLine();
// Øèôðóåì ñòðîêó
string encryptedData = HWSLib.HEncryptor.EncryptString(data, Key.ExportParameters(false));
Console.WriteLine("Encrypted text: " + encryptedData);
// Ðàñøèôðîâûâàåì
string decryptedData = HWSLib.HEncryptor.DecryptString(encryptedData, Key.ExportParameters(true));
Console.WriteLine("Decrypted text: " + decryptedData);

Ïðè øèôðîâàíèè òðåáóåòñÿ òîëüêî îòêðûòûé êëþ÷, ïîýòîìó èñïîëüçóåì Key.ExportParameters(false)
äëÿ ïåðåäà÷è êëþ÷à â ôóíêöèþ.

Öèôðîâàÿ ïîäïèñü.
public static string HWSLib.SignString(string toBeSigned, RSAParameters key);
Íà âûõîäå èìååì ïîäïèñü.
Ïðîâåðêà:
public static bool HWSLib.HEncryptor.VerifyStringSignature(string toBeVerified, string signature, RSAParameters key);
Êëþ÷ ñîçäàåòñÿ àíàëîãè÷íî, ïî ïðèìåðó ñ øèôðîâàíèåì.
Ïðè ïîäïèñè çàêðûòûé êëþ÷ èñïîëüçóåòñÿ ïðè âûçîâå ôóíêöèè ñîçäàíèÿ ïîäïèñè.
string signature = HWSLib.HEncryptor.SignString(data, Key.ExportParameters(true));
Ïðè ïðîâåðêå äîñòàòî÷íî îòêðûòîãî êëþ÷à.
bool signatureOk = HWSLib.HEncryptor.VerifyStringSignature(string toBeVerified, string signature, Key.ExportParameters(false));

HWSLibInfo

public string HWSLibInfo.VersionString;
Ñîäåðæèò âåðñèþ ñáîðêè áèáëèîòåêè.

Âñåãäà áóäó ðàä óâèäåòü Âàøè êîììåíòàðèè, ïëîõèå èëè õîðîøèå,
ïî àäðåñó https://sourceforge.net/projects/hwslib

Åñëè áóäóò âîïðîñû - çàäàâàéòå.
Ñ óâàæåíèåì, Åâãåíèé Èëëþøêî.
Source: readme.txt, updated 2006-01-04