เหตุใด OpenSSL จึงมีสองยูทิลิตี้ที่มีการทับซ้อนกันมาก
genpkey
:
OpenSSL> genpkey -
Usage: genpkey [options]
where options may be
-out file output file
-outform X output format (DER or PEM)
-pass arg output file pass phrase source
-<cipher> use cipher <cipher> to encrypt the key
-engine e use engine e, possibly a hardware device.
-paramfile file parameters file
-algorithm alg the public key algorithm
-pkeyopt opt:value set the public key algorithm option <opt>
to value <value>
-genparam generate parameters, not key
-text print the in text
NB: options order may be important! See the manual page.
และgenrsa
:
OpenSSL> genrsa -
usage: genrsa [args] [numbits]
-des encrypt the generated key with DES in cbc mode
-des3 encrypt the generated key with DES in ede cbc mode (168 bit key)
-seed
encrypt PEM output with cbc seed
-aes128, -aes192, -aes256
encrypt PEM output with cbc aes
-camellia128, -camellia192, -camellia256
encrypt PEM output with cbc camellia
-out file output the key to 'file
-passout arg output file pass phrase source
-f4 use F4 (0x10001) for the E value
-3 use 3 for the E value
-engine e use engine e, possibly a hardware device.
-rand file:file:...
load the file (or the files in the directory) into
the random number generator
เอกสารใน Debian ก็แปลกจริง ๆ เกี่ยวกับเรื่องนี้
genpkey Generation of Private Key or Parameters.
genrsa Generation of RSA Private Key. Superceded by genpkey.
คือgenpkey
การเปลี่ยน? ถ้าเป็นเช่นนั้นทำไมมันถึงไม่มี-des3
? และเราจะเพิ่มรหัสผ่านอย่างไรและระบุความยาวคีย์ได้อย่างไร
genrsa
และgenpkey
แตกต่างกันจริง โครงสร้าง ASN.1 ของคีย์ที่สร้างโดยใช้genrsa
คือ pkcs # 1 ในขณะที่คีย์ที่สร้างโดยใช้genpkey
คือ pkcs # 8 หากยังไม่ดีพอหากคุณใช้งานgenpkey -outform der
ก็จะกลับไปใช้ pkcs # 1 ด้วย EC ก็จะยิ่งเลวร้ายอย่างใดgenec
หายไปแทนที่จะมีecparam -genkey
และอย่างใดecparam -genkey
,genpkey -outform pem
,genpkey -outform der
ทุกคนต้องมีโครงสร้างที่แตกต่างกัน ASN.1