System.Hash a System.NetEncoding

vložil Radek Červinka 6. června 2017 00:17

Předpokládám, že ne všichni sledují všechny nové soubory v instalaci Delphi a tak bych rád upozornil na dvě jednotky z posledních verzí: System.Hash a System.NetEncoding a chtělo by se říct konečně.

První tj. System.Hash přináší rozumné algoritmy (a pro jistotu i MD5): tj. THashMD5, THashSHA1 a THashSHA2 (no proto) a jako plus THashBobJenkins. Všechno je deklarované jako record a vstupem může být TBytes, string nebo TStream, případně přímo soubor (v poslední verzi).

Druhá jednotka pak třídu TNetEncoding kde jsou hlavní tři singletony:

  TNetEncoding = class
…
    class property Base64: TNetEncoding read GetBase64Encoding;
    class property HTML: TNetEncoding read GetHTMLEncoding;
    class property URL: TURLEncoding read GetURLEncoding;
  end;

Použití je celkem přímočaré:

var
  oSha2: THashSHA2; //< record
  by: TBytes;
begin
  oSha2 := THashSHA2.Create(SHA256); 
  by := oSha2.GetHashBytes(Memo1.Text);
  Memo2.Text := TNetEncoding.Base64.EncodeBytesToString(by);

Snad to někomu zjednoduší kód.


Nabízíme Delphi školení a konzultace na různá témata, primárně ve Vaší firmě.

Tagy:

Novinky v Delphi

Komentáře

6.6.2017 16:04:36 #

bullhead

...když už (a souhlasím že "konečně") to udělali a nemusíme dělat/používat své knihovny, měli se zamyslet a udělat i  "Base64url" když už je to "NET" knihovna, stálo by je to pár řádků

bullhead

7.6.2017 8:29:58 #

JaroB.

Ono je to asi už ve verzích Delphi XE8 a možná i XE7

JaroB.

7.6.2017 10:49:43 #

radekc

Proto jsem psal z posledních verzí - ony se ty třídy rozšiřují.

radekc

Komentování ukončeno

Naše nabídka

Partial English version.

MVP
Ing. Radek Červinka - Embarcadero MVP
profil na linkedin, Twitter:@delphicz

Nabízím placené poradenství a konzultace v oblasti programování a vývoje SW.
Dále nabízíme i vývoj speciálního software na zakázku.

Neváhejte nás kontaktovat (i ohledně reklamy nebo burzy práce).

Pokud chcete podpořit tento server libovolnou částkou, můžete použít PayPal. Moc děkuji.

Delphi Certified Developer

O Delphi.cz

Delphi je jediný moderní RAD nástroj podporující tvorbu nativních aplikací pro platformu Win32, Win64 , Mac OSX a na iPhone a Android (s výhledem na další platformy díky FireMonkey) na současném trhu (včetně Windows 8.1).

V současnosti je světová komunita přes dva miliónů vývojářů.

Delphi.cz je nezávislý portál pro uživatele Delphi. Portál není koncipován pro úplné začátečníky, i když i ti se zde nebudou nudit, ale spíše na programátory, kteří již něco znají a chtějí své znalosti dále rozvíjet a sledovat novinky.

Anketa

Poslední komentáře

Comment RSS