# onepass4.0 **Repository Path**: softxj/onepass4.0 ## Basic Information - **Project Name**: onepass4.0 - **Description**: javaFX创建的一个密码管理工具 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://www.atnoce.com - **GVP Project**: No ## Statistics - **Stars**: 56 - **Forks**: 10 - **Created**: 2016-12-02 - **Last Updated**: 2025-08-15 ## Categories & Tags **Categories**: security-dev **Tags**: None ## README #onepass4.0 # ---------- > 因本人比较在意程序执行效率,在客户端开发方面这些年也一直在摸索和实验中,这个小工具可以说是在实验过程中的一个产物,主要看程序运行以后所占用CPU及内存大小,如果实现相同的功能,但是可以使用更少的CPU及内存资源,我就会觉得这个程序做的不错,这也是我一直以来探索的方向。此版本工具没有再更新是因为我使用QT重新实现了这个工具并且一直在使用,使用QT开发的程序相对于JavaFX开发的程序,可以使用更少的系统资源,而且可以很流畅。不过JavaFX技术现在也有更好的打包方式image-native,我发现image-native可以让JavaFX在执行效率和资源占用上有较大的改善,后期可以再探索一下。 > > 现将这个工具的QT实现开源:[https://gitee.com/softxj/one-pass-xclient](https://gitee.com/softxj/one-pass-xclient) > > QT版本一直没开源是因为做的过程中很多代码没有美化,写法、命名之类的可能看着不美观,但逻辑是完整的,想着抽时间把代码美化一下再开源,但是因为分身乏力,没啥时间去优化了,所以看的时候凑合看吧,应该可以正常编译,运行中只需要10M以内的内存。 > **onepasss**是一个基于javaFX创建的密码管理工具,类似于1Password、keepass等,主要用来管理日益增多的个人密码。 **onepass**就是专门为了解决人类记不得众多密码的问题所产生的,它包含了一个强大的密码产生引擎与加密储存机能,能够提供一个安全的密码储存空间。当你开始使用 **onepass** 时,要先决定一个起始密码。此密码用来辨识你的身分,决定你是否可以使用 **onepass** 软件,因此千万不要忘了。启动后你就可以开始储存密码,在 **onepass** 软件中已经有一些预设的密码分类,你可以自己再根据需要建立自己喜欢的密码储存分类。 ## onepass介绍 ## 办公室电脑密码、笔记本密码、家里电脑密码、上网帐号密码、手机服务密码、邮箱密码、QQ 密码、银行卡查询密码、银行卡交易密码、银行卡网上支付密码……现在的我们需要记太多太多的密码。纵然我们可以使一些密码一致,但无法让所有的密码都一样,到头来,我们仍要记不少的密码,尤其是对于掌握信息系统的人来说,密码更多了。 实际上把密码记下来,也不代表不安全,完全留在脑中,反而容易忘记。所以有了 **onepass**。 1. **onepass** 采用了强大的密码加密算法(使用了512位的AES密匙),保证了在本机上不获取得到您的信息,所以您可以在任何时候和地点取回您的信息。 2. 您在本机的密码将被加密存储,您的密码可以存在您的PC,MAC和移动设备上。您大可以放心,只有您的**onepass**密码才能解锁它们。如果您换了计算机,或者计算机丢失了,您也不要惊慌,因为您的加密数据将被备份在您在官方服务器中,只要在新的设备上安装**onepass**,即可无缝的恢复您的密码。 3. **onepass** 提供了一个额外定制,包括iOS设备,安卓(Android)应用程序,加强支持,多因素认证,没有广告。 **onepass**密码管理系统是一款轻量级的,强大易用的**开源**密码管理系统,你的密码或者key文件存在数据库中。 ## 原理 ## **onepass** 是一款管理密码的开源的免费软件,**onepass** 将密码存储为一个数据库,而这个数据库由一个主密码或密码文件锁住,也就是说我们只需要记住一个主密码,就可以解开这个数据库,就可以获得其他的密码内容。不用担心安全,这个数据库采用当今非常安全的密码算法**AES512** 和 **sha512**。 ## 应用 ## **onepass**主要有两部分作用: 1、生成不易于破解的随机密码:它自带了一个密码生成器,可以按照指定的字符类(大小写、数字、特殊符号)生成指定位数的密码。 2、分类管理密码:你可以指定数据的加密次数;密码你可以分类别进行管理,并且双击密码条目时显示密码信息,快速复制用户名和密码字段的数据;复制到剪贴板的数据可以定时清除。 ## 优势 ## **安全**:截至此时应该没有泄露的风险,就算数据库丢了没访问密码问题也不严重(太BT我没有尝试); **方便**:注册网站时首先创建一个新条目,随机生成密码后再填入注册网站,方便且密码多变。登录各个网站时,可以直接双击需要复制的字段,再去登陆框粘贴即可; **简单**:没有大多数密码管理软件的繁琐,使用熟练后会非常舒心; **多样**:软件是开源的,数据库除了在Windows可以使用,在Linux、MacOS X 等都可以使用。 ## 快速开始 ## 该项目使用idea开发,将源码拉取至本地后使用IDEA打开项目,自行编译即可运行。 程序运行时会读取config文件夹下的onepass.properties配置文件,根据配置的不同界面会有所不同,配置文件说明如下: ``` #绑定的云账号 COLUDACCOUNT= #是否激活云服务 ACTIONCLOUD=false #是否第一次运行 FIRSTSTART=true #同步服务器地址 BASE_SERVER_ADDR=127.0.0.1\:8080 ``` 一般情况下如果是第一次运行的话配置信息跟上面的是相同的,不需要更改什么即可运行: ![输入图片说明](http://git.oschina.net/uploads/images/2016/1210/134539_705b382d_470721.png "首次运行引导") 这是第一次运行的时候引导界面, **如果以前没有使用过onepass,那么就选择创建主密码** ; **如果已经在用onepass并且激活了云服务,那么就可以选择绑定云账号,绑定成功后会自动从服务器同步密码记录到本地** 。绑定云账号时的绑定号不需要填写,只需要填写云账号即可。 ![输入图片说明](http://git.oschina.net/uploads/images/2016/1210/135307_ca5fd20f_470721.png "设置主密码") ![输入图片说明](http://git.oschina.net/uploads/images/2016/1210/135353_3e243173_470721.png "绑定云账号") 上面两个截图分别是创建主密码和绑定云账号,操作成功后都会进入登录页面: ![输入图片说明](http://git.oschina.net/uploads/images/2016/1210/144526_933aa624_470721.png "登录页面") 输入主密码,即可进入主界面: ![输入图片说明](http://git.oschina.net/uploads/images/2016/1210/144622_bd54f974_470721.png "主界面") 进入主界面后要首先添加分类,然后再根据自己的需要添加密码项即可。 首选项界面提供onepass简单的设置功能,可以根据自己的习惯配置工具。 ## 使用云服务 ## 在首选项的云服务配置界面,可以注册云账号,云账号注册成功后就可以使用onepass提供的云服务功能同步密码记录。如果您不愿意使用onepass官方提供的同步服务,可以自行下载服务端代码,同步服务也是开源的,下载代码后自己编译服务器代码,启自己的云服务器,在同步配置界面填写自己的服务器地址即可。 服务器端代码开源地址:[onepass云服务开源地址](http://git.oschina.net/softxj/onepass_cloud)