热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

密码管理器进化史(4/4)

➊TL;DR(太长了,不想读)第四代密码管理器,安全技术基于安全芯片的数据保护技术,不再担心主密码泄露➋进化过去的十几年,各种密码管理器软件层出不穷,各类营销口号花样百出,而所使用











➊ TL;DR(太长了,不想读)

第四代密码管理器,


  • 安全技术 基于安全芯片的数据保护技术,不再担心主密码泄露

➋ 进化

过去的十几年,各种密码管理器软件层出不穷,各类营销口号花样百出,而所使用的数据保护技术在本质上却没有太大的改进。

很多对数据安全有更高要求的用户只能选择专用硬件密码管理器产品,默默忍受着诸多不便。

让人兴奋的是,智能手机的发展为我们带来了很多新的安全技术,沙盒隔离便是其中之一。

在iOS和Android系统上,所有App都可以选择使用沙盒隔离,每个App的私有数据都不能被其他App访问。即使用户不小心安装了恶意App,该恶意App也无法偷取其他App的私有数据(除非它能够突破沙盒保护或者获取到root权限)。


当然,也并不是所有App都会使用沙盒隔离,相反,有些App可能会选择使用外部存储,比如 Keepass2AndroidKeepass2Android数据库保存在外部存储中,所有能够访问外部存储的App都能够读取该数据库。


密码管理器进化史 (4/4)


使用Keepass2Android的朋友们要注意了,如果你手机上不小心安装了恶意App(例如恶意的输入法),该App就可以一边截获你输入的主密码,一边读取数据库文件,那你存储的所有密码都会泄露!


沙盒技术虽然对数据保护起到一定的作用,却也难以防止数据因系统备份、网络同步、应用克隆等操作而泄露。

真正激动人心的是,智能手机带来了安全芯片的普及,这也为第四代密码管理器的诞生奠定了坚实的技术基础。

现在大多数智能手机都集成了生物识别技术,而为了安全地处理用户的生物信息,也都引入了安全芯片。

密码管理器进化史 (4/4)

☝️ 安卓手机的指纹识别硬件架构图

图中的 TEE 是独立于CPU和操作系统的安全芯片系统(iOS 中叫 Secure Enclave)。指纹传感器硬件线路直连安全芯片,直接将扫描的生物数据发送到安全芯片内部验证,安全芯片只告诉操作系统验证结果,保证了生物数据的安全。

App使用指纹验证的过程大概如下:


  • 应用程序先调用操作系统API,请求系统验证指纹
  • 操作系统指纹管理和服务组件,请求TEE验证用户指纹
  • TEE读取并且验证指纹数据
  • TEE把验证结果告知操作系统,操作系统再告知应用程序

因此,担心App偷取指纹数据的用户大可放心,App根本就无法读取你的指纹数据!

不过,使用人脸识别的App倒是可以采集人脸数据,因为摄像头扫描的数据是App直接处理的(iPhone 面容ID验证除外)。



➌ 第四代密码管理器

第四代密码管理器使用手机安全芯片保护用户数据。

安全芯片中存储的数据都是加密的,运行时的内存也是加密的,加密密钥存储在芯片内部。即使是外部的操作系统,也无法访问安全芯片中的数据、无法获取加密数据的密钥。

密码管理器进化史 (4/4)

☝️ 安全芯片加密数据示意图

App可以请求安全芯片创建密钥,并且只有创建密钥的App才能请求安全芯片使用这个密钥执行加密算法。不论是加密还是解密,都由安全芯片处理,App只能够得到加密/解密的结果,而得不到密钥。

回顾第二代密码管理器,既不能写死密钥,也不能把密钥和数据库一起保存,所以只能通过主密码生成密钥来加密数据。

而现在,第四代密码管理器可以使用安全芯片来安全地存储密钥了。就算用户不设置主密码,数据也是非常安全的,因为尽管任何其他App偷取了数据库,也无法解密得到原文。

使用第四代密码管理器,只要手机解锁密码足够安全,又不担心女朋友查看你保存的密码,那就完全可以不设置主密码了。


安卓手机用户不要使用图案解锁,这篇论文 说只需要五次就能破解。


密码管理器进化史 (4/4)

如果担心在手机解锁状态下被他人偷窥密码,也可以使用主密码进一步保护数据的。


➍ 安全分析

第四代密码管理器的密钥存储在安全芯片内部,加密的数据只能够在本机解密,离开本机将无法解密。


  1. 不设置主密码仍然足够安全

    第二代和第三代密码管理器,必须依赖主密码生成密钥来保护数据,否则就和第一代密码管理器一样,可以被其他程序读取用户数据。

    第四代密码管理器,保护数据的密钥存储在安全芯片内部,即使是操作系统也不可提取,因此不设置主密码也能保护用户数据。


  2. 数据库被盗+泄露主密码,仍然安全

    第二代和第三代密码管理器,如果同时泄露了数据库文件和主密码(以及第三代的SecretKey),黑客就可以使用同样的算法解密出数据。

    第四代密码管理器,使用了存储在安全芯片内部的密钥来保护数据,黑客无法从安全芯片中提取出密钥,无法解密数据。


  3. 数据库被盗+暴力破解,仍然安全

    第二代和第三代密码管理器,如果数据库文件(以及第三代的SecretKey)泄露了,并且主密码不够强,黑客就可能通过租用大量云服务计算资源进行暴力破解。

    第四代密码管理器,使用了存储在安全芯片内部的密钥来保护数据,即使黑客暴力破解了主密码,也无法解密数据。


