# SHA1 해쉬 함수의 경우 crypto++ 라이브러리로 사용 가능 하지만, 간단히(?) boost 라이브러리도 가능.
http://www.cryptopp.com/
#include <iostream> #include <string> using namespace std; #include <boost/uuid/sha1.hpp> #include <boost/format.hpp> string ToSHA1(const string s) { boost::uuids::detail::sha1 sh; sh.process_bytes(s.c_str(), s.length()); unsigned int digest[5]; sh.get_digest(digest); string r; for(int i = 0; i < 5; ++i) { r += str(boost::format("%08x") % digest[i]); } return r; } int main() { try { cout << ToSHA1("abcedfg") << endl; } catch (exception &e) { cout << e.what() << endl; } catch (...) { cout << "unknown error" << endl; } return 0; }
'Dev > Encryption' 카테고리의 다른 글
디피-헬만 키 교환, C++ 예제 (0) | 2014.10.17 |
---|---|
디피-헬만 키 교환 (0) | 2014.10.16 |
SSL 키 교환 방식 (0) | 2014.10.15 |
해쉬 함수 SHA1CryptoServiceProvider, SHA1Managed 차이 (0) | 2014.09.26 |
Crypto++ 사용하기, 예제 (2) | 2009.10.14 |