如果这是不可能的,请原谅我。我的目标是利用经过。根据进行的研究,pass
命令实用程序似乎需要 GPG 密钥才能存储敏感数据。
现在,为了生成 GPG 密钥,需要运行以下命令
gpg --full-generate-key
这是使用 的先决条件pass
。
从输出中,我们可以看到可供选择的选项如下:
gpg (GnuPG) 2.2.27; Copyright (C) 2021 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
gpg: directory '/home/user1/.gnupg' created
gpg: keybox '/home/user1/.gnupg/pubring.kbx' created
Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
(14) Existing key from card
Your selection?
正如您所看到的,您可以使用 RSA 或 DSA,尽管 GPG 指定您可以使用AES256
.
gpg (GnuPG) 2.2.27
libgcrypt 1.8.8
Copyright (C) 2021 Free Software Foundation, Inc.
License GNU GPL-3.0-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/user1/.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
pass
这是否意味着使用AES256
加密方法无法保护您的密码?
答案1
不幸的是,你想要做的事情是不可能的。
- AES256是一个对称密钥算法,即使用相同的密钥进行加密和解密。
- 的
--generate-key
or选项用于创建--full-generate-key
gpg
非对称公钥/私钥对,其中公钥用于加密,私钥用于解密。
请注意,它AES256
列在“Cipher”选项下,而不是“Pubkey”。
那就是说,我可以理解您更喜欢 AES256 比 RSA 更高的安全级别。然而,似乎ECDSA 和 ED25519 算法可以提供类似的安全性到 AES256。
要在 中启用它gpg2
,您需要指定--expert
选项。当询问“您想要什么样的钥匙”时,选择
(9) ECC and ECC
分别与NIST P-256
或Curve 25519
。两种曲线算法提供相同级别的安全性,ED25519 比 ECDSA 快一点点。