1/*!\mainpage BeeCrypt C++ API Documentation
2 *
3 * \section intro_sec Introduction
4 *
5 * BeeCrypt started its life when the need for a portable and fast cryptography
6 * library arose at Virtual Unlimited in 1997. I'm still trying to make it
7 * faster, easier to use and more portable, in addition to providing better
8 * documentation.
9 *
10 * \section license_sec License
11 *
12 * BeeCrypt is released under the following license:
13 *
14 * This library is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU Lesser General Public
16 * License as published by the Free Software Foundation; either
17 * version 2.1 of the License, or (at your option) any later version.
18 *
19 * This library is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
22 * Lesser General Public License for more details.
23 *
24 * You should have received a copy of the GNU Lesser General Public
25 * License along with this library; if not, write to the Free Software
26 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
27 *
28 * Legal disclaimer: note that depending on where you are, the use of
29 * cryptography may be limited or forbidden by law. Before using this library,
30 * make sure you are legally entitled to do so.
31 *
32 * \section features_sec Features
33 *
34 * A new feature in version 4.x is the C++ API, built to resemble Java's
35 * security and cryptography API.
36 *
37 * As of version 4.2.0 basic versions of Object and Thread have been
38 * added and should work on any platform offering either POSIX, Solaris
39 * or Win32 threads. Java's Collections system had to be adapted to work
40 * in C++. See the documentation in class beecrypt::util::Collections
41 *
42 * Included in the base provider are broad spectrum of algorithms:
43 * <ul>
44 *  <li>AlgorithmParameterGenerator
45 *   <ul>
46 *    <li>DH
47 *    <li>DSA
48 *   </ul>
49 *  <li>AlgorithmParameters
50 *   <ul>
51 *    <li>DH
52 *    <li>DHAES
53 *    <li>DSA
54 *   </ul>
55 *  <li>Cipher
56 *   <ul>
57 *    <li>AES
58 *    <li>Blowfish
59 *    <li>DHAES
60 *   </ul>
61 *  <li>KeyAgreement
62 *   <ul>
63 *    <li>DH
64 *   </ul>
65 *  <li>KeyPairGenerator
66 *   <ul>
67 *    <li>DH
68 *    <li>DSA
69 *    <li>RSA
70 *   </ul>
71 *  <li>Mac
72 *   <ul>
73 *    <li>HMAC-MD5
74 *    <li>HMAC-SHA-1
75 *    <li>HMAC-SHA-256
76 *    <li>HMAC-SHA-384
77 *    <li>HMAC-SHA-512
78 *   </ul>
79 *  <li>MessageDigest
80 *   <ul>
81 *    <li>MD5
82 *    <li>SHA-1
83 *    <li>SHA-256
84 *    <li>SHA-384
85 *    <li>SHA-512
86 *   </ul>
87 *  <li>Signature
88 *   <ul>
89 *    <li>MD5withRSA
90 *    <li>SHA1withDSA
91 *    <li>SHA1withRSA
92 *    <li>SHA256withRSA
93 *    <li>SHA384withRSA
94 *    <li>SHA512withRSA
95 *   </ul>
96 * </ul>
97 *
98 */
99
100/*!\defgroup	CXX_m	C++ API
101 */
102/*!\defgroup	CXX_IO_m	C++ classes mimicking java.io
103 */
104/*!\defgroup	CXX_LANG_m	C++ classes mimicking java.lang
105 */
106/*!\defgroup	CXX_NIO_m	C++ classes mimicking java.nio
107 */
108/*!\defgroup	CXX_SECURITY_m	C++ classes mimicking java.security
109 */
110/*!\defgroup	CXX_SECURITY_CERT_m	C++ classes mimicking java.security.cert
111 */
112/*!\defgroup	CXX_SECURITY_INTERFACES_m	C++ classes mimicking java.security.interfaces
113 */
114/*!\defgroup	CXX_SECURITY_SPEC_m	C++ classes mimicking java.security.spec
115 */
116/*!\defgroup	CXX_UTIL_m	C++ classes mimicking java.util
117 */
118/*!\defgroup	CXX_UTIL_CONCURRENT_m	C++ classes mimicking java.util.concurrent
119 */
120/*!\defgroup	CXX_UTIL_CONCURRENT_LOCKS_m	C++ classes mimicking java.util.concurrent.locks
121 */
122/*!\defgroup	CXX_CRYPTO_m	C++ classes mimicking javax.crypto
123 */
124/*!\defgroup	CXX_CRYPTO_INTERFACES_m	C++ classes mimicking javax.crypto.interfaces
125 */
126/*!\defgroup	CXX_CRYPTO_SPEC_m	C++ classes mimicking javax.crypto.spec
127 */
128/*!\defgroup	CXX_SECURITY_AUTH_m	C++ classes mimicking javax.security.auth
129 */
130
131/*!\namespace beecrypt::io
132 * \brief Namespace emulating java.io
133 */
134/*!\namespace beecrypt::lang
135 * \brief Namespace emulating java.lang
136 */
137/*!\namespace beecrypt::nio
138 * \brief Namespace emulating java.nio
139 */
140/*!\namespace beecrypt::security
141 * \brief Namespace emulating java.security
142 */
143/*!\namespace beecrypt::security::cert
144 * \brief Namespace emulating java.security.cert
145 */
146/*!\namespace beecrypt::security::interfaces
147 * \brief Namespace emulating java.security.interfaces
148 */
149/*!\namespace beecrypt::security::spec
150 * \brief Namespace emulating java.security.spec
151 */
152/*!\namespace beecrypt::util
153 * \brief Namespace emulating java.util
154 */
155/*!\namespace beecrypt::util::concurrent
156 * \brief Namespace emulating java.util.concurrent
157 */
158/*!\namespace beecrypt::util::concurrent::locks
159 * \brief Namespace emulating java.util.concurrent.locks
160 */
161/*!\namespace beecrypt::crypto
162 * \brief Namespace emulating javax.crypto
163 */
164/*!\namespace beecrypt::crypto::interfaces
165 * \brief Namespace emulating javax.crypto.interfaces
166 */
167/*!\namespace beecrypt::crypto::spec
168 * \brief Namespace emulating javax.crypto.spec
169 */
170/*!\namespace beecrypt::security::auth
171 * \brief Namespace emulating javax.security.auth
172 */
173