| Modifier and Type | Field and Description |
|---|---|
| private transient Agent | |
| private static final BigInteger | |
| private static final byte[] | |
| private static final int | |
| private static final char[] | hex_table
Resolve * The methods and static vars below should go into some 'shared' * package when the capability is put back in (StringUtil.java). |
| private KeyAgreement | |
| private KeyPair | |
| private KeyPairGenerator | |
| private MessageDigest | |
| private static final BigInteger | |
| private static final byte[] | |
| private DHParameterSpec | |
| private Provider | |
| private String | |
| private byte[] | |
| private static final byte[] | |
| private static final int | |
| private SecretKeyFactory | |
| private SecureRandom | |
| public static final String | |
| private static final String | |
| private byte[] |
| Access | Constructor and Description |
|---|---|
| public | |
| public |
| Modifier and Type | Method and Description |
|---|---|
| private byte[] | |
| public byte[] | |
| public byte[] | |
| private byte[] | |
| public byte[] | Returns: a random 8-Byte seed.This method generates an 8-Byte random seed for the client (source). |
| private void | |
| public byte[] | |
| public void | |
| public byte[] | Returns: a password substitute.The user's name userName, String The user's password password, byte[] random client seed (RDs) sourceSeed_, byte[] random server seed (RDr) targetSeed_)Strong Password Substitution (USRSSBPWD). |
| private byte[] | |
| private String | Returns: the String (with hexidecimal format) form of the byte arraybyte array data, int starting byte (zero based) to convert. offset, int number of bytes to convert. length)Convert a byte array to a String with a hexadecimal format. |
| agent_ | back to summary |
|---|---|
| private transient Agent agent_ | |
| base__ | back to summary |
|---|---|
| private static final BigInteger base__ | |
| baseBytes__ | back to summary |
|---|---|
| private static final byte[] baseBytes__ | |
| exponential_length__ | back to summary |
|---|---|
| private static final int exponential_length__ | |
| hex_table | back to summary |
|---|---|
| private static final char[] hex_table Resolve * The methods and static vars below should go into some 'shared' * package when the capability is put back in (StringUtil.java). * | |
| keyAgreement_ | back to summary |
|---|---|
| private KeyAgreement keyAgreement_ | |
| keyPair_ | back to summary |
|---|---|
| private KeyPair keyPair_ | |
| keyPairGenerator_ | back to summary |
|---|---|
| private KeyPairGenerator keyPairGenerator_ | |
| messageDigest | back to summary |
|---|---|
| private MessageDigest messageDigest | |
| modulus__ | back to summary |
|---|---|
| private static final BigInteger modulus__ | |
| modulusBytes__ | back to summary |
|---|---|
| private static final byte[] modulusBytes__ | |
| paramSpec_ | back to summary |
|---|---|
| private DHParameterSpec paramSpec_ | |
| provider | back to summary |
|---|---|
| private Provider provider | |
| providerName | back to summary |
|---|---|
| private String providerName | |
| secKey_ | back to summary |
|---|---|
| private byte[] secKey_ | |
| SECMEC_USRSSBPWD_PWDSEQS | back to summary |
|---|---|
| private static final byte[] SECMEC_USRSSBPWD_PWDSEQS | |
| SECMEC_USRSSBPWD_SEED_LEN | back to summary |
|---|---|
| private static final int SECMEC_USRSSBPWD_SEED_LEN | |
| secretKeyFactory_ | back to summary |
|---|---|
| private SecretKeyFactory secretKeyFactory_ | |
| secureRandom | back to summary |
|---|---|
| private SecureRandom secureRandom | |
| SHA_1_DIGEST_ALGORITHM | back to summary |
|---|---|
| public static final String SHA_1_DIGEST_ALGORITHM | |
| SHA_1_PRNG_ALGORITHM | back to summary |
|---|---|
| private static final String SHA_1_PRNG_ALGORITHM | |
| token_ | back to summary |
|---|---|
| private byte[] token_ | |
| EncryptionManager | back to summary |
|---|---|
| public EncryptionManager(Agent agent) throws SqlException | |
| EncryptionManager | back to summary |
|---|---|
| public EncryptionManager(Agent agent, String algorithm) throws SqlException | |
| calculateEncryptionToken | back to summary |
|---|---|
| private byte[] calculateEncryptionToken(int securityMechanism, byte[] initVector) | |
| decryptData | back to summary |
|---|---|
| public byte[] decryptData(byte[] cipherText, int securityMechanism, byte[] initVector, byte[] targetPublicKey) throws SqlException | |
| encryptData | back to summary |
|---|---|
| public byte[] encryptData(byte[] plainText, int securityMechanism, byte[] initVector, byte[] targetPublicKey) throws SqlException | |
| generatePrivateKey | back to summary |
|---|---|
| private byte[] generatePrivateKey(byte[] targetPublicKey) throws SqlException | |
| generateSeed | back to summary |
|---|---|
| public byte[] generateSeed() This method generates an 8-Byte random seed for the client (source).
| |
| keyParityCheck | back to summary |
|---|---|
| private void keyParityCheck(byte[] key) throws SqlException | |
| obtainPublicKey | back to summary |
|---|---|
| public byte[] obtainPublicKey() | |
| resetSecurityKeys | back to summary |
|---|---|
| public void resetSecurityKeys() | |
| substitutePassword | back to summary |
|---|---|
| public byte[] substitutePassword(String userName, String password, byte[] sourceSeed_, byte[] targetSeed_) throws SqlException Strong Password Substitution (USRSSBPWD). This method generates a password substitute to send to the target server. Substitution algorithm works as follow: PW_TOKEN = SHA-1(PW, ID) The password (PW) and user name (ID) can be of any length greater than or equal to 1 byte. The client generates a 20-byte password substitute (PW_SUB) as follows: PW_SUB = SHA-1(PW_TOKEN, RDr, RDs, ID, PWSEQs) w/ (RDs) as the random client seed and (RDr) as the server one. See PWDSSB - Strong Password Substitution Security Mechanism (DRDA Vol.3 - P.650)
| |
| toHexByte | back to summary |
|---|---|
| private byte[] toHexByte(String str, int offset, int length) Convert a string into a byte array in hex format.
| |
| toHexString | back to summary |
|---|---|
| private String toHexString(byte[] data, int offset, int length) Convert a byte array to a String with a hexadecimal format.
The String may be converted back to a byte array using fromHexString.
| |