API:System.Hash.THashSHA1

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

  THashSHA1 = record
  private
    FHash: array[0..4] of Cardinal;
    FBitLength: Int64;
    FBuffer: array [0..63] of Byte;
    FIndex: Integer;
    FFinalized: Boolean;
    procedure Initialize;
    procedure CheckFinalized;
    procedure Compress;
    procedure Finalize;
    function GetDigest: TBytes;
    procedure Update(const AData: PByte; ALength: Cardinal); overload;
  public
    class function Create: THashSHA1; static; inline;
    procedure Reset; inline;
    procedure Update(const AData; ALength: Cardinal); overload;
    procedure Update(const AData: TBytes; ALength: Cardinal = 0); overload; inline;
    procedure Update(const Input: string); overload; inline;
    function GetBlockSize: Integer; inline;
    function GetHashSize: Integer; inline;
    function HashAsBytes: TBytes; inline;
    function HashAsString: string; inline;
    class function GetHashBytes(const AData: string): TBytes; overload; static;
    class function GetHashString(const AString: string): string; overload; static; inline;
    class function GetHashBytes(const AStream: TStream): TBytes; overload; static;
    class function GetHashString(const AStream: TStream): string; overload; static; inline;
    class function GetHashBytesFromFile(const AFileName: TFileName): TBytes; static;
    class function GetHashStringFromFile(const AFileName: TFileName): string; static; inline;
    class function GetHMAC(const AData, AKey: string): string; static; inline;
    class function GetHMACAsBytes(const AData, AKey: string): TBytes; overload;  static;
    class function GetHMACAsBytes(const AData: string; const AKey: TBytes): TBytes; overload; static;
    class function GetHMACAsBytes(const AData: TBytes; const AKey: string): TBytes; overload; static;
    class function GetHMACAsBytes(const AData, AKey: TBytes): TBytes; overload; static;
  end;

C++

struct DECLSPEC_DRECORD THashSHA1
{
private:
    System::StaticArray<unsigned, 5> FHash;
    __int64 FBitLength;
    System::StaticArray<System::Byte, 64> FBuffer;
    int FIndex;
    bool FFinalized;
    void __fastcall Initialize();
    void __fastcall CheckFinalized();
    void __fastcall Compress();
    void __fastcall Finalize();
#ifndef _WIN64
    System::DynamicArray<System::Byte> __fastcall GetDigest();
#else /* _WIN64 */
    System::TArray__1<System::Byte> __fastcall GetDigest();
#endif /* _WIN64 */
    void __fastcall Update(const System::PByte AData, unsigned ALength)/* overload */;
public:
    static THashSHA1 __fastcall Create();
    void __fastcall Reset();
    void __fastcall Update(const void *AData, unsigned ALength)/* overload */;
#ifndef _WIN64
    void __fastcall Update(const System::DynamicArray<System::Byte> AData, unsigned ALength = (unsigned)(0x0))/* overload */;
#else /* _WIN64 */
    void __fastcall Update(const System::TArray__1<System::Byte> AData, unsigned ALength = (unsigned)(0x0))/* overload */;
#endif /* _WIN64 */
    void __fastcall Update(const System::UnicodeString Input)/* overload */;
    int __fastcall GetBlockSize();
    int __fastcall GetHashSize();
#ifndef _WIN64
    System::DynamicArray<System::Byte> __fastcall HashAsBytes();
#else /* _WIN64 */
    System::TArray__1<System::Byte> __fastcall HashAsBytes();
#endif /* _WIN64 */
    System::UnicodeString __fastcall HashAsString();
#ifndef _WIN64
    static System::DynamicArray<System::Byte> __fastcall GetHashBytes(const System::UnicodeString AData)/* overload */;
#else /* _WIN64 */
    static System::TArray__1<System::Byte> __fastcall GetHashBytes(const System::UnicodeString AData)/* overload */;
#endif /* _WIN64 */
    static System::UnicodeString __fastcall GetHashString(const System::UnicodeString AString)/* overload */;
#ifndef _WIN64
    static System::DynamicArray<System::Byte> __fastcall GetHashBytes(System::Classes::TStream* const AStream)/* overload */;
#else /* _WIN64 */
    static System::TArray__1<System::Byte> __fastcall GetHashBytes(System::Classes::TStream* const AStream)/* overload */;
#endif /* _WIN64 */
    static System::UnicodeString __fastcall GetHashString(System::Classes::TStream* const AStream)/* overload */;
#ifndef _WIN64
    static System::DynamicArray<System::Byte> __fastcall GetHashBytesFromFile(const System::Sysutils::TFileName AFileName);
#else /* _WIN64 */
    static System::TArray__1<System::Byte> __fastcall GetHashBytesFromFile(const System::Sysutils::TFileName AFileName);
#endif /* _WIN64 */
    static System::UnicodeString __fastcall GetHashStringFromFile(const System::Sysutils::TFileName AFileName);
    static System::UnicodeString __fastcall GetHMAC(const System::UnicodeString AData, const System::UnicodeString AKey);
#ifndef _WIN64
    static System::DynamicArray<System::Byte> __fastcall GetHMACAsBytes(const System::UnicodeString AData, const System::UnicodeString AKey)/* overload */;
    static System::DynamicArray<System::Byte> __fastcall GetHMACAsBytes(const System::UnicodeString AData, const System::DynamicArray<System::Byte> AKey)/* overload */;
    static System::DynamicArray<System::Byte> __fastcall GetHMACAsBytes(const System::DynamicArray<System::Byte> AData, const System::UnicodeString AKey)/* overload */;
    static System::DynamicArray<System::Byte> __fastcall GetHMACAsBytes(const System::DynamicArray<System::Byte> AData, const System::DynamicArray<System::Byte> AKey)/* overload */;
#else /* _WIN64 */
    static System::TArray__1<System::Byte> __fastcall GetHMACAsBytes(const System::UnicodeString AData, const System::UnicodeString AKey)/* overload */;
    static System::TArray__1<System::Byte> __fastcall GetHMACAsBytes(const System::UnicodeString AData, const System::TArray__1<System::Byte> AKey)/* overload */;
    static System::TArray__1<System::Byte> __fastcall GetHMACAsBytes(const System::TArray__1<System::Byte> AData, const System::UnicodeString AKey)/* overload */;
    static System::TArray__1<System::Byte> __fastcall GetHMACAsBytes(const System::TArray__1<System::Byte> AData, const System::TArray__1<System::Byte> AKey)/* overload */;
#endif /* _WIN64 */
};

Propriétés

Type Visibilité  Source Unité  Parent
record
struct
public
System.Hash.pas
System.Hash.hpp
System.Hash System.Hash

Description

Embarcadero Technologies ne possède pas d'informations supplémentaires pour le moment. Veuillez nous aider à documenter cette rubrique en utilisant la page Discussion !