Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

DesCommand.cpp

Go to the documentation of this file.
00001 #ifdef TEST
00002 #include "headers.h"
00003 
00004 static const string desCommandString = "des";
00005 
00006 void
00007 DesCommand::getHtmlInterface(std::ostream& s) {
00008     s << "<h2>DES (Data Encryption Standard)</h2>";
00009     s << "Encrypts and decrypts data in-memory given a key.\n";
00010     beginUl(s);
00011     generateHtmlCmd(s, "Test");
00012     endUl(s);
00013 }
00014 
00015 
00016 string 
00017 DesCommand::getCommandString() {
00018     return desCommandString;
00019 }
00020 
00021 
00022 void
00023 DesCommand::run(std::ostream& s)
00024 {
00025     vector<unsigned char> key(Des::blockSize);
00026     unsigned char src[1024];
00027     unsigned char in[1024];
00028     unsigned char out[1024];
00029     int srclen;
00030     int resultLength;
00031     int i;
00032 
00033     Des des;
00034     
00035     //ssl_init();
00036     
00037     Des::generateRandomKey(&key[0]);
00038     s << "setKey = " << des.setKey(&key[0]) << "\n";
00039     
00040     srclen = 76;
00041     for (i = 0; i < srclen; i++) {
00042         src[i] = '0' + (i % 10);
00043     }
00044 
00045     s << "Encrypting data:\n";
00046     s << "Source data length = " << srclen << "\n";
00047     s << "Source data: ";
00048     s.write((const char*)&src, srclen);
00049     s << "\n";
00050 
00051     resultLength = des.encrypt(src, srclen, out);
00052     s << "Encrytped data length = " << resultLength << "\n";
00053     s << "Encrypted data: ";
00054     s.write((const char*)&out, resultLength); 
00055     s << "\n"; 
00056     
00057     resultLength = des.decrypt(out, resultLength, in);
00058     s << "Decrypted data length = " << resultLength << "\n";
00059     s << "Decrypted data: ";
00060     s.write((const char*)&in, resultLength);
00061     s << "\n";
00062 } // fn run
00063 
00064 
00065 void
00066 DesCommand::getHelp(std::ostream& s) {
00067 } // fn getHelp
00068 
00069 #endif
00070 
00071 

Generated at Thu Jul 11 13:31:50 2002 for Peekabooty by doxygen1.2.9 written by Dimitri van Heesch, © 1997-2001