Диффи-Хеллман установил параметр генератора в BouncyCastle - PullRequest
2 голосов
/ 03 ноября 2010

Я хочу создать новый параметр DH, как определено в PKCS # 3:

DHParameter ::= SEQUENCE {
    prime INTEGER, -- p
    base INTEGER, -- g
    privateValueLength INTEGER OPTIONAL
}

с использованием BouncyCastle.Мой текущий код

DHParametersGenerator generator = new DHParametersGenerator();  
generator.init(2048, DEFAULT_PRIME_CERTAINTY, new SecureRandom());
DHParameters params = generator.generateParameters();

работает нормально, но я не вижу способа установить base самостоятельно, кроме изменения библиотеки.Есть ли какое-то решение, которое мне не хватает?

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 12 августа 2013

На самом деле вы можете установить базу по вашему выбору, используя тот же класс. Таким образом, ваш код станет: -

DHParametersGenerator generator = new DHParametersGenerator();  
generator.init(2048, DEFAULT_PRIME_CERTAINTY, new SecureRandom());
DHParameters params = generator.generateParameters();
DHParameters realParams = new DHParameters(params.getP(), BigInteger.valueOf(2));
0 голосов
/ 31 декабря 2010

На самом деле, в большинстве реализаций DH используется предопределенное базовое значение, поэтому без модификаций источников сделать это невозможно.

...