受够了广告和收费,我写了个一个开源密码本

密码本可以说是一个非常常见的需求了。

但是想找一个简单好用的密码本却不是什么容易的事,常见的要么是在线服务,需要收费,还时不时传出个密码大规模泄露的问题,就算服务一直稳如老狗,密码一直存在别人机器里总有点不舒服。至于免费的软件,需要费很多功夫搭工具链,搞密码文件多地同步。还得安装软件,还说不定只有桌面端没有手机端,还有 UI 方面,高情商的说是"显得不那么现代"。

说实话,我很烦。

我的密码也不是什么值钱玩意,几张卡里加起来也没几十块钱。还有什么公司邮箱,公司 vpn 这种几百年不见一次的密码,我的要求不高,就是想找个地方能存一下,需要的时候能找到,甚至都不强求一定要够安全。只要不是写到别人脸上那种我都可以。

但是事与愿违,我真没找到,那还说什么,自己动手呗。所以这个项目诞生了:

HoPGoldy/cube-password: 一个简单扁平的桌面 / 移动端密码本。 (github.com)

长啥样?

应用对桌面端和移动端都进行了适配,用起来也算是方便:

创建密码时不仅支持生成随机密码,还可以随机生成用户名,我非常喜欢这个功能,特别是注册那种无关紧要的网站时必须要填用户名的时候。

怎么用?

很简单,首先你得有一台装好了 docker 的服务器,然后敲一下命令:

bash 复制代码
docker run -d -p 3701:3700 -v ~/cube-password-storage:/app hopgoldy/cube-password

可以了,之后应用就会运行在 3701 端口上,并把数据保存在 ~/cube-password-storage。啥配置都不用,跑起来内存占用也就四五十M,非常令人舒爽。

如果你想直接放在互联网上用,可以,这东西自带加密让你即使裸跑在 HTTP 上也能保证不被别人扒裤子。但是毕竟是 web 应用,中间人 js 注入之类的问题确实不好防,如果可以的话非常推荐上个 HTTPS,安全感一下子就起来了。

cube-password 本身不支持 https 传输,推荐用前置 nginx 来实现这个需求,模板 nginx 配置文件

之后直接访问即可,首次打开会让你设置一个主密码,千万别忘了!最好写个纸条塞到你钱包里。然后就可以用了,登录后半小时过期,直接关页面也过期。桌面端移动端通用,功能没啥特别的大家摸索一下就会。

安全么?

虽然我对安全的要求并不高,但是既然开源出来的,咱的标准还是要高一点的,这个项目都用到了哪些安全相关的技术呢:

  • sha512、sha256、aes、128 位 nanoid、加盐
  • 挑战码鉴权
  • 全局登录重试限制
  • 防重放攻击检查
  • 异地登陆 / ip 地址检查
  • totp 二步验证
  • 分组加密
  • ...

完整的安全说明可以看 这里

说实话,我的密码学研究的也一般,搜肠刮肚也就能拿出来这些个方案。不过我觉得也是够用了,起码你让我来攻破一下这个应用我还真做不到。别的不说,密码你得记牢一点,忘了之后数据说找不回来那是真找不回来。

当然你要说 ddos 淹一下我也没辙。但是咱往日无怨近日无仇的,nginx 搞个复杂点的路径别人都扫不到这个网站对吧,犯不着担心这个。

用的什么技术栈?

项目采用了 nodejs 全栈,前端 react + antd,后端 koa + sqlit,完全由 ts 开发。后端用函数式实现了一个简单的依赖注入框架。注释也算比较全,想要上手 node 全栈的同学也可以去瞅瞅,大家相互交流。

相关推荐
FIT2CLOUD飞致云8 小时前
AI智能问数能力全面升级,DataEase开源BI工具v2.10.13 LTS版本发布
开源
FIT2CLOUD飞致云8 小时前
九月月报丨MaxKB在不同规模医疗机构的应用进展汇报
人工智能·开源
RoyLin9 小时前
TypeScript设计模式:适配器模式
前端·后端·node.js
算家计算9 小时前
AI配音革命!B站最新开源IndexTTS2本地部署教程:精准对口型,情感随心换
人工智能·开源·aigc
OpenTiny社区10 小时前
OpenTiny NEXT 内核新生:生成式UI × MCP,重塑前端交互新范式!
前端·开源·agent
刘立军13 小时前
本地大模型编程实战(33)用SSE实现大模型的流式输出
架构·langchain·全栈
幂简集成explinks13 小时前
e签宝签署API更新实战:新增 signType 与 FDA 合规参数配置
后端·设计模式·开源
RoyLin14 小时前
TypeScript设计模式:迭代器模式
javascript·后端·node.js
控心つcrazy15 小时前
《独立开发者精选工具》第 018 期
开源·开发·工具·独立开发·出海·独立开发者
jctech17 小时前
这才是2025年的插件化!ComboLite 2.0:为Compose开发者带来极致“爽”感
android·开源