21 void Transform(uint1* buffer);
22 static
void Encode(uint1* Dst, uint4* Src, uint4 Len);
23 static
void Decode(uint4* Dst, uint1* Src, uint4 Len);
24 static
void MemCpy(uint1* Dst, uint1* Src, uint4 Len){
25 for (uint4 ChN=0; ChN<Len; ChN++){Dst[ChN]=Src[ChN];}}
27 for (
uint4 ChN=0; ChN<Len; ChN++){Start[ChN]=Val;}}
39 a+=F(b, c, d)+x+ac; a=RotateLeft(a, s)+b;}
41 a+=G(b, c, d)+x+ac; a=RotateLeft(a, s)+b;}
43 a+=H(b, c, d)+x+ac; a=RotateLeft(a, s)+b;}
45 a+=I(b, c, d)+x+ac; a=RotateLeft(a, s)+b;}
50 TMd5(
const PSIn& SIn){Init(); Add(SIn); Def();}
57 void Add(
uchar* InBf,
const int& InBfL);
58 void Add(
const PSIn& SIn);
62 void GetSigMem(
TMem& Mem)
const;
63 TStr GetSigStr()
const;
98 if (
this!=&Md5Sig){memcpy(CdT, Md5Sig.
CdT, 16);}
return *
this;}
100 return memcmp(CdT, Md5Sig.
CdT, 16)==0;}
102 return memcmp(CdT, Md5Sig.
CdT, 16)==-1;}
104 Assert((0<=CdN)&&(CdN<16));
return CdT[CdN];}
113 memcpy(&UInt, CdT+StartCd,
sizeof(
uint));}
void Save(TSOut &SOut) const
static PSIn New(const TMem &Mem)
static void GG(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac)
bool operator==(const TMd5Sig &Md5Sig) const
static void II(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac)
static PMd5 Load(TSIn &SIn)
static TStr GetMd5SigStr(const TStr &Str)
#define UndefCopyAssign(TNm)
#define ClassTP(TNm, PNm)
static PMd5 New(const PSIn &SIn)
static uint4 I(uint4 x, uint4 y, uint4 z)
static PSIn New(const TStr &Str)
void SaveBf(const void *Bf, const TSize &BfL)
bool operator<(const TMd5Sig &Md5Sig) const
static uint4 H(uint4 x, uint4 y, uint4 z)
TMd5Sig & operator=(const TMd5Sig &Md5Sig)
void GetUInt(const int &StartCd, uint &UInt) const
static TStr GetMd5SigStr(const TMem &Mem)
static uint4 G(uint4 x, uint4 y, uint4 z)
void LoadBf(const void *Bf, const TSize &BfL)
static void FF(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac)
static uint4 F(uint4 x, uint4 y, uint4 z)
TMd5Sig(const TMd5Sig &Md5Sig)
int operator[](const int &CdN) const
static void HH(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac)
static TStr GetMd5SigStr(const PSIn &SIn)
static void MemSet(uint1 *Start, uint1 Val, uint4 Len)
int GetPrimHashCd() const
static uint4 RotateLeft(uint4 x, uint4 n)
Vector is a sequence TVal objects representing an array that can change in size.