blob: 4ca3ee29839be08a503ecd67f0fde0a103557d24 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
#include "HASHCrypt.hpp"
//Constructeur
HASHCrypt::HASHCrypt(std::string chain){
this->chain=chain; //Initialisation de l'attribut chain
}
//Destructeur
HASHCrypt::~HASHCrypt(){
}
//Retourne la somme de controle MD5 sur 32 bits de l'attribut chain
std::string HASHCrypt::getMD5_32(){
//Calcule de la somme de controle MD5 dans un type byte à partir de l'attribut chain
CryptoPP::Weak1::MD5 hash;
byte digest[ CryptoPP::Weak1::MD5::DIGESTSIZE ];
hash.CalculateDigest( digest, (byte*) this->chain.c_str(), this->chain.length() );
//Convertion du hash en std::string
CryptoPP::HexEncoder encoder;
std::string output;
encoder.Attach( new CryptoPP::StringSink( output ) );
encoder.Put( digest, sizeof(digest) );
encoder.MessageEnd();
//Retourne la sortie de la convertion
return output;
}
//Retourne la somme de controle MD5 sur 128 bits de l'attribut chain
std::string HASHCrypt::getMD5_128(){
//Calcule de la somme de controle MD5 dans un type byte à partir de l'attribut chain
CryptoPP::Weak1::MD5 hash;
byte digest[ CryptoPP::Weak1::MD5::DIGESTSIZE * 4 ];
hash.CalculateDigest( digest, (byte*) this->chain.c_str(), this->chain.length() );
//Convertion du hash en std::string
CryptoPP::HexEncoder encoder;
std::string output;
encoder.Attach( new CryptoPP::StringSink( output ) );
encoder.Put( digest, sizeof(digest) );
encoder.MessageEnd();
//Retourne la sortie de la convertion
return output;
}
|