云端的钥匙串

keychain

上一篇写了「互联网安全,普通网民无可奈何之痛」之后,很多朋友问如何管理自己的密码。现代世界,互联网服务几乎渗透了人类生活的方方面面,无论你向左走还是向右行,密码管理都成为躲不开的问题。想当年「左青龙,右白虎,一串钥匙挂腰间」的日子一去不复返了,现在你得依赖云端的「钥匙串」。

关于密码使用的一些基本原则,我在上一篇文章中介绍过,摘录如下:

1、密码不要过于简单,比如123456或你的生日等,大小写字符+数字,算是合格的密码。 2、不要一个密码走遍天下,你应该为不同类型的网站准备多套密码方案,分级使用。 3、首次使用某些软件系统(比如路由器),一定记着改掉初始密码。 4、如果可能,采用密码管理工具,比如1Password,Keychain 等。

既然密码是刚需,那么一定会有聪明人通过软件来满足这个需求,所以我们今天主要聊聊最后一点:密码管理工具。

上文中提到的1Password是一款跨平台的收费密码管理软件(OS X、iOS和 Windows),很好用,但我今天并不准备介绍它,因为这家公司并没有给我推介费。有人说了,库房管理员库克同志同样没给过你一个子,你还不是巴巴的讲那么多 Mac 的事儿?

这……Mac 君思来想去,只能在未来的某一天和他算这笔总帐了。

今天我准备给大家介绍一下云端的钥匙串:iCloud上 的 Keychain,是 Mac 上的原生应用。

OS X 在升级到10.9(Mavericks)的时候增加了一个 Keychain(钥匙串)的功能,可惜很多 Mac 用户升级时可能没有注意到这一点。

写到这我忍不住要插播一句,很多人的处事原则是,给不了解的东西固执的打上否定的烙印,而不是去试着了解。这种态度会让你错过很多风景。比如我一直以为《MacTalk·人生元编程》是给老爷们看的,没想到很多如花似玉的女读者一样捧在手中细细阅读,于是错过了很多人面桃花和MacTalk 交相辉映的美景。这个教训告诉我,永远不要低估女同胞的理解能力和分享能力,如果你还有这样的风景,请尽快发给我,不要犹豫,世界就在前面等你。

插播完毕!

那么什么是 iCloud Keychain 呢?这是一个云端的密码管理软件。既然记密码是一件让人头疼的事情,那么就让软件去记好了。iCloud Keychain 会为你记住用 Safari 访问过的网站的用户名和密码、你的信用卡信息和 Wi-Fi 网络信息。它将你的网站用户名和密码储存在经过你许可的 Mac 和 iOS 设备上,并使用可靠的 256-bit AES 技术进行加密保护,Apple 也无法读取,还能让它们在每部设备上保持最新状态和实时更新。它还会在你需要的时候自动生成密码,或自动填写密码相关的信息。

总之,有了 iCloud Keychain,你就不用再去记那些该死的密码了。那么,怎么去使用这个钥匙串呢?

1、在 Mac 上打开系统偏好设置-iCloud,让右侧的钥匙串选项处于选中状态。在其他 iOS 设备上同样操作。
2、没有第二了,正常的去登录你的网站和设置 Wi-Fi 密码就好了,系统会接管一切。

当你第一次注册某个网站并输入密码时,Keychain 会为你自动生成不同安全等级的密码,等你下次登录时系统根据账户名自动填充。

你可以采用 Keychain 自动生成的密码,因为这些密码你自己都记不住,更不用说透露给你的敌人了。

当你想知道这些密码的时候,也很容易,打开 Safari – 偏好设置 – 密码,输入你想知道的网站密码,比如 apple.com,系统就会检索到你在这个网站的所有账户和密码,密码以······的方式展现,点击左下角的「显示所选网站的密码」,系统会提示你输入 Mac 用户的密码,之后就可以看到该网站的密码了。

当然,如果你自己的密码已经是分级并成体系的,不用 Keychain 自动生成密码也没问题,反正系统会为你记住它的。

一次使用之后,无论是网站密码,Wi-Fi 密码,还是信用卡信息,系统都会记在心里,并贴心的在你的各个终端设备上同步。你不会找到这么好的密码管家了。再也不会因为忘记密码被妈妈打!

有关钥匙串的详细信息,大家可以参考以下网址:

http://support.apple.com/kb/HT5813?viewlocale=zh_CN

互联网安全,普通网民无可奈何之痛

security

自从有了互联网之后,互联网的安全问题就相伴而生。只要有程序员,就会有代码,只要有代码,就会有漏洞,然后就会有各种白帽子和黑客不断爆出各种漏洞,然后就是扫描、刷库、脱库、升级、修复,一系列组合拳打完收工,接下来等待的是下一次漏洞的降临。

细心的朋友可能已经发现了,那套组合拳是有讲究的,前三招永远在后两招之前,所以大家就不用担心自己的资料被泄露了,因为很可能已经泄露过多次了……一切都是最好的安排。

