惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

F
Fortinet All Blogs
aimingoo的专栏
aimingoo的专栏
人人都是产品经理
人人都是产品经理
G
GRAHAM CLULEY
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
L
LangChain Blog
AWS News Blog
AWS News Blog
V
Vulnerabilities – Threatpost
博客园 - 司徒正美
Last Week in AI
Last Week in AI
P
Privacy International News Feed
C
CERT Recently Published Vulnerability Notes
Simon Willison's Weblog
Simon Willison's Weblog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
S
Schneier on Security
Y
Y Combinator Blog
月光博客
月光博客
博客园 - Franky
T
Threatpost
Security Latest
Security Latest
C
Cybersecurity and Infrastructure Security Agency CISA
博客园 - 【当耐特】
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
大猫的无限游戏
大猫的无限游戏
A
Arctic Wolf
T
The Exploit Database - CXSecurity.com
A
About on SuperTechFans
I
Intezer
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
Cisco Blogs
S
Securelist
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Microsoft Security Blog
Microsoft Security Blog
Know Your Adversary
Know Your Adversary
IT之家
IT之家
D
Docker
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
NISL@THU
NISL@THU
博客园 - 三生石上(FineUI控件)
L
Lohrmann on Cybersecurity
小众软件
小众软件
PCI Perspectives
PCI Perspectives
N
News and Events Feed by Topic
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Google DeepMind News
Google DeepMind News
爱范儿
爱范儿
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Engineering at Meta
Engineering at Meta

GoodBoyboy 's Blog|惬意小屋-点滴记忆

回家吵的第一场架 新设计了一个Astro主题 Cap,一个基于PoW的自托管验证码系统 公益服务迁移通知 一种基于argon2id算法与shamir算法的内存PoW(工作量证明)解密游戏 记忆里的屋子(一) Ubuntu 26.04 Btrfs+LUKS2安装 主域名服务不稳定通知 腾讯元宝客户端实习二面凉经 腾讯元宝客户端实习一面面经 对越来越多AI博文的看法 GoodBoyboy Blog、Talk联动成功 只有失去了才会懂得珍惜,但幸好我还没有失去 滴滴Android客户端一面凉经 GoodBoyboy 's Talk上线! Easy Drop——一个基于Gin开发的高性能、轻量级说说平台 Perfect Pic —— 一个基于 Gin 开发的高性能、轻量级图床 尘封了八年的祝福 欢迎OPPO Pad 4 Pro加入设备大家庭 官方Android11 Box系统的OrangePi 3B新增红外模块教程 家里也换成光纤了qwq 姜还是老的辣 布洛芬效果真不错 再见2025,你好2026 Canokey导入S/MIME邮箱证书并使用Thunderbird发送邮件 1.90$申请 WISeID S/MIME 邮箱证书 新购Intel AX210网卡 OpenPGP邮件加密——关于测试邮件握手的思考 疯狂动物城2太好看了(无具体剧透) 进程调度——时间片轮转 效果是真的好,劲也是真的大 不买立省100% 十月小记 新增外设漫步者G1500bar 欢迎招行万事达加入卡包大家庭 博客十周年啦🎉 ESP32 S3开发小结 ESP32 S3外设小记 Arduino+VSCode开发ESP32-S3 EPS32-S3刷入MicroPython EPS32 S3刷入Picokeys Debian13安装Nvidia驱动 现在小孩都这么早熟么。。。 《动物迷城》二周目通关! Bing索引终于恢复了 家里蹲大学开始招生! 家里蹲大学即将建校,欢迎各位莘莘学子来本校深造(doge 骑车去兜风~ OAuth2授权码、客户端凭证、PKCE、设备码授权流程详解 基于OIDC实现Authentik与阿里云RAM角色的联合身份认证 GitHub release以及Git Commit常用模板 实验室生活 阿里云角色SSO对接authentik进行单点登录 白嫖一年Gemini Pro 突然发现自己可能乳糖不耐受? 多线程我太爱你了,你个“大可爱” [公告]现评论区已支持使用emoji表情符号😊 Debian GRUB踩坑记——out of memory 为Debian KDE更换显示字体为思源黑体 Debian补全办公常用字体 Debian12 KDE Edge输入法问题 Debian KDE Plasma 5调整外接显示器亮度 Debian开玩Minecraft Debian KDE使用指纹传感器验证身份
Android第三方Passkey管理器探索
GoodBoyboy · 2025-06-28 · via GoodBoyboy 's Blog|惬意小屋-点滴记忆

前言

相信经常在国际互联网冲浪的友友对Passkey一定不陌生,Google,GitHub等网站均支持Passkey一键登录,国内手机厂商也有推行Passkey的趋势(?)

众所周知,国内很多手机厂商在以前都是管生不管养。基本上手机发售一年以后就别想着升级了,现在各大手机厂商稍微好一些。

