public_key -> OpenSSL::PKey::DH[permalink][rdoc][edit]-
selfの鍵パラメータ(p, g)だけを持つ新しい DH インスタンスを返します。メソッド名に反して、返り値のオブジェクトは鍵パラメータのみを持ち、公開鍵(pub_key)は含まれません。
このメソッドは後方互換性のために提供されています。多くの場合、このメソッドを呼ぶ必要はありません。公開鍵をシリアライズしたい場合は OpenSSL::PKey::PKey#public_to_pem や OpenSSL::PKey::PKey#public_to_der を使ってください。パラメータを保持したまま鍵対を再生成したい場合は OpenSSL::PKey?.generate_key の利用を検討してください。
require "openssl" dh1 = OpenSSL::PKey::DH.generate(2048) p dh1.priv_key.class # => OpenSSL::BN dhcopy = dh1.public_key p dhcopy.priv_key # => nil