You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改交互式Python脚本支持启动传参 实现Bitwarden文件密码试解密

问题背景

丢失了自己的Bitwarden文件密码,计划使用BitwardenDecrypt脚本进行解密,目前已准备好存储候选密码的CSV字典文件,也已经在Windows命令行手动测试过类似文件的解密流程可正常运行。

预期工作流

需要将BitwardenDecrypt集成到自定义脚本中,实现如下流程:

  • 从CSV文件中读取候选密码
  • 调用BitwardenDecrypt并传入读取到的候选密码
  • 检查命令执行的退出码
  • 若退出码不为0,继续尝试下一个候选密码
BitwardenDecrypt脚本修改方案

你可以直接修改原版Python脚本的输入逻辑,让它支持接收启动参数,具体修改步骤如下:

  1. 找到脚本中原本读取用户输入密码的代码段,原版默认是调用input()函数交互式提示输入密码,把这部分替换为接收命令行参数即可
  2. 在脚本开头导入sys模块,通过sys.argv获取传入的参数,比如第2个参数(索引为1)作为Bitwarden备份文件路径,第3个参数(索引为2)作为传入的候选密码
  3. 新增退出码返回逻辑:解密成功时调用sys.exit(0),解密失败时调用sys.exit(1),方便外层脚本判断执行结果

参考修改代码段

# 脚本开头新增导入sys模块
import sys

# 替换原交互式输入部分的代码
if len(sys.argv) < 3:
    print("用法:python BitwardenDecrypt.py <备份文件路径> <候选密码>")
    sys.exit(2)
backup_path = sys.argv[1]
candidate_pwd = sys.argv[2]

# 原有解密逻辑不变,在解密成功的分支添加
sys.exit(0)
# 在解密失败的分支添加
sys.exit(1)
Windows环境外层遍历脚本示例

你可以直接写一个bat脚本执行字典遍历,无需额外依赖:

@echo off
set "backup_file=替换为你的Bitwarden备份文件完整路径"
for /f "tokens=*" %%a in (替换为你的字典CSV文件路径) do (
    echo 正在尝试密码:%%a
    python BitwardenDecrypt.py "%backup_file%" "%%a"
    if %errorlevel% equ 0 (
        echo 匹配到正确密码:%%a
        pause
        exit /b 0
    )
)
echo 所有候选密码尝试完毕,未找到匹配密码
pause

内容的提问来源于stack exchange,提问作者Josh Beckmann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 08:15:04