U:RDoc::NormalClass[iI"EC:ETI"OpenSSL::PKey::EC;TI"OpenSSL::PKey::PKey;Fo:RDoc::Markup::Document: @parts[o;;[ o:RDoc::Markup::Paragraph;[I"KOpenSSL::PKey::EC provides access to Elliptic Curve Digital Signature ;TI"@Algorithm (ECDSA) and Elliptic Curve Diffie-Hellman (ECDH).;To:RDoc::Markup::BlankLineS:RDoc::Markup::Heading: leveli: textI"Key exchange;To:RDoc::Markup::Verbatim;[ I"4ec1 = OpenSSL::PKey::EC.generate("prime256v1") ;TI"4ec2 = OpenSSL::PKey::EC.generate("prime256v1") ;TI"5# ec1 and ec2 have own private key respectively ;TI"6shared_key1 = ec1.dh_compute_key(ec2.public_key) ;TI"6shared_key2 = ec2.dh_compute_key(ec1.public_key) ;TI" ;TI"*p shared_key1 == shared_key2 #=> true;T: @format0: @fileI"ext/openssl/ossl_pkey_ec.c;T:0@omit_headings_from_table_of_contents_below0;0;0[[U:RDoc::Constant[iI"NAMED_CURVE;TI"#OpenSSL::PKey::EC::NAMED_CURVE;T00o;;[;@;0@@cRDoc::NormalClass0U;[iI"EXPLICIT_CURVE;TI"&OpenSSL::PKey::EC::EXPLICIT_CURVE;T00o;;[;@;0@@@'0[[[I" class;T[[: public[[I"builtin_curves;TI"ext/openssl/ossl_pkey_ec.c;T[I" generate;T@7[I"new;T@7[:protected[[: private[[I" instance;T[[;[[I"check_key;T@7[I"dh_compute_key;T@7[I"dsa_sign_asn1;T@7[I"dsa_verify_asn1;T@7[I" export;T@7[I"generate_key;T@7[I"generate_key!;T@7[I" group;T@7[I" group=;T@7[I" private?;T@7[I"private_key;T@7[I"private_key=;T@7[I"private_key?;T@7[I" public?;T@7[I"public_key;T@7[I"public_key=;T@7[I"public_key?;T@7[I" to_der;T@7[I" to_pem;T@7[I" to_text;T@7[;[[;[[[U:RDoc::Context::Section[i0o;;[;0;0[I"ext/openssl/ossl_pkey.c;TI"OpenSSL::PKey;TcRDoc::NormalModule