1password密码库格式更新
由于国内网络安全做的太差,经常发生被脱裤的事件,比如最近的网易邮箱(via 乌云),所以只好用1password这类密码管理软件,实现一站一密。昨晚半夜冻醒了,刷推刷到了这个:1password-leaks-your-data,整个人吓醒了=_=# 作者有点标题党,脱水版可以参见reddit的这篇文章,大意是1password的旧密码库格式叫agilechains,大体是json结构,里面只有密码是加密的,密码项的名字和URL并未加密。官方提到历史原因,早期计算能力弱,只好加密关键部位。官方推出的密码库更新指南在此:Switching to OPVault format
但是,今天折腾了大半天,发现官方指南其实并没有考虑到同步的情况。我在Win,iOS,以及Mac OS X上都有使用1password,使用dropbox进行同步。官方对新的数据格式OPVault有版本要求,所有设备的1password都需要升级。升级完成后,官方没有办法直接转换到OPVault上来。需要先导出一个纯文本1pif格式,完全不带加密,然后创建一个新库,选择新的OPVault格式,再导入刚刚的1pif文件。因为之前已经有和dropbox同步,于是1password就自作主张将dropbox目录里的老库和新库合并,结果所有密码变成两份。。。由于Dropbox的版本控制只针对文件而非目录,我还要一个一个文件的回滚,崩溃了。。
以win平台为例,正确做法应该是这样:先停掉dropbox的同步。删掉dropbox里的备份文件,如果是iOS创建的Dropbox备份,文件位置在Apps/1Password/1password.agilechains。然后创建新的密码库,格式选择OPVault,文件保存在Apps/1Password/1password.opvault。将原来的主密码库导出一个纯文本1PIF文件,然后删掉原来旧格式的主密码库,如果UI没有提供接口,就退出1password,直接搜索所有的1password.agilechains来删除。删除时,注意使用Eraser来清理数据,不然就会犯陈冠希老师的错了。在新格式的OPVault里导入原来的1PIF文件,大致检查一下数量对不对,有没有漏的,没有的话就可以用Eraser将这个最容易泄密的1PIF干掉了。一切准备停当,可以打开dropbox同步,dropbox这时候应该自动将新密码库上传上去了。
win平台处理完,其他平台可以参考同样流程。不要依赖1password自己的同步,只要记住文件到了,密码库就在手上,利用dropbox完成同步即可。先把iOS的卸载掉,再重新安装,选择我是已有密码库的用户,导入dropbox里的密码库就搞定了。Mac OS X稍微有点麻烦,直接删除app不会删除备份,而且貌似1password 5是使用了sqlite来作本地数据缓存。我们需要在Finder里,前往文件夹~/Library/Application Support/1Password 4, 删除里面的数据。最新的OS X EI Capitan取消了安全清除废纸篓,可以用命令行的srm代替。然后再打开软件,就可以像iOS一样,选择已有的密码库来操作了。
1password密码库格式更新的更多相关文章
- 为你的PHP程序选择合适的密码库(初稿)
如果本文中的术语让你感到疑惑,请先参阅密码学术语及概念一文. 密码学不是魔术.加密一个应用程序并不能保证它在袭击下的安全(特别是在你没有设置验证密文的情况下).但如果出于商业需求你要确保程序的安全,传 ...
- passwd 修改用户密码 / chpasswd 批量更新用户密码
passwd 修改用户密码 1.命令功能 passwd 修改用户密码及密码过期时间等信息. 2.语法格式 passwd option username passwd 选项 用户名 选项说明 ...
- Window下 Qt 编译MySQL驱动(居然用到了动态库格式转换工具)
一步步在Window下开发Qt 今天开始安装MySQL,看了些关于MySQL安装的博文,方法大致相同,但是遇到的细节问题各有不同,或者没有讲全面,下面来说说个人的安装过程及遇到的问题. 1.首先下载, ...
- 使用using current logfile实现DG备库实时更新
DG1是主库,DG2是备库:运行在最大可用模式. 实验一:未使用using current logfile参数时,备库在最大可用模式下,不能实时同步备库的更新 -此时需要等待主库进行归档---侧面证明 ...
- 树莓派下编译并使用miracl密码库
参考:Linux下编译并使用miracl密码库 MIRACL用户手册:https://wenku.baidu.com/view/d542f2ed0975f46527d3e1dc.html 具体过程. ...
- go语言标准库 时刻更新
Packages Standard library Other packages Sub-repositories Community Standard library ▾ Name Synops ...
- Javascript触屏手势库-JTouch(更新V1.1)
作者:痞子|时间:2013-05-21|分类目录:js,javascript,jquery教程|Tag标签: javascript.jTouch|阅读(857) 7 条评论 Javascript触屏手 ...
- [转]git提交代码时遇到代码库有更新以及本地有更新的解决方法
本文转自:https://blog.csdn.net/myphp2012/article/details/80519156 在多人协作开发时,经常碰到同事把最新修改推送到远程库,你在本地也做了修改,这 ...
- 葡萄城报表模板库再次更新!补充医院Dashboard及房地产销售行业报表
新增模板介绍 近日,葡萄城报表再次对报表模板库进行了更新,除了补充医院用于整体运营监控的5张 Dashboard 报表外,还增加了房地产销售场景中常见的12张报表. 5张 Dashboard 报表模板 ...
随机推荐
- 安装AutoCAD2006时,提示已终止安装
.NET Framework Runtime 1.1 版本比你机子里面的版本低,直接跳过这个安装就可以了.直接运行acad.msi,直接安装.
- 基于SQL Server 2008 Service Broker构建企业级消息系统
注:这篇文章是为InfoQ 中文站而写,文章的地址是:http://www.infoq.com/cn/articles/enterprisemessage-sqlserver-servicebroke ...
- bzoj 3196: Tyvj 1730 二逼平衡树
#include<cstdio> #include<ctime> #include<cstdlib> #include<iostream> #defin ...
- CSS大美集
细节1……………………………………………………………………………… 一.当文字与图片在一行,需要将文字与图片底对齐,可以这样写: <div>记住密码<img src="im ...
- 简易线程池Thread Pool
1. 基本思路 写了个简易的线程池,基本的思路是: 有1个调度线程,负责维护WorkItem队列.管理线程(是否要增加工作线程).调度(把工作项赋给工作线程)等 线程数量随WorkItem的量动态调整 ...
- tpch-kudu
1.在impala里建立好文本表: create external table customer (C_CUSTKEY INT, C_NAME STRING, C_ADDRESS STRING, C_ ...
- 在gridControl的单元格中的多行文本
我们知道,gridcontrol里面的单元格默认是不能换行的,但是有时候我们需要显示要换行的文本,应该怎么处理呢?这里提供一个方案: 假设我有一个列”合同文本“(colContractText),我要 ...
- 实用工具【SqlPrompt】 【Subline】 【XMind】 【PhotoShop】 【TakeColor】 【Q+】本次只讨论SqlPrompt
SqlPrompt[Sqlserver智能提示插件] 1.SqlPrompt可实现sql智能提示,并且会自动关键字大写,如select * from 表名[表名包含的字符],如果实在不知道表名可以按c ...
- spring注解说明之Spring2.5 注解介绍(3.0通用)
spring注解说明之Spring2.5 注解介绍(3.0通用) 注册注解处理器 方式一:bean <bean class="org.springframework.beans.fac ...
- IOS managerTime
1. NSString ->NSdate NSString *birthday = self.btnBirthday.titleLabel.text; NSDateFormatter *dat ...