|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
|
+--java.io.InputStream
|
+--net.rim.device.api.crypto.CryptoInputStream
|
+--net.rim.device.api.crypto.DecryptorInputStream
|
+--net.rim.device.api.crypto.StreamDecryptor
|
+--net.rim.device.api.crypto.ECIESDecryptor
ECIESDecryptor is a class used to decrypt messages encoded 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.
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 applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
ECIESEncryptor| Field Summary |
| Fields inherited from class net.rim.device.api.crypto.CryptoInputStream |
_inputStream |
| Constructor Summary | ||
|
ECIESDecryptor(InputStream input,
ECPrivateKey recipientPrivateKey)
Creates an ECIESDecryptor class. |
|
|
ECIESDecryptor(InputStream input,
ECPrivateKey recipientPrivateKey,
String macAlgorithm,
int macKeyLength,
byte[] additionalMACInfo,
int macLength,
byte[] additionalKDFInfo,
Digest kdfDigest,
boolean useCofactor)
Creates an ECIESDecryptor class. |
|
| Method Summary | ||
|
protected void |
decrypt(byte[] data,
int dataOffset,
int dataLength)
Decrypts data according to the specific implementation of the chosen stream cipher. |
|
String |
getAlgorithm()
Returns the name of this algorithm, namely "ECIES/" + macAlgorithm. |
|
boolean |
verify()
|
| Methods inherited from class net.rim.device.api.crypto.StreamDecryptor |
read |
| Methods inherited from class net.rim.device.api.crypto.CryptoInputStream |
available, close, getInputStream, markSupported, read, read |
| Methods inherited from class java.io.InputStream |
mark, reset, skip |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public ECIESDecryptor(InputStream input, ECPrivateKey recipientPrivateKey) throws CryptoTokenException, CryptoUnsupportedOperationException, InvalidKeyException, InvalidCryptoSystemException, IOException, NoSuchAlgorithmException
input - The input stream to read fromrecipientPrivateKey - The private key of the person this message was forCryptoTokenException - Thrown if a crypto token error occurs.CryptoUnsupportedOperationException - Thrown if the attempted operation is not supported.InvalidKeyException - Thrown if there is a problem with the ephemeral key read from the stream.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 applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
public ECIESDecryptor(InputStream input, ECPrivateKey recipientPrivateKey, String macAlgorithm, int macKeyLength, byte[] additionalMACInfo, int macLength, byte[] additionalKDFInfo, Digest kdfDigest, boolean useCofactor) throws CryptoTokenException, CryptoUnsupportedOperationException, InvalidKeyException, InvalidCryptoSystemException, IOException, NoSuchAlgorithmException
input - The input stream to read fromrecipientPrivateKey - The private key of the person this message was formacAlgorithm - 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 KDFkdfDigest - 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.InvalidKeyException - Thrown if there is a problem with the ephemeral key read from the stream.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 applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
| Method Detail |
protected void decrypt(byte[] data,
int dataOffset,
int dataLength)
throws CryptoTokenException
StreamDecryptordecrypt in class StreamDecryptor
StreamDecryptordata - A byte array containing the input to the stream cipher.offset - The offset, or initial position within the array, of the information to decrypt.length - The length, in bytes, of the information to decrypt.CryptoTokenException - Thrown when an error 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 applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
public String getAlgorithm()
"ECIES/" + macAlgorithm.getAlgorithm in class CryptoInputStream
CryptoInputStreamCerticom Contact Information
Phone:613-254-9258
Email: sales@certicom.com
Website: http://www.certicom.com/rim
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
public boolean verify()
throws CryptoTokenException
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 applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 1999-2008 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.