/lib/bouncycastle/docs/org/bouncycastle/jce/provider/JCEDHKeyAgreement.html
HTML | 401 lines | 332 code | 47 blank | 22 comment | 0 complexity | eb69aae22ed85cc315718fb48f55eb19 MD5 | raw file
Possible License(s): LGPL-2.1, BSD-3-Clause, Apache-2.0
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<!--NewPage-->
3<HTML>
4<HEAD>
5<!-- Generated by javadoc (build 1.6.0) on Mon Jan 11 13:46:37 EST 2010 -->
6<TITLE>
7JCEDHKeyAgreement (Bouncy Castle Library 1.45 API Specification)
8</TITLE>
9
10<META NAME="date" CONTENT="2010-01-11">
11
12<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
13
14<SCRIPT type="text/javascript">
15function windowTitle()
16{
17 if (location.href.indexOf('is-external=true') == -1) {
18 parent.document.title="JCEDHKeyAgreement (Bouncy Castle Library 1.45 API Specification)";
19 }
20}
21</SCRIPT>
22<NOSCRIPT>
23</NOSCRIPT>
24
25</HEAD>
26
27<BODY BGCOLOR="white" onload="windowTitle();">
28<HR>
29
30
31<!-- ========= START OF TOP NAVBAR ======= -->
32<A NAME="navbar_top"><!-- --></A>
33<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
34<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
35<TR>
36<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
37<A NAME="navbar_top_firstrow"><!-- --></A>
38<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
39 <TR ALIGN="center" VALIGN="top">
40 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
41 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
42 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
43 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
44 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
45 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
46 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
47 </TR>
48</TABLE>
49</TD>
50<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
51<b>Bouncy Castle Cryptography Library 1.45</b></EM>
52</TD>
53</TR>
54
55<TR>
56<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
57 <A HREF="../../../../org/bouncycastle/jce/provider/JCEBlockCipher.XTEA.html" title="class in org.bouncycastle.jce.provider"><B>PREV CLASS</B></A>
58 <A HREF="../../../../org/bouncycastle/jce/provider/JCEDHPrivateKey.html" title="class in org.bouncycastle.jce.provider"><B>NEXT CLASS</B></A></FONT></TD>
59<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
60 <A HREF="../../../../index.html?org/bouncycastle/jce/provider/JCEDHKeyAgreement.html" target="_top"><B>FRAMES</B></A>
61 <A HREF="JCEDHKeyAgreement.html" target="_top"><B>NO FRAMES</B></A>
62 <SCRIPT type="text/javascript">
63 <!--
64 if(window==top) {
65 document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
66 }
67 //-->
68</SCRIPT>
69<NOSCRIPT>
70 <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
71</NOSCRIPT>
72
73
74</FONT></TD>
75</TR>
76<TR>
77<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
78 SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
79<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
80DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
81</TR>
82</TABLE>
83<A NAME="skip-navbar_top"></A>
84<!-- ========= END OF TOP NAVBAR ========= -->
85
86<HR>
87<!-- ======== START OF CLASS DATA ======== -->
88<H2>
89<FONT SIZE="-1">
90org.bouncycastle.jce.provider</FONT>
91<BR>
92Class JCEDHKeyAgreement</H2>
93<PRE>
94java.lang.Object
95 <IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">javax.crypto.KeyAgreementSpi
96 <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.bouncycastle.jce.provider.JCEDHKeyAgreement</B>
97</PRE>
98<HR>
99<DL>
100<DT><PRE>public class <B>JCEDHKeyAgreement</B><DT>extends javax.crypto.KeyAgreementSpi</DL>
101</PRE>
102
103<P>
104Diffie-Hellman key agreement. There's actually a better way of doing this
105 if you are using long term public keys, see the light-weight version for
106 details.
107<P>
108
109<P>
110<HR>
111
112<P>
113
114<!-- ======== CONSTRUCTOR SUMMARY ======== -->
115
116<A NAME="constructor_summary"><!-- --></A>
117<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
118<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
119<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
120<B>Constructor Summary</B></FONT></TH>
121</TR>
122<TR BGCOLOR="white" CLASS="TableRowColor">
123<TD><CODE><B><A HREF="../../../../org/bouncycastle/jce/provider/JCEDHKeyAgreement.html#JCEDHKeyAgreement()">JCEDHKeyAgreement</A></B>()</CODE>
124
125<BR>
126 </TD>
127</TR>
128</TABLE>
129
130<!-- ========== METHOD SUMMARY =========== -->
131
132<A NAME="method_summary"><!-- --></A>
133<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
134<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
135<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
136<B>Method Summary</B></FONT></TH>
137</TR>
138<TR BGCOLOR="white" CLASS="TableRowColor">
139<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
140<CODE>protected java.security.Key</CODE></FONT></TD>
141<TD><CODE><B><A HREF="../../../../org/bouncycastle/jce/provider/JCEDHKeyAgreement.html#engineDoPhase(java.security.Key, boolean)">engineDoPhase</A></B>(java.security.Key key,
142 boolean lastPhase)</CODE>
143
144<BR>
145 </TD>
146</TR>
147<TR BGCOLOR="white" CLASS="TableRowColor">
148<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
149<CODE>protected byte[]</CODE></FONT></TD>
150<TD><CODE><B><A HREF="../../../../org/bouncycastle/jce/provider/JCEDHKeyAgreement.html#engineGenerateSecret()">engineGenerateSecret</A></B>()</CODE>
151
152<BR>
153 </TD>
154</TR>
155<TR BGCOLOR="white" CLASS="TableRowColor">
156<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
157<CODE>protected int</CODE></FONT></TD>
158<TD><CODE><B><A HREF="../../../../org/bouncycastle/jce/provider/JCEDHKeyAgreement.html#engineGenerateSecret(byte[], int)">engineGenerateSecret</A></B>(byte[] sharedSecret,
159 int offset)</CODE>
160
161<BR>
162 </TD>
163</TR>
164<TR BGCOLOR="white" CLASS="TableRowColor">
165<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
166<CODE>protected javax.crypto.SecretKey</CODE></FONT></TD>
167<TD><CODE><B><A HREF="../../../../org/bouncycastle/jce/provider/JCEDHKeyAgreement.html#engineGenerateSecret(java.lang.String)">engineGenerateSecret</A></B>(java.lang.String algorithm)</CODE>
168
169<BR>
170 </TD>
171</TR>
172<TR BGCOLOR="white" CLASS="TableRowColor">
173<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
174<CODE>protected void</CODE></FONT></TD>
175<TD><CODE><B><A HREF="../../../../org/bouncycastle/jce/provider/JCEDHKeyAgreement.html#engineInit(java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom)">engineInit</A></B>(java.security.Key key,
176 java.security.spec.AlgorithmParameterSpec params,
177 java.security.SecureRandom random)</CODE>
178
179<BR>
180 </TD>
181</TR>
182<TR BGCOLOR="white" CLASS="TableRowColor">
183<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
184<CODE>protected void</CODE></FONT></TD>
185<TD><CODE><B><A HREF="../../../../org/bouncycastle/jce/provider/JCEDHKeyAgreement.html#engineInit(java.security.Key, java.security.SecureRandom)">engineInit</A></B>(java.security.Key key,
186 java.security.SecureRandom random)</CODE>
187
188<BR>
189 </TD>
190</TR>
191</TABLE>
192 <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
193<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
194<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
195<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
196</TR>
197<TR BGCOLOR="white" CLASS="TableRowColor">
198<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
199</TR>
200</TABLE>
201
202<P>
203
204<!-- ========= CONSTRUCTOR DETAIL ======== -->
205
206<A NAME="constructor_detail"><!-- --></A>
207<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
208<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
209<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
210<B>Constructor Detail</B></FONT></TH>
211</TR>
212</TABLE>
213
214<A NAME="JCEDHKeyAgreement()"><!-- --></A><H3>
215JCEDHKeyAgreement</H3>
216<PRE>
217public <B>JCEDHKeyAgreement</B>()</PRE>
218<DL>
219</DL>
220
221<!-- ============ METHOD DETAIL ========== -->
222
223<A NAME="method_detail"><!-- --></A>
224<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
225<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
226<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
227<B>Method Detail</B></FONT></TH>
228</TR>
229</TABLE>
230
231<A NAME="engineDoPhase(java.security.Key, boolean)"><!-- --></A><H3>
232engineDoPhase</H3>
233<PRE>
234protected java.security.Key <B>engineDoPhase</B>(java.security.Key key,
235 boolean lastPhase)
236 throws java.security.InvalidKeyException,
237 java.lang.IllegalStateException</PRE>
238<DL>
239<DD><DL>
240<DT><B>Specified by:</B><DD><CODE>engineDoPhase</CODE> in class <CODE>javax.crypto.KeyAgreementSpi</CODE></DL>
241</DD>
242<DD><DL>
243
244<DT><B>Throws:</B>
245<DD><CODE>java.security.InvalidKeyException</CODE>
246<DD><CODE>java.lang.IllegalStateException</CODE></DL>
247</DD>
248</DL>
249<HR>
250
251<A NAME="engineGenerateSecret()"><!-- --></A><H3>
252engineGenerateSecret</H3>
253<PRE>
254protected byte[] <B>engineGenerateSecret</B>()
255 throws java.lang.IllegalStateException</PRE>
256<DL>
257<DD><DL>
258<DT><B>Specified by:</B><DD><CODE>engineGenerateSecret</CODE> in class <CODE>javax.crypto.KeyAgreementSpi</CODE></DL>
259</DD>
260<DD><DL>
261
262<DT><B>Throws:</B>
263<DD><CODE>java.lang.IllegalStateException</CODE></DL>
264</DD>
265</DL>
266<HR>
267
268<A NAME="engineGenerateSecret(byte[], int)"><!-- --></A><H3>
269engineGenerateSecret</H3>
270<PRE>
271protected int <B>engineGenerateSecret</B>(byte[] sharedSecret,
272 int offset)
273 throws java.lang.IllegalStateException,
274 javax.crypto.ShortBufferException</PRE>
275<DL>
276<DD><DL>
277<DT><B>Specified by:</B><DD><CODE>engineGenerateSecret</CODE> in class <CODE>javax.crypto.KeyAgreementSpi</CODE></DL>
278</DD>
279<DD><DL>
280
281<DT><B>Throws:</B>
282<DD><CODE>java.lang.IllegalStateException</CODE>
283<DD><CODE>javax.crypto.ShortBufferException</CODE></DL>
284</DD>
285</DL>
286<HR>
287
288<A NAME="engineGenerateSecret(java.lang.String)"><!-- --></A><H3>
289engineGenerateSecret</H3>
290<PRE>
291protected javax.crypto.SecretKey <B>engineGenerateSecret</B>(java.lang.String algorithm)</PRE>
292<DL>
293<DD><DL>
294<DT><B>Specified by:</B><DD><CODE>engineGenerateSecret</CODE> in class <CODE>javax.crypto.KeyAgreementSpi</CODE></DL>
295</DD>
296<DD><DL>
297</DL>
298</DD>
299</DL>
300<HR>
301
302<A NAME="engineInit(java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom)"><!-- --></A><H3>
303engineInit</H3>
304<PRE>
305protected void <B>engineInit</B>(java.security.Key key,
306 java.security.spec.AlgorithmParameterSpec params,
307 java.security.SecureRandom random)
308 throws java.security.InvalidKeyException,
309 java.security.InvalidAlgorithmParameterException</PRE>
310<DL>
311<DD><DL>
312<DT><B>Specified by:</B><DD><CODE>engineInit</CODE> in class <CODE>javax.crypto.KeyAgreementSpi</CODE></DL>
313</DD>
314<DD><DL>
315
316<DT><B>Throws:</B>
317<DD><CODE>java.security.InvalidKeyException</CODE>
318<DD><CODE>java.security.InvalidAlgorithmParameterException</CODE></DL>
319</DD>
320</DL>
321<HR>
322
323<A NAME="engineInit(java.security.Key, java.security.SecureRandom)"><!-- --></A><H3>
324engineInit</H3>
325<PRE>
326protected void <B>engineInit</B>(java.security.Key key,
327 java.security.SecureRandom random)
328 throws java.security.InvalidKeyException</PRE>
329<DL>
330<DD><DL>
331<DT><B>Specified by:</B><DD><CODE>engineInit</CODE> in class <CODE>javax.crypto.KeyAgreementSpi</CODE></DL>
332</DD>
333<DD><DL>
334
335<DT><B>Throws:</B>
336<DD><CODE>java.security.InvalidKeyException</CODE></DL>
337</DD>
338</DL>
339<!-- ========= END OF CLASS DATA ========= -->
340<HR>
341
342
343<!-- ======= START OF BOTTOM NAVBAR ====== -->
344<A NAME="navbar_bottom"><!-- --></A>
345<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
346<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
347<TR>
348<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
349<A NAME="navbar_bottom_firstrow"><!-- --></A>
350<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
351 <TR ALIGN="center" VALIGN="top">
352 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
353 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
354 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
355 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
356 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
357 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
358 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
359 </TR>
360</TABLE>
361</TD>
362<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
363<b>Bouncy Castle Cryptography Library 1.45</b></EM>
364</TD>
365</TR>
366
367<TR>
368<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
369 <A HREF="../../../../org/bouncycastle/jce/provider/JCEBlockCipher.XTEA.html" title="class in org.bouncycastle.jce.provider"><B>PREV CLASS</B></A>
370 <A HREF="../../../../org/bouncycastle/jce/provider/JCEDHPrivateKey.html" title="class in org.bouncycastle.jce.provider"><B>NEXT CLASS</B></A></FONT></TD>
371<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
372 <A HREF="../../../../index.html?org/bouncycastle/jce/provider/JCEDHKeyAgreement.html" target="_top"><B>FRAMES</B></A>
373 <A HREF="JCEDHKeyAgreement.html" target="_top"><B>NO FRAMES</B></A>
374 <SCRIPT type="text/javascript">
375 <!--
376 if(window==top) {
377 document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
378 }
379 //-->
380</SCRIPT>
381<NOSCRIPT>
382 <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
383</NOSCRIPT>
384
385
386</FONT></TD>
387</TR>
388<TR>
389<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
390 SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
391<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
392DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
393</TR>
394</TABLE>
395<A NAME="skip-navbar_bottom"></A>
396<!-- ======== END OF BOTTOM NAVBAR ======= -->
397
398<HR>
399
400</BODY>
401</HTML>