当然,有利就有弊,使用安全芯片大幅提升安全性的同时,第四代密码管理器也难以同步数据到其他设备。

由于密钥存储在安全芯片内部,无法从一个手机迁移到另一个手机,所以如果仅仅把加密后的数据同步到新手机,同样也是无法解密的。


黑客攻击

任何技术都是可以被攻击的,第四代密码管理器也不例外,毕竟App不可能100%弄清楚使用者是合法用户还是黑客。

回顾一下,黑客要偷取前几代密码管理器中保存的密码应具备的条件:


  • 第一代密码管理器,能够读取 数据库文件 即可;
  • 第二代密码管理器,需要读取 数据库文件 + 偷取/破解 主密码
  • 第三代密码管理器,需要读取 数据库文件 + 偷取/破解 主密码 + 读取 主密钥

第四代密码管理器,尽管读取 数据库文件 + 偷取/破解 主密码 也无法解密。黑客还需要:


  • 控制手机(因为数据离开手机就无法解密);
  • 突破安全芯片的防护;

➎ 总结


在各手机应用商店,搜“神锁离线版”,即可下载




密码
密码安全
密码管理
数据加密


推荐阅读
  • macOS Big Sur全新设计大版本更新,10+个值得关注的新功能
    本文介绍了Apple发布的新一代操作系统macOS Big Sur,该系统采用全新的界面设计,包括图标、应用界面、程序坞和菜单栏等方面的变化。新系统还增加了通知中心、桌面小组件、强化的Safari浏览器以及隐私保护等多项功能。文章指出,macOS Big Sur的设计与iPadOS越来越接近,结合了去年iPadOS对鼠标的完善等功能。 ... [详细]
  • 玩转直播系列之消息模块演进(3)
    一、背景即时消息(IM)系统是直播系统重要的组成部分,一个稳定的,有容错的,灵活的,支持高并发的消息模块是影响直播系统用户体验的重要因素。IM长连接服务在直播系统有发挥着举足轻重的 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 集成电路企业在进行跨隔离网数据交换时面临着安全性问题,传统的数据交换方式存在安全性堪忧、效率低下等问题。本文以《Ftrans跨网文件安全交换系统》为例,介绍了如何通过丰富的审批流程来满足企业的合规要求,保障数据交换的安全性。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • 如何提高PHP编程技能及推荐高级教程
    本文介绍了如何提高PHP编程技能的方法,推荐了一些高级教程。学习任何一种编程语言都需要长期的坚持和不懈的努力,本文提醒读者要有足够的耐心和时间投入。通过实践操作学习,可以更好地理解和掌握PHP语言的特异性,特别是单引号和双引号的用法。同时,本文也指出了只走马观花看整体而不深入学习的学习方式无法真正掌握这门语言,建议读者要从整体来考虑局部,培养大局观。最后,本文提醒读者完成一个像模像样的网站需要付出更多的努力和实践。 ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • 超级简单加解密工具的方案和功能
    本文介绍了一个超级简单的加解密工具的方案和功能。该工具可以读取文件头,并根据特定长度进行加密,加密后将加密部分写入源文件。同时,该工具也支持解密操作。加密和解密过程是可逆的。本文还提到了一些相关的功能和使用方法,并给出了Python代码示例。 ... [详细]
  • 本文介绍了互联网思维中的三个段子,涵盖了餐饮行业、淘品牌和创业企业的案例。通过这些案例,探讨了互联网思维的九大分类和十九条法则。其中包括雕爷牛腩餐厅的成功经验,三只松鼠淘品牌的包装策略以及一家创业企业的销售额增长情况。这些案例展示了互联网思维在不同领域的应用和成功之道。 ... [详细]
  • 本文分享了一位Android开发者多年来对于Android开发所需掌握的技能的笔记,包括架构师基础、高级UI开源框架、Android Framework开发、性能优化、音视频精编源码解析、Flutter学习进阶、微信小程序开发以及百大框架源码解读等方面的知识。文章强调了技术栈和布局的重要性,鼓励开发者做好学习规划和技术布局,以提升自己的竞争力和市场价值。 ... [详细]
  • Harmony 与 Game Space 达成合作,在 Shard1 上扩展 Web3 游戏
    旧金山20 ... [详细]
  • 1.webkit内核中的一些私有的meta标签,这些meta标签在开发webapp时起到非常重要的作用(1) ... [详细]
author-avatar
章胜一首简单的歌_192
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有