|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.snmp4j.security.Priv3DES
public class Priv3DES
Privacy protocol class for Triple DES (DESEDE). This class uses DES-EDE in CBC mode to encrypt the data. The protocol is defined by the Internet Draft 'Extension to the User-Based Security Model (USM) to Support Triple-DES EDE in "Outside" CBC Mode'.
Field Summary | |
---|---|
static OID |
ID
Unique ID of this privacy protocol. |
protected org.snmp4j.security.Salt |
salt
|
Constructor Summary | |
---|---|
Priv3DES()
|
Method Summary | |
---|---|
byte[] |
decrypt(byte[] cryptedData,
int offset,
int length,
byte[] decryptionKey,
long engineBoots,
long engineTime,
DecryptParams decryptParams)
Decrypts a message using a given decryption key, engine boots count, and engine ID. |
byte[] |
encrypt(byte[] unencryptedData,
int offset,
int length,
byte[] encryptionKey,
long engineBoots,
long engineTime,
DecryptParams decryptParams)
Encrypts a message using a given encryption key, engine boots count, and engine ID. |
byte[] |
extendShortKey(byte[] shortKey,
OctetString password,
byte[] engineID,
AuthenticationProtocol authProtocol)
Extend a localized key that is too short. |
int |
getDecryptParamsLength()
Gets the length of the decryption parameters used by this security protocol. |
int |
getEncryptedLength(int scopedPDULength)
Gets the length of a scoped PDU when encrypted with this security protocol. |
OID |
getID()
Gets the OID uniquely identifying the privacy protocol. |
int |
getMaxKeyLength()
Gets the maximum key size for this privacy protcol. |
int |
getMinKeyLength()
Gets the minimum key size for this privacy protcol. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final OID ID
protected org.snmp4j.security.Salt salt
Constructor Detail |
---|
public Priv3DES()
Method Detail |
---|
public byte[] encrypt(byte[] unencryptedData, int offset, int length, byte[] encryptionKey, long engineBoots, long engineTime, DecryptParams decryptParams)
PrivacyProtocol
encrypt
in interface PrivacyProtocol
unencryptedData
- the unencrypted data. This byte array may contain leading and trailing
bytes that will not be encrypted.offset
- the offset into the unencryptedData
where to start
encryption.length
- the length of the substring starting at offset
to encrypt.encryptionKey
- the key to be used for encryption.engineBoots
- the engine boots counter to use.engineTime
- the engine time to use.decryptParams
- returns the decryption parameters needed to decrypt the data that
has been encrypted by this method.
unencryptedData
.public byte[] decrypt(byte[] cryptedData, int offset, int length, byte[] decryptionKey, long engineBoots, long engineTime, DecryptParams decryptParams)
PrivacyProtocol
decrypt
in interface PrivacyProtocol
cryptedData
- the crypted data. This byte array may contain leading and trailing
bytes that will not be decrypted.offset
- the offset into the cryptedData
where to start
encryption.length
- the length of the substring starting at offset
to decrypt.decryptionKey
- the key to be used for decryption.engineBoots
- the engine boots counter to use.engineTime
- the engine time to use.decryptParams
- contains the decryption parameters.
null
if decryption failed.public OID getID()
getID
in interface PrivacyProtocol
getID
in interface SecurityProtocol
OID
instance.public int getEncryptedLength(int scopedPDULength)
PrivacyProtocol
getEncryptedLength
in interface PrivacyProtocol
scopedPDULength
- the length of the (unencrypted) scoped PDU.
public int getMinKeyLength()
PrivacyProtocol
getMinKeyLength
in interface PrivacyProtocol
public int getDecryptParamsLength()
PrivacyProtocol
getDecryptParamsLength
in interface PrivacyProtocol
public int getMaxKeyLength()
PrivacyProtocol
getMaxKeyLength
in interface PrivacyProtocol
public byte[] extendShortKey(byte[] shortKey, OctetString password, byte[] engineID, AuthenticationProtocol authProtocol)
PrivacyProtocol
extendShortKey
in interface PrivacyProtocol
shortKey
- the short key that was generated using
AuthenticationProtocol.passwordToKey(org.snmp4j.smi.OctetString, byte[])
function.password
- the password to use for key extension.engineID
- the SNMP engine ID of the authoritative engine.authProtocol
- the authentication protocol that should be used.
shortKey
if no extension is needed.
|
Copyright 2005-2010 Frank Fock (SNMP4J.org) | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |