最近,由于 SATA 电缆故障,我的 /home 文件系统被损坏,fsck 将一堆文件发送到 lost+found。此后,Google Chrome 丢失了所有记住的密码。幸运的是,~/.config/google-chrome/
几天前我刚刚将所有内容备份到另一台计算机上,所以我只是将其复制回来。但即便如此,密码也没有找回来。
经过一番研究,我发现密码存储在一个名为的 sqlite 文件中Login Data
。我找到该文件并用 sqlitebrowser 打开它,果然保存的账户在那里,但密码是加密的。
根据我的研究,解密它们应该相当容易,但我发现的所有方法要么适用于 Windows,要么依赖于文件os_crypt.encrypted_key
中的值Local State
。但该文件中不存在这样的条目。
经过进一步研究,我发现 Chrome 现在可能依赖 KWallet(我使用 KDE Plasma)来加密和解密密码。我不知道 KWallet 是否受到损坏的影响(lost+found 中只有 40 个文件)。当我打开 KDE Wallet Manager 时,它显示 kdewallet is currently closed
,当我单击“打开...”时,什么也没有发生。
有人知道如何解密登录数据文件中的密码吗?
我的 Chrome 版本是 91.0.4472.114
答案1
所以我设法找到了一个解决方案,我在 KWallet 中创建了一个新钱包并将其设置为默认钱包 - 但这最初并没有解决问题。然后我尝试在 Chrome 中保存密码,当我在设置中检查密码时,我所有的旧密码都重新出现了。