|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
|
+--java.io.OutputStream
|
+--net.rim.device.api.crypto.CryptoOutputStream
|
+--net.rim.device.api.crypto.EncryptorOutputStream
|
+--net.rim.device.api.crypto.StreamEncryptor
|
+--net.rim.device.api.crypto.ECIESEncryptor
ECIESEncryptor is a class used to encrypt messages with the Elliptic Curve Integrated Encryption Scheme ( ECIES ). It is described in ANSI X9.63.
Elliptic Curve cryptography is defined in various standards including P1363 and ANSI X9.62.
For information on cryptographic algorithms, see Crypto Algorithms.
Certicom Contact Information
Phone:613-254-9258
Email: sales@certicom.com
Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
ECIESDecryptor| Field Summary |
| Fields inherited from class net.rim.device.api.crypto.CryptoOutputStream |
_out |
| Constructor Summary | ||
|
ECIESEncryptor(OutputStream out,
ECPublicKey recipientPublicKey)
Creates an ECIESEncryptor class. |
|
|
ECIESEncryptor(OutputStream out,
ECPublicKey recipientPublicKey,
String macAlgorithm,
int macKeyLength,
byte[] additionalMACInfo,
int macLength,
byte[] additionalKDFInfo,
Digest kdfDigest,
boolean useCofactor)
Creates an ECIESEncryptor class. |
|
| Method Summary | ||
|
void |
close()
Closes the output stream. |
|
protected void |
encrypt(byte[] plaintext,
int plaintextOffset,
int plaintextLength,
byte[] ciphertext)
Encrypts data using the specific implementation of the chosen stream encryptor. |
|
String |
getAlgorithm()
Returns the name of this algorithm, namely "ECIES/" + macAlgorithm. |
| Methods inherited from class net.rim.device.api.crypto.StreamEncryptor |
flush, write |
| Methods inherited from class net.rim.device.api.crypto.CryptoOutputStream |
flush, getOutputStream, write, write |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public ECIESEncryptor(OutputStream out, ECPublicKey recipientPublicKey) throws CryptoTokenException, CryptoUnsupportedOperationException, InvalidCryptoSystemException, IOException, NoSuchAlgorithmException
out - The output stream to write too.recipientPublicKey - The public key of the person this message will go to.CryptoTokenException - Thrown if a crypto token error occurs.CryptoUnsupportedOperationException - Thrown if the attempted operation is not supported.InvalidCryptoSystemException - Thrown if the crypto system has a problem with it.IOException - Thrown if there is a problem writing to the output streamNoSuchAlgorithmException - Thrown if the mac algorithm is not supportedCerticom Contact Information
Phone:613-254-9258
Email: sales@certicom.com
Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
public ECIESEncryptor(OutputStream out, ECPublicKey recipientPublicKey, String macAlgorithm, int macKeyLength, byte[] additionalMACInfo, int macLength, byte[] additionalKDFInfo, Digest kdfDigest, boolean useCofactor) throws CryptoTokenException, CryptoUnsupportedOperationException, InvalidCryptoSystemException, IOException, NoSuchAlgorithmException
out - The output stream to write too.recipientPublicKey - The public key of the person this message will go to.macAlgorithm - The MAC algorithm to use. If null, then "HMAC/SHA1" is used.macKeyLength - The length of the MAC key to use.additionalMACInfo - Additional mac information to provided to the MAC.additionalKDFInfo - Additional shared information to provide to the KDF.kdfDigest - Specifies the digest to use in the KDF. If null, then SHA1 is used.useCofactor - If this true, a the elliptic curve's cofactor is used in the calculations.
If false, the cofactor is not used. Note, setting this value to TRUE is the most common usage.CryptoTokenException - Thrown if a crypto token error occurs.CryptoUnsupportedOperationException - Thrown if the attempted operation is not supported.InvalidCryptoSystemException - Thrown if the crypto system has a problem with it.IOException - Thrown if there is a problem writing to the output streamNoSuchAlgorithmException - Thrown if the mac algorithm is not supportedCerticom Contact Information
Phone:613-254-9258
Email: sales@certicom.com
Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
| Method Detail |
public void close()
throws IOException
CryptoOutputStreamBefore closing the stream, it flushes out all of the data that is in the output stream.
See the flush() method for more information.
close in class CryptoOutputStream
CryptoOutputStreamIOException - Thrown if an I/O error occurs.Certicom Contact Information
Phone:613-254-9258
Email: sales@certicom.com
Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
protected void encrypt(byte[] plaintext,
int plaintextOffset,
int plaintextLength,
byte[] ciphertext)
throws CryptoTokenException
StreamEncryptorencrypt in class StreamEncryptor
StreamEncryptorplaintext - A byte array containing the input to the stream cipher.plaintextOffset - The offset, or initial position within the array, of the information to encrypt.length - The length of the information to encrypt.ciphertext - A byte array to hold the output of the stream cipher.CryptoTokenException - Thrown when a problem occurs with the crypto token
or the crypto token is invalid.Certicom Contact Information
Phone:613-254-9258
Email: sales@certicom.com
Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
public String getAlgorithm()
"ECIES/" + macAlgorithm.getAlgorithm in class CryptoOutputStream
CryptoOutputStreamCerticom Contact Information
Phone:613-254-9258
Email: sales@certicom.com
Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 1999-2007 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.