我个人虽然在软件行业很多年,但毕竟不是安全领域的,对这部分的技术可谓一知半解,或者四分之一解。比如我们为自己的软件产品加了功能权限、数据权限、代理权限、历史权限、密码策略、防 SQL 注入、防跨域攻击、SSL 数据加密等等,但这些措施在专业的黑客或白帽子眼中,基本上是形同虚设的。因为攻击往往来自应用系统的下层,比如操作系统漏洞,中间件漏洞、技术框架漏洞或协议漏洞等等。

所以,为了在江湖上立足,我特意结识了一些少年黑客(或白帽子),比如安全宝的道哥,知道创宇的余弦,还有不远万里没事就跑到中国进行义务教育的加拿大黑客厉哥等。当然,少年是和我相比,他们都是安全领域的行家里手,或老手,各个身怀绝技。并且,这些人估计昨晚都没睡觉,因为昨天互联网爆出了一个高危漏洞:OpenSSL Heartbleed 内存泄漏漏洞。他们几个估计都在挖的挖,堵的堵,补的补,忙的不亦乐乎,至于普通网民,咱们还是踏实睡觉,反正数据就在那里,不多不少。

我在文章开始提到过 SSL,这是互联网最常用的安全协议,作为互联网的用户,如果你访问的网址中有 https 的字样,那么说明这个网站采用了 SSL 协议,你和网站之间传输的数据都是加密的,即使其他人通过技术手段拦截了这些请求和响应,看到的也是密文。SSL 是互联网安全的基石之一,各大网银、支付、交易类网站大都采用了 SSL 协议。

OpenSSL 是一个开放源代码的、实现了 SSL 协议及相关加密技术的软件包,很多厂商都采用了这一技术实现安全数据传输。可以说,基于 OpenSSL 的 SSL 协议是互联网上安全通讯的工业标准,现在 OpenSSL 这个安全软件包本身爆出了内存漏洞,所以导致整个互联网的安全出现了问题。

安全靠锁,现在锁出事了,不是钥匙丢了,而是几乎所有人都可以打开这把锁(理论上)。

这个漏洞名为Heartbleed,译为心在滴血。想来也是,安全套件本身出了问题,无疑等于往心脏上插刀,不滴血才怪。该漏洞会随机泄漏采用了 OpenSSL 服务器的 64K 内存,内存中可能会含有程序代码、安全证书、HTTP原始请求、用户Cookie、邮件等隐私信息,黑客可以反复扫描获取数据进行比对,如果你有的是耐心和细心,那么扫描了足够多的数据之后,就有可能分析出某些倒霉用户的用户名和密码等安全信息。

关于这个漏洞的技术分析,请参考:http://drops.wooyun.org/papers/1381

更为麻烦的是,根据 OpenSSL 的版本记录,这个漏洞在2012年已经存在了,天知道那些黑客已经非法获取了多少用户信息。所以,很多搞安全的朋友告诉我,安全,有时候就是个笑话。

面对如此欣欣向荣的安全产业,做为一个普通网民,除了无可奈何之外,我们还能做些什么呢?其实我们还是可以做一些事情的,针对这个刚刚爆出来的漏洞,我们可以做的是:

1、在这两天不要登录信息敏感的网站,比如网银、支付宝、电商等网站。已经访问了的,如果你足够小心,那么就修改密码吧。虽然通过扫描随机获取到你的账户信息的可能性非常小,一旦命中你,对你来说就是100%。
2、等待各大厂商升级软件版本,修补漏洞。因为本身漏洞出在服务器端,我们帮不上什么忙。
3、如果软件厂商提醒你升级证书,修改密码,照做即可,注意不要被钓鱼,趁火打劫也是国人特色。

长远来看,我们还可以做的一些事情是:

1、不要使用来历不明的软件,尽可能不使用盗版软件。
2、浏览器不要安装乱七八糟的插件,如果安装了,你最好知道它是干嘛的。
3、密码不要过于简单,比如123456或你的生日等,大小写字符+数字,算是合格的密码。
4、不要一个密码走遍天下,你应该为不同类型的网站准备多套密码方案,分级使用。
5、如果可能,采用密码管理工具,比如1Password,Keychain 等。
6、首次使用路由器改掉初始的管理密码。
7、增强交易类网站的账户保护,比如绑定手机、网银证书、两步验证等。即使别人拿到了你的用户名和密码,也没法造成进一步的伤害。
……

最后一条,使用 Mac,会减少你很多不必要的麻烦。

江山如此多娇,令无数黑客竞折腰。到了互联网无处不在的今天,如果你对互联网安全领域的知识还处于一知半解的状态,那么最好赶紧去学习一下,无论是普通的安全常识还是专业技能,能多懂一点是一点,目前互联网安全领域的书籍和资料已经很多了。

另外,可能的话去认识一些安全圈里的朋友,像我一样,虽然同样是羊入虎口,但是由于你认识这只虎,那么效果可能会好一些……

积木盒子招聘信息

招聘公司:北京乐融多源信息技术有限公司 | 积木盒子 | 成长型(A轮)
公司地址:大望路金地中心A2501

