aboutsummaryrefslogtreecommitdiffstats
path: root/doc/examples/rsa_kgen.cpp
diff options
context:
space:
mode:
authorlloyd <[email protected]>2011-04-04 03:43:52 +0000
committerlloyd <[email protected]>2011-04-04 03:43:52 +0000
commit3b9bfbd07c3723662832caf5b1efe04de28b656d (patch)
treeee2a9324f384efead6e5bb87ac8374e7e8734c90 /doc/examples/rsa_kgen.cpp
parent04db054f1ae8de572ee9c0cfe227e76f84096bd6 (diff)
Convert most of the documentation to reStructured Text, adding
a makefile to build it with Sphinx (http://sphinx.pocoo.org/). Previously credits.txt listed public domain code sources; instead directly credit the authors in the relevant files and delete that file. Drop the draft FIPS 140 security policy; I can't imagine FIPS 140 validation will ever happen, and if it does, I don't want anything to do with it. Also drop the internals doc, which was so out of date (and incomplete) as to be worthless. Move the tutorials and InSiTo pdfs into old/ for the time being, until anything relevant from them can be filtered out and converted into RST.
Diffstat (limited to 'doc/examples/rsa_kgen.cpp')
-rw-r--r--doc/examples/rsa_kgen.cpp66
1 files changed, 0 insertions, 66 deletions
diff --git a/doc/examples/rsa_kgen.cpp b/doc/examples/rsa_kgen.cpp
deleted file mode 100644
index f4566263b..000000000
--- a/doc/examples/rsa_kgen.cpp
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
-* (C) 2002 Jack Lloyd
-*
-* Distributed under the terms of the Botan license
-*/
-
-/*
-Generate an RSA key of a specified bitlength, and put it into a pair of key
-files. One is the public key in X.509 format (PEM encoded), the private key is
-in PKCS #8 format (also PEM encoded).
-*/
-
-#include <iostream>
-#include <fstream>
-#include <string>
-#include <cstdlib>
-#include <memory>
-
-#include <botan/botan.h>
-#include <botan/rsa.h>
-using namespace Botan;
-
-int main(int argc, char* argv[])
- {
- if(argc != 2 && argc != 3)
- {
- std::cout << "Usage: " << argv[0] << " bitsize [passphrase]"
- << std::endl;
- return 1;
- }
-
- u32bit bits = std::atoi(argv[1]);
- if(bits < 1024 || bits > 16384)
- {
- std::cout << "Invalid argument for bitsize" << std::endl;
- return 1;
- }
-
- Botan::LibraryInitializer init;
-
- std::ofstream pub("rsapub.pem");
- std::ofstream priv("rsapriv.pem");
- if(!priv || !pub)
- {
- std::cout << "Couldn't write output files" << std::endl;
- return 1;
- }
-
- try
- {
- AutoSeeded_RNG rng;
-
- RSA_PrivateKey key(rng, bits);
- pub << X509::PEM_encode(key);
-
- if(argc == 2)
- priv << PKCS8::PEM_encode(key);
- else
- priv << PKCS8::PEM_encode(key, rng, argv[2]);
- }
- catch(std::exception& e)
- {
- std::cout << "Exception caught: " << e.what() << std::endl;
- }
- return 0;
- }