Example usage for org.bouncycastle.crypto.agreement DHStandardGroups rfc5114_2048_256

List of usage examples for org.bouncycastle.crypto.agreement DHStandardGroups rfc5114_2048_256

Introduction

In this page you can find the example usage for org.bouncycastle.crypto.agreement DHStandardGroups rfc5114_2048_256.

Prototype

DHParameters rfc5114_2048_256

To view the source code for org.bouncycastle.crypto.agreement DHStandardGroups rfc5114_2048_256.

Click Source Link

Usage

From source file:org.fejoa.library.crypto.AuthProtocolEKE2_SHA3_256_CTR.java

License:Open Source License

private AuthProtocolEKE2_SHA3_256_CTR(String encGroup, byte[] secret)
        throws CryptoException, InvalidKeySpecException, NoSuchAlgorithmException {
    DHParameters parameters;//from   ww w . java2  s  .  c  o m
    switch (encGroup) {
    case RFC5114_2048_256: {
        parameters = DHStandardGroups.rfc5114_2048_256;
        break;
    }

    default:
        throw new CryptoException("Unsupported group: " + encGroup);
    }
    g = parameters.getG();
    p = parameters.getP();

    symmetric = CryptoSettings.getDefault().symmetric;
    // Note: no padding might be important to prevent some attacks(?)
    symmetric.algorithm = "AES/CTR/NoPadding";
    symmetric.keyType = "AES";
    symmetric.keySize = 256;
    symmetric.ivSize = 16 * 8;

    this.secretKey = CryptoHelper.secretKey(secret, symmetric);
}