digest.cpp

Example of cryptographic digest code.

00001 // Copyright (C) 2006-2010 David Sugar, Tycho Softworks.
00002 //
00003 // This file is part of GNU uCommon C++.
00004 //
00005 // GNU uCommon C++ is free software: you can redistribute it and/or modify
00006 // it under the terms of the GNU Lesser General Public License as published
00007 // by the Free Software Foundation, either version 3 of the License, or
00008 // (at your option) any later version.
00009 //
00010 // GNU uCommon C++ is distributed in the hope that it will be useful,
00011 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013 // GNU Lesser General Public License for more details.
00014 //
00015 // You should have received a copy of the GNU Lesser General Public License
00016 // along with GNU uCommon C++.  If not, see <http://www.gnu.org/licenses/>.
00017 
00018 #ifndef DEBUG
00019 #define DEBUG
00020 #endif
00021 
00022 #include <ucommon-config.h>
00023 #include <ucommon/secure.h>
00024 
00025 #include <stdio.h>
00026 
00027 using namespace UCOMMON_NAMESPACE;
00028 
00029 int main(int argc, char **argv)
00030 {
00031     digest_t md5 = "md5";
00032 
00033     md5.puts("this is some text");
00034     assert(eq("684d9d89b9de8178dcd80b7b4d018103", *md5));
00035 
00036     md5 = "sha";
00037     md5.puts("something else");
00038     assert(!eq("684d9d89b9de8178dcd80b7b4d018103", *md5));
00039 
00040     md5 = "md5";
00041     md5.puts("this is some text");
00042     assert(eq("684d9d89b9de8178dcd80b7b4d018103", *md5));
00043 
00044     return 0;
00045 }
00046 

Generated on 14 Aug 2013 for UCommon by  doxygen 1.4.7