你好,欢迎访问我的博客!登录
当前位置:首页 - 公告 - 正文 求知成瘾,却无作品!

onepass项目开源

2016-10-03公告攻城狮1522°c
A+ A-

之前一直在研究密码管理工具,相继也用过四五个密码管理工具了,各有所长,也各自存在问题,关于其他密码管理工具的好与坏我在这里不予置评,我做这个密码管理工具有两方面原因:

  • 学习javaFX技术

  • 对于别人的东西不放心,尤其是密码这么敏感的东西

其实做了这么久的开发,计算机软件那点事情我心里还是明白的,一切都并不是如你看到的那么简单,嘴上说的密码加密存储,但是实际上有没有加密存储你不知道;新出一款网络游戏,看到的服务器状态都是爆满,登录的时候都要排队,实际上你并不知道其实这这是别人营销的一部分而已,让你觉得这个游戏很火爆,玩的人很多,实际上就是运营商在登录界面做了手脚,坐个让你登录排队的小脚本也花费不了多少时间。

这一行做的越久,心里就越怕,因为你能看透所有的表象。

有时候真的是知道的多不一定是好事。

onepass是我用javaFX写的一个密码管理工具,最初研究javaFX是在2015年初的时候了,但是断断续续也没有一直好好研究下去,因为我本人是做后台开发的(JAVAEE),但是自己又对GUI比较感兴趣,所以业余时间会研究一些小东西,期初的时候我为公司的实施或运维做一些自动化部署、维护工具都用swing写的,后面了解到javaFX这个东西,感觉满喜欢的,所以onepass就决定开始用javaFX来实现了。

onepass的实现原理其实也很简单,总体来说同其他密码管理工具一样,有一个主密码统一管理其他所有密码项,可自定义分类。存储的所有密码项都是经过加密的,具体怎么加密的在源码里面可以看到,我在这就只是简单的描述一下:

  • 首先你需要一个主密码,用来打开这个密码库

  • 在登录界面只需要输入主密码就可以打开onepass主界面,在点击登录按钮的时候做了两件事情,第一,将主密码用sha512hex加密100次,将计算出的密文字符串与密码库中记录的主密码字符串进行对比,如果相同则登录成功;第二,登录成功后将主密码原文使用sha512hex加密一次,将密码写入全局变量key,在新增密码项的时候,将账号和密码使用AES加密算法进行加密,加密时用全局变量key作为加密时的key,将加密完后的密码项写入密码库,解密时同样使用key解密即可。

并且我在主界面上做了全局搜索,输入任意字符,即可检索出与之相匹配的密码项(输入的字符为账号或者备注中包含的任意字符),这个搜索会非常好用,尤其是在密码项较多的时候,可以实时显示出搜索结果。

我还在onepass中集成了云服务,如果需要多台PC同步使用一个密码库的时候,可以使用云服务。云服务可保证多台PC之间的密码库一致,同步方式是使用文件同步,会直接将密码库上传到服务器上,任意一端修改后都会记录修改时间,服务端通过校验密码库的MD5值以及修改时间可以判断如何同步密码库。

当然这个工具目前我也正在使用,不免会存在一些小的问题,但是不会影响整体的使用,只是需要时间一点一点的将它做的完美。

目前也正在逐步完善代码,并且在准备着手做一套移动版的,这样的话手机电脑就可以同步密码库了,有时候电脑不在身边,确实会使用手机登录一些网站,如果密码被onepass管理起来了,用起来就不太方便了,如果有手机版就会显得完美了。

代码是开源的,所有部分拿到源码后均可自行修改,没有谁规定必须使用我做的东西,自己高兴就自己弄一套。

最后,由于我独特的地理位置及工作环境,被照顾的很周全,无法完美的使用github,所以代码我开源在oschina上了,有兴趣的朋友可以访问一下地址查看项目主页以及进度。

http://git.oschina.net/softxj/onepass

在开源主页有项目附件,里面有我打包好的可以直接运行的jar文件,可以下载后体验,但也有可能因为与我的JDK版本不同而出现无法运行,下载源码自行编译即可。

另外,我还将onepass打包了EXE安装程序,如果使用EXE安装程序的话,基本上99%是可以完美运行的,因为我把JRE打进安装包了!也可以下载体验EXE安装版的onepass。

安装版的onepass与我开源的相同,只是我为它写了一个启动器,主要用于检测主程序完整性以及自动升级,后面有必要的话也可以将启动器代码开源,总共也没几行代码。

下载地址:http://www.onepass.vip

PS:近期我服务器所在的机房被DDOS扫段攻击了接近半个月,让人恼火!如果出现安装版无法打开,那是由于我启动器里的代码逻辑有点问题,可以在安装目录下直接运行onepass.exe即可。

标签:

本文来源:atnoce

本文地址:https://atnoce.com/?id=46

联系作者:如有疑问,可发邮件至wxhwdmxl@163.com进行反馈或者联系我QQ:384686705交流。

版权声明:如无特别注明,转载请注明本文地址!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。


  登录