由于数据丢失,我丢失了一些用于访问完全加密驱动器的密钥文件。驱动器上总是有非常重要的数据和信息,我最好不要丢失。
驱动器仅使用密钥文件进行加密,无需任何额外的密码或任何其他内容。
驱动器已使用默认设置加密,即以 AES 作为加密算法,以 SHA-512 作为哈希算法。
是否可以重建使用最新 VeraCrypt 版本之一生成的密钥文件,我认为是 1.26.7 或者可能是 1.26.14。
有没有人成功重建密钥文件?
如果您需要更具体的信息,请告诉我。
由于数据丢失,我丢失了一些用于访问完全加密驱动器的密钥文件。驱动器上总是有非常重要的数据和信息,我最好不要丢失。
驱动器仅使用密钥文件进行加密,无需任何额外的密码或任何其他内容。
驱动器已使用默认设置加密,即以 AES 作为加密算法,以 SHA-512 作为哈希算法。
是否可以重建使用最新 VeraCrypt 版本之一生成的密钥文件,我认为是 1.26.7 或者可能是 1.26.14。
有没有人成功重建密钥文件?
如果您需要更具体的信息,请告诉我。
我是一名 Web 开发人员,试图确保传出的 IMAP 连接能够安全地完成。不幸的是,我只能使用 PHP 的 IMAP 扩展(暂时)。imap_open ()的文档不够完善。示例:
mailbox
显然足够重要,可以破坏不兼容的字符串,但又不至于重要到需要记录下来。/ssl
标志确实使用了 TLS。/tsl
标志不起作用。/secure
标志导致Can't do secure authentication with this server
。最后一个问题是我关注的用例。文档暗示,如果/secure
未设置标志,密码将以纯文本形式发送!(除非这是类似于加密字符串的事情,尽管连接本身可能已经加密?)如果是这样,那么其他所有内容是否加密并不重要,因为任何攻击者都可以转身使用他们刚刚找到的凭据。不,我们不是在谈论双因素身份验证,因为这明确避开了这个话题,并且是削弱基本身份验证强化的借口。
这有效:{mail.example.com:993/ssl/imap}
。
这不起作用:{mail.example.com:993/ssl/imap/secure}
。
搜索引擎返回的错误页面非常少Can't do secure authentication with this server
,这意味着我看到大多数人做的事情:盲目地复制粘贴代码,只做微小的修改,然后因为它完全有效就假定他们的实现是正确的。
但我坚持要验证外观。这让我想起了 2000 年代后期,微软重新开始开发 Internet Explorer 时 Windows 上的 Fiddler 程序。你可以检查每个网络连接的各种情况。
tshark
好了tcpdump
。我有意尝试对测试条件进行压力测试,否则我将看不到任何对比,因此不会学到任何东西。发件人和收件人的电子邮件说明:
/novalidate-cert
似乎对服务器到同一服务器的请求工作正常的标志。是的,端口 993应该再次加密,重点是验证正在发生的事情,而不是盲目信任。理想情况下,我想做一个明确的纯文本请求来对比加密请求。显然,对比是,使用嗅探器程序,我能够将纯文本请求视为纯文本!然后,我期望的加密示例基本上只是混乱的二进制数据。如果我可以验证请求是我所解释的请求,那么我就得到了我想要的验证!只要我能重复该验证过程,那就是我的答案!最重要的是凭据是加密的,在两个服务器“握手”后,我期望它加密吗?
虽然我不太熟悉服务器或 Linux,但我可以稍微熟悉一下终端。因此,我希望得到有关嗅探程序的帮助:
tshark
和tcpdump
显然都是尾部程序;我如何将它们的输出限制到端口 993?如何以 root 身份从终端检查实时 Linux 服务器上的网络流量,以验证我关注的请求确实已加密?
实际上,在 Windows 上,我可以使用 Notepad++“检查”文本文件并正常读取。如果我打开光栅图像,我会看到二进制数据。我想确保凭据确实被加密,尽管 PHP 函数的文档令人困惑imap_open()
。
非常感谢@grawity。简而言之:
ifconfig -a | sed 's/[ \t].*//;/^$/d'
。tcpdump -A -n -i [NETWORK DEVICE] "port 993"
。我想解密一个文件并对其进行编辑,而不将其清晰的内容写入临时文件,以避免敏感数据的泄露。
我已经用以下命令创建了原始文件:
echo -n "hello world" | gpg --encrypt --symmetric --output sensitive.gpg
我可以解密此文件并输出:
$ gpg --decrypt sensitive.gpg
gpg: AES256.OCB encrypted session key
gpg: encrypted with 1 passphrase
gpg: encrypted with cv25519 key, ID <blablabla>
hello world
但是,当我尝试将输出通过管道传输到时gpg --encrypt
,似乎两个进程同时运行并尝试同时使用 stdin:
gpg --no-symkey-cache --pinentry-mode loopback --decrypt sensitive.gpg | gpg --encrypt --symmetric --pinentry-mode loopback --output sensitive.gpg
在我输入任何密码之前,这里是输出:
gpg: AES256.OCB encrypted session key
Enter passphrase: Enter passphrase:
您可以看到它两次询问我密码。
以下是正在运行的进程:
$ ps | grep gpg
49716 ttys002 0:00.02 gpg --no-symkey-cache --pinentry-mode loopback --decrypt sensitive.gpg
49717 ttys002 0:00.01 gpg --encrypt --symmetric --pinentry-mode loopback --output sensitive.gpg
有没有什么解决方案可以gpg --encrypt
等待gpg --decrypt
它完成其工作?
我想vipe
在这两个命令之间添加一个编辑器。
我实际上为我的电子邮件帐户启用了外部 GPG 密钥 ID,因此我可以毫无问题地解密/签名。
但是,我发现现在无法使用系统密钥环中的公钥。今天我发现了这个问题,因为我导入了新密钥。我不记得之前需要做什么特别的事情,但现在显然 Thunderbird 无法看到我的 中的新密钥~/.gnupg
。
有没有办法导入所有的公钥?
我可以格式化 BitLocker 加密驱动器而无需解锁它。但我在网上看到很多文章说我做不到。如果我在锁定状态下格式化驱动器,会对驱动器造成任何损坏吗?期待你的答复。
长话短说,在尝试将我的外部 SSD 从 exFAT 转换为 NTFS 时,我搞砸了一些事情,最终损坏了一个充满 EFS 加密文件的文件夹。我可以看到这些文件,但在 Windows 下访问它们会出现错误 ( Make sure a disk is in the drive you specified
)。但是,使用 Linux,我可以访问这些文件,无论它们的PFILE
格式如何。如果我尝试将PFILE
文件复制到 Windows,它不会将它们视为加密的,因此不会提供解密它们的选项。有什么办法可以解密它们,还是我被搞砸了?
编辑:我发现当创建加密文件或将其移动到 exFAT 驱动器时,该文件具有PFILE
扩展名(仅在 Linux 下可见)。但是,在 NTFS 驱动器上,该文件具有其正常扩展名(在 Windows 和 Linux 下)。但是,这不会影响解密,因为我能够成功解密同一 exFAT 驱动器中的其他文件。
我id_rsa
使用以下命令将私钥转换为 RSA 格式
ssh-keygen -p -m PEM -f ~/.ssh/id_rsa
在这个答案中解释了。
然后我添加了一些方便的别名,这些别名允许我使用自己的身份文件加密和解密数据:
alias encrypt='openssl pkeyutl -encrypt -pkeyopt rsa_padding_mode:oaep -pkeyopt rsa_oaep_md:sha256 -pubin -inkey <(ssh-keygen -e -f "$HOME/.ssh/id_rsa.pub" -m PKCS8)'
alias decrypt='openssl pkeyutl -decrypt -pkeyopt rsa_padding_mode:oaep -pkeyopt rsa_oaep_md:sha256 -inkey "$HOME/.ssh/id_rsa"'
现在我可以做:
echo foobar | encrypt > test.enc
cat test.enc | decrypt
它将打印foobar
,但test.enc
可以存储而不暴露foobar
。当然有更好的方法来做到这一点,但我尝试这样做的原因是为了摆脱任何密码提示。
我的id_rsa
受密码保护,但我启动终端会话时ssh-add
仅提示我输入一次密码,这样当我使用ssh
(包括git
)时,我不必再次输入我的密码。
然而,对于 却不能这样说openssl pkeyutl -decrypt
,每当我使用它时,它都会要求输入密码短语,这是有道理的,因为openssl
是 所使用的底层工具openssh
。
无论如何,有什么办法可以使用ssh-add
会话吗openssl
?
具体来说,我询问密文是否可以包含诸如 之类的字节序列170303
,这是一种可能的 TLS 记录标头。
通常,解析 TCP 字节流的应用程序通过解析标头并从标头开始后的第 4 个和第 5 个字节中提取八位位组的长度来分隔 TLS 记录。然后,我假设它向前跳过并尝试在由先前解析的标头计算出的偏移量处读取下一条记录。
我的问题是,TLS 1.3 的 AES 256 GCM 实施是否对密码输出施加了任何限制?RFC 没有提及这一点。是否存在以 header 开头170303xxxx
,但也包含170303
密文一部分的 TLS 记录?
我的主目录中有一个使用 eCryptfs 加密的目录。不知何故,它被损坏了,我无法读取目录中的任何文件。我不想尝试修复它,因为我有最近的备份。
因此,我将备份复制到我的主目录中,例如:
mv directory directory.corrupted
cp /mnt/backup/directory /home/user/directory
现在,当我尝试在刚刚复制的未加密目录上使用 ecryptfs 时,它只会挂载它而不会出现错误消息,但文件变得不可读(并且当我卸载它时变得可读)。不知何故,我需要能够告诉 eCryptfs 我正在使用此目录名重新开始,并且需要重新加密。
我想,我可以只使用不同的目录名称进行加密,但我有使用它的脚本等,并且我不想编辑它们。
顺便说一句,我还有其他目录也使用 eCryptfs 加密,并且它们都可以正常安装和卸载。这仅限于我的加密目录之一。
我在 MSI 笔记本电脑上运行 Ubuntu 23.04,KDE Plasma 5.27.4。
uname -a
Linux mybox 6.2.0-26-generic #26-Ubuntu SMP PREEMPT_DYNAMIC Mon Jul 10 23:39:54 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux