Я читаю википедию о криптографии с открытым ключом с открытым ключом (http://en.wikipedia.org/wiki/Public-key_cryptography) и в нем говорится:
В схеме обмена ключами Диффи – Хеллмана каждая сторона генерирует пару открытого / закрытого ключей и распределяет открытый ключ ... После получения подлинной копии открытых ключей друг друга Алиса и Боб могут вычислить общий секрет в автономном режиме. Общий секрет может использоваться, например, как ключ для симметричного шифра.
Мне интересно, как этого добиться на Java? то есть, учитывая произвольный открытый ключ и произвольный частный ключ, как сгенерировать из него общий секрет?
Чтобы было понятнее:
У Алисы есть пара открытого и закрытого ключей key_pair_alice,
У Боба есть пара открытого и закрытого ключей key_pair_bob,
Если я правильно понимаю, должен существовать метод comb_keys (), чтобы:
combine_keys(key_pair_alice.private, key_pair_bob.public) ==
combine_keys(key_pair_alice.public, key_pair_bob.private)
У меня вопрос, как реализовать метод comb_keys () в Java.
Спасибо.