@@ -13,15 +13,13 @@ def test_ec_key
13
13
# FIPS-selftest failure on some environment, so skip for now.
14
14
next if [ "Oakley" , "X25519" ] . any? { |n | curve_name . start_with? ( n ) }
15
15
16
- key = OpenSSL ::PKey ::EC . new ( curve_name )
17
- key . generate_key!
18
-
16
+ key = OpenSSL ::PKey ::EC . generate ( curve_name )
19
17
assert_predicate key , :private?
20
18
assert_predicate key , :public?
21
19
assert_nothing_raised { key . check_key }
22
20
end
23
21
24
- key1 = OpenSSL ::PKey ::EC . new ( "prime256v1" ) . generate_key!
22
+ key1 = OpenSSL ::PKey ::EC . generate ( "prime256v1" )
25
23
26
24
key2 = OpenSSL ::PKey ::EC . new
27
25
key2 . group = key1 . group
@@ -52,6 +50,13 @@ def test_generate
52
50
assert_equal ( true , ec . private? )
53
51
end
54
52
53
+ def test_generate_key
54
+ ec = OpenSSL ::PKey ::EC . new ( "prime256v1" )
55
+ assert_equal false , ec . private?
56
+ ec . generate_key!
57
+ assert_equal true , ec . private?
58
+ end if !openssl? ( 3 , 0 , 0 )
59
+
55
60
def test_marshal
56
61
key = Fixtures . pkey ( "p256" )
57
62
deserialized = Marshal . load ( Marshal . dump ( key ) )
@@ -136,7 +141,7 @@ def test_sign_verify_raw
136
141
end
137
142
138
143
def test_dsa_sign_asn1_FIPS186_3
139
- key = OpenSSL ::PKey ::EC . new ( "prime256v1" ) . generate_key!
144
+ key = OpenSSL ::PKey ::EC . generate ( "prime256v1" )
140
145
size = key . group . order . num_bits / 8 + 1
141
146
dgst = ( 1 ..size ) . to_a . pack ( 'C*' )
142
147
sig = key . dsa_sign_asn1 ( dgst )
@@ -145,8 +150,8 @@ def test_dsa_sign_asn1_FIPS186_3
145
150
end
146
151
147
152
def test_dh_compute_key
148
- key_a = OpenSSL ::PKey ::EC . new ( "prime256v1" ) . generate_key!
149
- key_b = OpenSSL ::PKey ::EC . new ( key_a . group ) . generate_key!
153
+ key_a = OpenSSL ::PKey ::EC . generate ( "prime256v1" )
154
+ key_b = OpenSSL ::PKey ::EC . generate ( key_a . group )
150
155
151
156
pub_a = key_a . public_key
152
157
pub_b = key_b . public_key
@@ -276,7 +281,7 @@ def test_ec_group
276
281
277
282
def test_ec_point
278
283
group = OpenSSL ::PKey ::EC ::Group . new ( "prime256v1" )
279
- key = OpenSSL ::PKey ::EC . new ( group ) . generate_key!
284
+ key = OpenSSL ::PKey ::EC . generate ( group )
280
285
point = key . public_key
281
286
282
287
point2 = OpenSSL ::PKey ::EC ::Point . new ( group , point . to_bn )
0 commit comments