-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.html
121 lines (115 loc) · 5.37 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
<html>
<head>
<title>The Bouncy Castle Crypto Package</title>
</head>
<body bgcolor="#ffffff" text="#000000#">
<center>
<h1>The Bouncy Castle Crypto Package</h1>
<font size=1>
<pre>
</pre>
</font>
</center>
The Bouncy Castle Crypto package is a Java implementation of
cryptographic algorithms, it was developed by the Legion of the
Bouncy Castle - with a little help! The Legion, and the latest
goings on with this package, can be found at
<a href=http://www.bouncycastle.org>http://www.bouncycastle.org</a>.
<p>
The Legion also gratefully acknowledges the contributions made to this
package by others (see <a href=CONTRIBUTORS.html>here</a>
for the current list).
<p>
The package is organised so that it
contains a light-weight API suitable for use in any environment
(including the newly released J2ME) with the additional infrastructure
to conform the algorithms to the JCE framework.
<p>
Except where otherwise stated, this software is distributed under a license based on the MIT X Consortium license. To view the license, <a href="./LICENSE.html">see here</a>. The OpenPGP library also includes a modified BZIP2 library which is licensed under the <a href="http://www.apache.org/licenses/">Apache Software License, Version 2.0</a>.
<p>
The current release notes for this package are
<a href=releasenotes.html>here</a>.
<p>
The current specifications for this package are
<a href=specifications.html>here</a>.
<p>
The current api documentation for this package is
<a href=docs/index.html>here</a>.
</p>
</p>
<h2>Examples and Tests</h2>
<p>
<p>To view some examples, look at the test programs in the packages:
<ul>
<li><p><b>org.bouncycastle.crypto.test</b>
<li><p><b>org.bouncycastle.jce.provider.test</b>
<li><p><b>org.bouncycastle.cms.test</b>
<li><p><b>org.bouncycastle.mail.smime.test</b>
<li><p><b>org.bouncycastle.openpgp.test</b>
<li><p><b>org.bouncycastle.tsp.test</b>
</ul>
<p>There are also some specific example programs for dealing with Attribute Certificates, PKCS12, SMIME and OpenPGP. They can be found in:
<ul>
<li><p><b>org.bouncycastle.jce.examples</b>
<li><p><b>org.bouncycastle.mail.smime.examples</b>
<li><p><b>org.bouncycastle.openpgp.examples</b>
<li><p><b>org.bouncycastle.x509.examples</b>
</ul>
<p>Finally there are also code <a href="http://www.wiley.com/WileyCDA/WileyAncillary/productCd-0764596330.html">examples</a> from <a href="http://www.amazon.com/exec/obidos/redirect?path=ASIN/0764596330&link_code=as2&camp=1789&tag=bouncycastleo-20&creative=9325">Beginning Cryptography with Java</a> which demonstrate both the use of the JCE/JCA and also some of the Bouncy Castle APIs.</p>
<p>
<b>Note 1:</b>The JCE classes are only distributed with the JDK 1.1, JDK 1.2, and JDK 1.3 JCE releases. The
JDK 1.0, J2ME, and the JDK 1.1, JDK 1.2, JDK 1.3, JDK 1.4, and JDK 1.5 lightweight releases only include the
Bouncy Castle lightweight cryptography API.<br>
<b>Note 2:</b>The regression test for Diffie-Hellman is quite slow.
<h2>Building From CVS</h2>
<p>
The src and test/src directory are for JDK 1.5.
</p>
<p>
Compatibility classes for other VMs are as follows:
<ul>
<li>JDK 1.4 - jdk1.4, test/jdk1.4
<li>JDK 1.3 - jdk1.3, test/jdk1.3
<li>JDK 1.2 - jdk1.2
<li>JDK 1.1 - jdk1.1
<li>JDK 1.0 - jdk1.0
<li>J2ME - j2me
</ul>
</p>
<p>
The clean room JCE, which will compile with everything from JDK 1.1 and up is in the jce/src directory.
</p>
<p>
The build scripts that come with the full distribution allow creation of the different releases by using the tree under src and test/src, excluding classes that are not appropriate and copying in the required compatibility classes from the directories containing compatibility classes appropriate for the distribution.
</p>
<p>
If you want to try create a build for yourself, using your own environment, the best way to do it is to start with the build for the distribution you are interested in, make sure that builds, and then modify your build scripts to do the required exclusions and file copies for your setup, otherwise you are likely to get class not found exceptions. The final caveat to this is that as the j2me distribution includes some compatibility classes starting in the java package, you need to use an obfuscator to change the package names before attempting to import a midlet using the BC API.
</p>
<h2>Mailing Lists</h2>
<p>
For those who are interested, there are 2 mailing lists
for participation in this project. To subscribe use the
links below and include the word subscribe in the message body. (To unsubscribe, replace <b>subscribe</b> with
<b>unsubscribe</b> in the message body)
<ul>
<li><a href="mailto:announce-crypto-request@bouncycastle.org">announce-crypto-request@bouncycastle.org</a>
<br>
This mailing list is for new release announcements only, general subscribers cannot post to it.
<p>
<li><a href="mailto:dev-crypto-request@bouncycastle.org">dev-crypto-request@bouncycastle.org</a>
<br>
This mailing list is for discussion of development of the package. This
includes bugs, comments, requests for enhancements, questions about
use or operation.
</ul>
<b>NOTE:</b>You need to be subscribed to send mail to the above
mailing list.
<p>
If you want to provide feedback, offers of jobs (or more importantly
beer) directly to the members of <b>The Legion</b>
then please use <a href="mailto:feedback-crypto@bouncycastle.org">
feedback-crypto@bouncycastle.org</a>
<p>
Enjoy!
</body>
</html>