System.Hash.THashMD5
Delphi
THashMD5 = record
C++
struct DECLSPEC_DRECORD THashMD5
{
private:
typedef System::StaticArray<unsigned, 16> TContextState;
typedef System::StaticArray<System::Byte, 64> TContextBuffer;
private:
TContextBuffer FPadding;
System::StaticArray<unsigned, 4> FContextState;
System::StaticArray<unsigned, 2> FContextCount;
TContextBuffer FContextBuffer;
bool FFinalized;
void __fastcall Transform(const System::PByte ABlock, int AShift);
void __fastcall Decode(const System::PCardinal Dst, const System::PByte Src, int Len, int AShift);
void __fastcall Encode(const System::PByte Dst, const System::PCardinal Src, int Len);
void __fastcall FinalizeHash();
void __fastcall Update(const System::PByte AData, unsigned ALength)/* overload */;
System::Sysutils::TBytes __fastcall GetDigest();
public:
static THashMD5 __fastcall Create();
void __fastcall Reset();
void __fastcall Update(const void *AData, unsigned ALength)/* overload */;
void __fastcall Update(const System::Sysutils::TBytes AData, unsigned ALength = (unsigned)(0x0))/* overload */;
void __fastcall Update(const System::UnicodeString Input)/* overload */;
int __fastcall GetBlockSize();
int __fastcall GetHashSize();
System::Sysutils::TBytes __fastcall HashAsBytes();
System::UnicodeString __fastcall HashAsString();
static System::Sysutils::TBytes __fastcall GetHashBytes(const System::UnicodeString AData)/* overload */;
static System::UnicodeString __fastcall GetHashString(const System::UnicodeString AString)/* overload */;
static System::Sysutils::TBytes __fastcall GetHashBytes(System::Classes::TStream* const AStream)/* overload */;
static System::UnicodeString __fastcall GetHashString(System::Classes::TStream* const AStream)/* overload */;
static System::Sysutils::TBytes __fastcall GetHashBytesFromFile(const System::Sysutils::TFileName AFileName);
static System::UnicodeString __fastcall GetHashStringFromFile(const System::Sysutils::TFileName AFileName);
static System::UnicodeString __fastcall GetHMAC(const System::UnicodeString AData, const System::UnicodeString AKey);
static System::Sysutils::TBytes __fastcall GetHMACAsBytes(const System::UnicodeString AData, const System::UnicodeString AKey)/* overload */;
static System::Sysutils::TBytes __fastcall GetHMACAsBytes(const System::UnicodeString AData, const System::Sysutils::TBytes AKey)/* overload */;
static System::Sysutils::TBytes __fastcall GetHMACAsBytes(const System::Sysutils::TBytes AData, const System::UnicodeString AKey)/* overload */;
static System::Sysutils::TBytes __fastcall GetHMACAsBytes(const System::Sysutils::TBytes AData, const System::Sysutils::TBytes AKey)/* overload */;
};
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
record struct |
public | System.Hash.pas System.Hash.hpp |
System.Hash | System.Hash |
Description
Enregistrement qui implémente le type de hachage MD5.
THashMD5 fournit des méthodes comme :
- Update : met à jour la valeur de hachage avec les données fournies.
- GetHashString : renvoie la valeur de hachage de la chaîne fournie.
- GetHashStringFromFile : renvoie la valeur hash du fichier fourni.
- GetHMAC : renvoie une représentation chaîne associée avec l'authentification HMAC (code d'authentification de message basé sur le hachage).
Voir aussi
- MD5 (EN)
- Hash-based message authentication code (EN)
- Cryptographic hash function (EN)
- Hash function (EN)