是否有實用程式可以使用我建立的密鑰加密檔案?

是否有實用程式可以使用我建立的密鑰加密檔案?

我想使用我自己建立和管理的金鑰加密檔案(使用 AES 256)。有沒有支援這個的linux命令列實用程式? gpg不,我也不認為openssl是嗎?

僅供參考,我完全意識到自己創建和管理密鑰是不是被認為是安全的或最佳實踐。儘管如此,出於我自己的特殊原因,這就是我想做的。如果一切都失敗了,我可以用 java 寫一些東西來做到這一點,但如果有一個現有的實用程序,我寧願使用它。

答案1

gpg確實支援AES256,你只需要更改設定文件,有設定首選密碼的選項,還有加密時的選項。

gpg 建議不要設定加密密碼,因為它會根據偏好自動選擇,為了最大限度地提高相容性,有許多受支援的密碼。

在這裡您可以看到支援的密碼:

mike@mike-laptop4:~$ gpg --cipher-algo name --version
gpg (GnuPG) 2.1.15
libgcrypt 1.7.3-beta
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: /home/mike/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
        CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2

再次使用停用密碼:

mike@mike-laptop4:~$ gpg --cipher-algo name --version
gpg (GnuPG) 2.1.15
libgcrypt 1.7.3-beta
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: /home/mike/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Cipher: AES256, CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2

答案2

根據您的描述檢查 mcrypt 它應該按照您的要求進行。因為它允許您使用自己的密鑰。雖然我不確定為什麼不能使用 gpg?如果您嘗試將這種加密用於網路或簽名軟體,TinyCA 是另一個選擇。

您已經指出您了解自簽名的注意事項,因此我將其留給您判斷。

答案3

命令列實用程式openssl可以使用檔案中的密碼來執行此操作:

openssl aes-256-ctr -pass file:./passwordfile < file.plain > file.enc

openssl aes-256-ctr -d -pass file:./passwordfile < file.enc > file.plain

您可以用來-K設定實際使用的金鑰,而不是從密碼中衍生它,但是它也需要手動設定 IV,所以這不是很方便。

手冊頁是enc(1)

相關內容