phoemur
(usa Debian)
Enviado em 23/06/2018 - 16:06h
Não necessariamente. Pois só vai ser adicionado a funcionalidadeque você utilizar... Em C/C++ você só paga pelo que você usa.
Por exemplo:
teste.cpp
#include <algorithm>
#include <iomanip>
#include <iostream>
#include <iterator>
#include <string>
#include <sstream>
#include <openssl/sha.h>
std::string sha512sum(const std::string& input)
{
unsigned char digest[SHA512_DIGEST_LENGTH];
// compute hash
SHA512(reinterpret_cast<unsigned const char*>(input.c_str()),
input.size(),
&digest[0]);
// convert byte digest to hex representation
std::stringstream ss;
for(int i = 0; i < SHA512_DIGEST_LENGTH; i++) {
ss << std::hex << std::setw(2) << std::setfill('0') << static_cast<int>(digest[i]);
}
return ss.str();
}
int main()
{
using namespace std;
string a {"hello\n"};
cout << a << "\n\nsha512 hash: " << sha512sum(a) << endl;
return 0;
}
g++ -o teste teste.cpp -lcrypto
Aqui o executável tem 22k
[phoemur@notebook_lenovo.darkstar ~/cpp/teste]$g++ -o teste teste.cpp -lcrypto
[phoemur@notebook_lenovo.darkstar ~/cpp/teste]$./teste
hello
sha512 hash: e7c22b994c59d9cf2b48e549b1e24666636045930d3da7c1acb299d1c3b7f931f94aae41edda2c2b207a36e10f8bcb8d45223e54878f5b316e7ce3b6bc019629
[phoemur@notebook_lenovo.darkstar ~/cpp/teste]$echo hello | sha512sum
e7c22b994c59d9cf2b48e549b1e24666636045930d3da7c1acb299d1c3b7f931f94aae41edda2c2b207a36e10f8bcb8d45223e54878f5b316e7ce3b6bc019629 -
[phoemur@notebook_lenovo.darkstar ~/cpp/teste]$ls -lha teste
-rwxr-xr-x 1 phoemur users 22K jun 23 16:02 teste*