积木盒子是一家总部位于北京的高科技网络金融服务公司,上线半年就已完成A轮千万美金融资。创始团队是来自于金融和互联网行业的资深人士,我们希望通过跨界的合作与知识的共享,通过互联网技术改变一些金融行业的固有形态。

积木盒子致力于为中国广大的个人和中小企业服务,解决他们最急迫的融资需求,同时通过互联网技术让更广大的投资者安全、高效、轻松地理财。积木盒子充分了解金融行业的本质,我们从第一天开始就构建了顶级的风控体系和团队,同时慎重选择了资质优良的第三方担保机构为100%的融资需求提供担保,保证投资者的利益得到充分保证。

招聘职位:

高级JAVA工程师

岗位职责

  1. 拥有5年以上的Java开发经验,熟悉常见Java开源框架,如Spring、Spring MVC、MyBatis、Hibernate、Spring Security、Spring Social、Apache Shiro等。
  2. 熟悉常见关系型数据库,如MySQL、PostgreSQL、Oracle等,能对复杂SQL进行性能优化。
  3. 非常熟悉Maven的使用,理解Maven的原理与使用技巧。熟悉常见Web服务器,如Tomcat、Jetty、Apache等。
  4. 熟练掌握Git,有在项目中使用Git的经历。
  5. 了解JVM性能调优、了解常见JVM垃圾收集算法、了解Java 7新特性、Java并发框架与库、了解Java内存模型。
  6. 熟悉HTTP协议,熟悉Restful Web Services原理。
  7. 熟悉Intellij IDEA等常见Java IDE。
  8. 熟悉常见NoSQL数据库,如Redis、MongoDB、CouchDB、Neo4j等。
  9. 熟悉常见设计模式。
  10. 熟悉规则引擎,如JBoss Drools等,有在项目中使用过规则引擎的经历。
  11. 拥有良好的表达能力与沟通能力。

加分项

  1. 熟悉Python、Ruby等语言
  2. 熟练掌握常见Linux shell命令。
  3. 喜欢在Mac/Linux下进行开发。
  4. 了解Apache Mina及Netty等常见网络应用框架。
  5. 有代码洁癖,看到代码中的坏味道有浑身不自在的感觉。
  6. 工作效率高,能够自我驱动。
  7. 极度厌恶各种繁琐的“流程”,不想被每天各种大大小小的“会议”折磨。
  8. 有金融行业IT背景。
  9. 喜欢Coding。

MySQL DBA

岗位描述

  1. 向开发人员提供技术支持,查询数据,协助优化SQL语句,部署测试环境;
  2. 负责系统数据库(MySQL)的运行维护及管理等工作;
  3. 负责数据库的日常管理:包括数据库的备份恢复、性能优化、日志分析、数据迁移、解决突发和疑难问题;
  4. 依据业务需求优化数据存储结构,负责系统数据库定期检查以及性能分析与调优;
  5. 制定和改进应急预案、策略和相关规范,提高服务运维质量;
  6. 与开发团队紧密配合,参与研发部门的数据库规划、设计、评审和优化数据库技术方案;
  7. 提供内部员工的数据库培训。

职位要求:

  1. 精通MySQL数据库的运行机制和体系架构;
  2. 精通MySQL数据库的管理,经验丰富;
  3. 同时熟悉MongoDB者优先;
  4. 熟练编写存储过程等各种脚本文件及编写E-R图;
  5. 熟悉Linux操作系统的原理,对Linux层面的数据库优化有较深的实践,能运用一门语言编写各种监控和运维脚本;
  6. 具有高度的责任心和敬业精神,注意力集中,学习和解决实际问题能力强;
  7. 具有良好的团队合作精神,能与团队成员协同工作;
  8. 具有良好的英文读写能力。

BI工程师

  1. 三年以上商业智能项目开发经验,五年以上,电商、互联网或金融从业经验,完成过数据仓库建设项目。
  2. 精通Pentaho套件。
  3. 熟悉数据库,能够编写和优化复杂SQL语句,能在大规模数据条件下,掌 控数据库性能。熟悉MySQL和MongoDB的优先。
  4. 熟悉Linux,能够完成工具软件的安装配置, 能够编写shell脚本。熟悉Ubuntu的优先。
  5. 掌握至少一种脚本语言,JS、Python、Perl、R优先。有Java、C++、C#等高级语言应用经验。
  6. 计算机基础知识扎实,对BI理论涉猎广泛。理解能力强,善于 学习,表达清晰。

测试开发工程师

  1. 熟悉面向对象设计方法,及其在Java的工程实践
  2. 熟悉关系型数据库,熟悉常见SQL优化、存储过程
  3. 熟悉客户端技术,最好对相关规范有深入了解,如HTML,JavaScript,Web Service,XML, CSS
  4. 熟悉开源测试工具和框架,比如JUnit,TestNG, Selenium
  5. 最好有持续集成的相关经验,如Jenkins
  6. 能在工作熟练使用至少一门脚本语言,如Python,Shell等
  7. 必须是Git使用者

福利:六险一金,带薪病假,带薪年假。
薪资:面谈,据说你多牛薪资就有多牛!

投递邮箱:career@jimubox.com