OpenSSL

密碼學和 SSL/TLS 工具組

openssl-dsa

名稱

openssl-dsa - DSA 金鑰處理

語法

openssl dsa [-help] [-inform DER|PEM] [-outform DER|PEM] [-in filename] [-passin arg] [-out filename] [-passout arg] [-aes128] [-aes192] [-aes256] [-aria128] [-aria192] [-aria256] [-camellia128] [-camellia192] [-camellia256] [-des] [-des3] [-idea] [-text] [-noout] [-modulus] [-pubin] [-pubout] [-pvk-strong] [-pvk-weak] [-pvk-none] [-engine id] [-provider name] [-provider-path path] [-propquery propq]

說明

此指令處理 DSA 金鑰。它們可以在各種格式之間轉換,並列印其組成部分。注意此指令使用傳統的 SSLeay 相容格式進行私密金鑰加密:較新的應用程式應使用更安全的 PKCS#8 格式,方法是使用 pkcs8

選項

-help

列印使用說明。

-inform DER|PEM

金鑰輸入格式;預設未指定。有關詳細資訊,請參閱 openssl-format-options(1)

-outform DER|PEM

金鑰輸出格式;預設為 PEM。有關詳細資訊,請參閱 openssl-format-options(1)

私密金鑰是 ASN.1 INTEGERS 的序列:版本 (零)、pqg,以及公用和私密金鑰組成部分。公用金鑰是具有 DSA 類型的 SubjectPublicKeyInfo 結構。

PEM 格式也接受 PKCS#8 資料。

-in filename

這指定要從中讀取金鑰的輸入檔名,如果未指定此選項,則為標準輸入。如果金鑰已加密,系統將提示輸入密語。

-out filename

這指定要寫入金鑰的輸出檔名,如果未指定,則為標準輸出。如果設定任何加密選項,系統將提示輸入密語。輸出檔名不應與輸入檔名相同。

-passin arg, -passout arg

輸入和輸出檔案的密碼來源。有關 arg 格式的更多資訊,請參閱 openssl-passphrase-options(1)

-aes128, -aes192, -aes256, -aria128, -aria192, -aria256, -camellia128, -camellia192, -camellia256, -des, -des3, -idea

這些選項會在輸出私密金鑰之前,使用指定的密碼對其進行加密。系統會提示輸入密碼。如果未指定這些選項,金鑰會以純文字寫入。這表示此指令可用於移除金鑰的密碼,方法是不提供任何加密選項,或透過設定密碼來新增或變更密碼。這些選項只能與 PEM 格式的輸出檔案搭配使用。

-text

列印公開、私密金鑰元件和參數。

-noout

此選項會防止輸出金鑰的編碼版本。

-modulus

此選項會列印金鑰的公開金鑰元件值。

-pubin

預設情況下,會從輸入中讀取私密金鑰。使用此選項時,會改為讀取公開金鑰。如果輸入中沒有公開金鑰,但有私密金鑰,則會使用其公開部分。

-pubout

預設情況下,會輸出私密金鑰。使用此選項時,會改為輸出公開金鑰。如果輸入是公開金鑰,此選項會自動設定。

-pvk-strong

啟用「強」PVK 編碼層級(預設)。

-pvk-weak

啟用「弱」PVK 編碼層級。

-pvk-none

不強制執行 PVK 編碼。

-engine id

請參閱 openssl(1) 中的「引擎選項」。此選項已棄用。

-provider name
-provider-path path
-propquery propq

請參閱 openssl(1) 中的「提供者選項」、provider(7) 和 property(7)。

openssl-pkey(1) 指令能夠執行此指令的所有作業,並支援其他公開金鑰類型。

範例

openssl-pkey(1) 指令的文件包含等同於下列所列範例的範例。

移除 DSA 私密金鑰的密碼

openssl dsa -in key.pem -out keyout.pem

使用三重 DES 加密私密金鑰

openssl dsa -in key.pem -des3 -out keyout.pem

將私密金鑰從 PEM 轉換為 DER 格式

openssl dsa -in key.pem -outform DER -out keyout.der

將私密金鑰的元件列印到標準輸出

openssl dsa -in key.pem -text -noout

僅輸出私密金鑰的公開部分

openssl dsa -in key.pem -pubout -out pubkey.pem

另請參閱

openssl(1)openssl-pkey(1)openssl-dsaparam(1)openssl-gendsa(1)openssl-rsa(1)openssl-genrsa(1)

歷史記錄

-engine 選項已於 OpenSSL 3.0 中棄用。

版權所有 2000-2023 The OpenSSL Project Authors。保留所有權利。

根據 Apache 授權條款 2.0(「授權條款」)授權。您不得在不遵守授權條款的情況下使用此檔案。您可以在原始程式碼散佈中的 LICENSE 檔案中取得副本,或至 https://www.openssl.org/source/license.html 取得副本。