然而,虽然系统是更新了,但是部分功能只有在新机型上才做适配,而本文的主角Passkey就是其中之一。

博主手中的OPPO Find X5虽然已经更新到ColorOS 15,但是Passkey功能仍然无法使用,仅在OPPO Find X6及其以上的机型才支持。

虽然可以通过插入Canokey等物理安全硬件来实现Passkey登录,但是我日常外出一般是不带这些安全硬件的(怕丢)。

并且我之前也吐槽过,既然通过Google的GMS都可以让我手机使用Passkey,为啥OPPO不支持。。。

探索过程

偶然间,看到一篇文章,说在Android 14中引入了Credential Manager API,该API可以用于集成密码管理工具,让密码管理工具来管理凭据,其中就提到了Passkey

https://developer.android.com/identity/sign-in/credential-provider?hl=zh-cn

在此之前Android的默认Passkey实现是在Google的GMS中,并且也是对接的Google的凭据管理器

当时看到这篇文章时博主手机系统还是ColorOS 14,系统为Android 14,但是在网上下载了一个测试Demo软件,发现并不支持Credential Manager API,应该是厂商还没适配好

毕竟当时我也吐槽过,OPPO自家的Passkey实现与凭据管理器只在系统自带的浏览器上能调用,在Edge和Chrome中均调用的Google的Passkey实现与凭据管理器。

但是Google的Passkey实现会将Passkey上传到云端,并不是保存在手机本地,因此对其安全性表示怀疑(虽然声称是使用屏锁进行端到端加密)

没办法,可以说手机的Passkey功能基本用不了(包括一些Fido的2FA),如果实在要用Passkey,只能临时拿Canokey捅手机“屁股”或者用NFC(Canokey Canary已解决NFC感应问题),调用Google的Passkey实现来通过认证。

Tips:这个实现可以调用不同的凭据来源(保存密码的实现),Google的Passkey实现可以通过USB和NFC读取我手中的Canokey硬件,而OPPO的Passkey实现NFC读不了,USB处于半残状态(现在已经是完全残废的情况了)

这个方案一直在用,直到ColorOS 15最近的一次更新,我发现现在无论是OPPO自家的浏览器,还是Edge,Chrome甚至是Firefox,都会调用OPPO自家的Passkey实现

这就严重影响我的使用体验,因为OPPO自家的Passkey实现只会调用自家的凭据管理器(密码本),而且对于外置硬件也是半残状态(Google的至少我还能用Canokey硬件)

但令我没想到的是,我在手机设置里找到了一个新页面“登录信息自动填充服务”,这个页面有个“密码管理服务”,包含“密码本”(OPPO 用于保存密码的软件,包含存储Passkey),“Authenticator”(微软的),“Google”

然后默认是打开了密码本的,Google的没有打开。

我想,这会不会就是问题所在,于是我把密码本的关了,把Google的打开,发现Edge可以用Google的Passkey实现了

看到剩下微软的那个authenticator,突然想到会不会更新后现在已经支持使用第三方凭据管理器了?

Tips:微软的authenticator已经宣布即将停止对密码管理功能的支持

于是下了个Bitwarden,发现确实新增了该选项

众所又周知,Bitwarden是可以自托管的,而且还有vaultwarden这种第三方项目来降低托管压力,所以临时先在本地服务器上建了个,尝试了一下,发现可以完美使用Passkey的

现状

原先情况:

Edge,Chrome->Android Passkey接口-> Google Passkey实现(默认)->Google密码管理器/外置硬件

OPPO浏览器->OPPO Passkey实现(第三方)->密码本(不支持)/外置硬件(残废)

现在:

Edge,Chrome-> Android Passkey接口->OPPO Passkey实现(默认)->Credential Manager API(在设置中选择)->密码本/Google/Bitwarden/外置硬件(残废)

Tips:OPPO浏览器仍然不支持Credential Manager。另外如果仅开启Google,则会调用到Google Passkey的实现

并且由于调用的是OPPO的Passkey接口,现在还支持跨设备使用(手机扫描电脑上的Fido二维码在电脑上进行登录或注册)

因为该功能需要使用服务器,所以原先Google的Passkey就用不了(可能因为安全设计原因,挂了代理也会在最后一步失败)

后记

主要是Bitwarden在断网情况下无法新增,读取Passkey好像也有点问题?感觉这点比keepass就差点

不过这也主要看客户端实现咯,像PC上的KeepassXC就不支持在无网情况下使用已连接过的远程的密码库,而在Android上的客户端Keepass2Android就支持无网使用已连接过的远程密码库

虽然现在Keepass本身已经支持保存Passkey,但是Keepass2Android目前还不支持使用Credential Manager API来保存(悲)

目前打算先用着Bitwarden,希望Keepass2Android作者能尽快更新这个功能吧

另外由于选择Bitwarden则会调用OPPO Passkey的实现,所以我的Canokey完全用不了,只能在要使用的时候再切换成Google的了(悲)