Search 浏览器如何安全存储密码macOS 钥匙串与 Passkeys 机制完整解析【免费下载链接】SearchA small, fast WebKit browser for macOS, by Office Commun.项目地址: https://gitcode.com/gh_mirrors/search59/SearchSearch是一款由 Office Commun 打造的 macOS 轻量 WebKit 浏览器约 3 MB、免费、需 macOS 14它的核心卖点之一就是把密码存储交给系统所有账号密码写入 macOS 登录钥匙串支持 Passkeys 无密码登录并可从 Chrome 等浏览器一键导入。这篇文章带你完整看懂它的钥匙串与 Passkeys 安全机制。密码存在哪里macOS 登录钥匙串很多浏览器把密码存在自己的数据库文件里而 Search 选择了与 Safari 同一套保险柜——macOS 钥匙串Keychain。具体规则写在 Vault.swift 的注释里每条密码是一条互联网密码项kSecClassInternetPassword按网站 账号索引所有条目打上Search标签只属于 Search 自己不会与 git 令牌等其他应用的同名条目互相覆盖见 Vault.swift 的写入逻辑加密由系统完成任何形式都不会落盘到别处也从不写日志条目权限设为解锁时可访问kSecAttrAccessibleWhenUnlocked读取方只能是签名自 Office Commun 的 Search其他应用碰一下就会触发系统的授权弹窗。简单说密码的保管人是你的 Mac不是浏览器厂商。Search 没有服务器、没有云同步README.md 的隐私表 写得明明白白历史记录等也只是本地 JSON 小文件。保存与自动填充克制的密码流程Search 对密码的态度可以概括为只在你确认的情况下动手先成功、再询问。只有当一次登录真正生效后Search 才会弹窗询问是否保存见 README.md 中 Passwords, in your keychain 一节。按站点而非主机匹配。你在example.com保存的密码在accounts.example.com也能被找到——它用可注册域名做匹配Vault.swift 的跨子域查找并记录最近使用时间常用账号排在最前。明文 HTTP 页面不喂密码。从普通 http 页面保存的密码会被单独标记clear字段Search 绝不会把它交给任何可能被中间人篡改的页面Login 结构定义。查看必须过生物识别。在密码面板⌥⌘L里点显示会先调用 Touch ID / Apple Watch / 系统密码验证Vault.prove 实现密码明文只显示15 秒后自动打码Passwords.swift 的揭示逻辑。Passkeys 机制为什么 Search 要亲自接管Passkeys无密码密钥是 WebAuthn 标准用 Touch ID、iCloud 钥匙串或安全密钥登录密码本身不存在浏览器里。这里有个技术细节值得新手了解Apple 把 Passkeys 的浏览器权限作为受限 entitlement发放需要专用签名才能启用。Search 的发布构建携带了对应的 Search.passkeys.entitlements其中com.apple.developer.web-browser.public-key-credential一项就是关键。由于 WebKit 对条件中介在用户名输入框下自动推荐 Passkey存在一个已知的卡死缺陷Passkeys.swift 开头的注释 记录了排查过程Search 像 Mac 上的 Chrome 和 Firefox 一样自己接管了整个 Passkeys 流程从页面接收请求 → 校验 → 交给系统 AuthenticationServices → 把结果回传给页面。发起 Passkeys 请求前的五道安全校验在 Passkeys.perform 方法 中任何请求都要先过这五关校验拦截的风险必须是 https 页面localhost 除外中间人监听窗口必须处于前台聚焦后台标签页偷偷弹系统验证面板只允许主框架或同站 iframe第三方嵌入内容冒充站点发起请求Relying Party 域名必须是页面的可注册域名或其上级用com、github.io这类任何人都能注册的公共后缀套取密钥必须携带非空 challenge伪造/重放请求其中公共后缀判断直接复用了 macOS 系统自带的域名列表Passkeys.fits 实现确保bbc.co.uk这类复杂域名也能正确处理。用户侧体验一切校验通过后弹出的是macOS 自己的 Passkeys 面板Touch ID 验证、iCloud 钥匙串里的 Passkey、附近 iPhone 扫码或插入 USB/NFC 安全密钥任选其一。设置中可随时关闭 Passkeys 推荐Prefs.swift如果装了 1Password、Bitwarden 等密码管理扩展它们优先应答 Passkeys 请求Search 会把浏览器侧的通道让给扩展Forms.swift 的说明。从其他浏览器一键导入迁移不需要导出 CSV 再手动粘贴。在密码面板底部PasswordsPanel 的导入区直接点 Chrome、Arc、Dia、Brave 或 Edge 的按钮读取源浏览器本地存储的密码系统会请求一次源浏览器的钥匙串密钥不改动原数据所有条目直接进入你自己的钥匙串、归在 Search 名下也可以选择 CSV 文件导入文件读完即止Search 不保留副本Vault.take 实现。整个过程不出本机——这也是 Search 的隐私底线没有账号、没有云、没有遥测README.md。快速上手清单 操作方法打开密码管理面板⌥⌘L显示某个密码先过 Touch ID15 秒后自动隐藏关闭 Passkeys 推荐设置 › Passwords检查 Passkeys 系统授权系统设置 › 隐私与安全性发现安全漏洞按 SECURITY.md 私有渠道上报小结Search 的密码安全设计可以总结为三句话存储上交给系统钥匙串加密、权限隔离、生物识别验证流程上保持克制登录成功才询问、http 页面不喂密码、明文限时展示Passkeys 上主动加固五重校验 系统原生面板。代码只有约一万两千行且单文件单职责想核对任何一个结论直接读 Sources/Search/ 里的 Vault.swift 和 Passkeys.swift 即可。【免费下载链接】SearchA small, fast WebKit browser for macOS, by Office Commun.项目地址: https://gitcode.com/gh_mirrors/search59/Search创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
Apereo CAS OAuth2 接入 JWT Access Token:按服务配置、签名加密密钥与实现原理 后端认证鉴权单点登录 【免费下载链接】cas Apereo CAS - Identity & Single Sign On for all earthlings and beyond. 项目地址: https://gitcode.com/gh_mirrors/ca/cas 点击查看 免费下载 导读
本文基于 OAuth-Authentication-JWT-AccessTokens.md 展开&am… · 2026/9/26 18:02:31
SimpleEnglish 改写前后对比:8类技术文档改写实测(违规率下降74.6%) SimpleEnglish 改写前后对比:8类技术文档改写实测(违规率下降74.6%) 【免费下载链接】SimpleEnglish Agent skill: make LLMs write docs in ASD-STE100 Simplified Technical 项目地址: https://gitcode.com/gh_mirrors/si/SimpleEnglish … · 2026/9/26 18:02:25
当AI开始处理退款,企业该把权限交到哪一步? 当AI开始处理退款,企业该把权限交到哪一步?
退款是客服自动化最容易“看起来能做、实际上不敢全交”的场景。金额、订单状态、物流节点和用户历史行为,任何一个条件异常,都可能把一次普通退款变成损失或投诉。真正稳妥的做法不是简… · 2026/9/26 18:02:25
Python直链解析实战:突破网盘限速的下载方案 1. 直链解析到底在解决什么问题很多人第一次接触"直链解析"这个词,是因为被网盘的下载速度折磨得没脾气。明明家里是千兆宽带,下载一个几百兆的文件,进度条却像蜗牛爬树,几十KB每秒的速度能磨掉一整个下午。这时候就会有… · 2026/9/26 19:39:01
从MyBatis缓存到Redis二级缓存:数据库性能优化实践 1. 从一次线上故障说起:缓存优化到底解的是什么问题半年前我们团队接手了一个订单查询系统的性能治理,现象很典型:数据库CPU持续高位,高峰期查询接口的平均响应时间在800ms以上,部分复杂报表查询直接能把连接池打满。当… · 2026/9/26 19:38:55
蒙特卡洛积分:光线追踪降噪与采样策略的核心数学 1. 从一个全是噪点的渲染图说起我最早接触光线追踪时,第一反应是:这东西怎么这么慢?关掉一个看似平平无奇的场景,在1080p分辨率下跑一帧,动辄就是几分钟甚至几十分钟。更让人抓狂的是,好不容易算完… · 2026/9/26 19:38:55
生产LLM全链路管控:TaoToken统一Key下Token、成本、延迟三位一体优化落地 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 19:38:48
pnpm 忽略构建脚本报错解析与解决方案 1. 这个报错到底在说什么第一次看到[ERR_PNPM_IGNORED_BUILDS] Ignored build scripts: parcel/watcher2.5.6, canvas2.11.2这行红字,很多人第一反应是“我是不是装崩了”,然后开始疯狂重装、删node_modules、删 lock 文件,折腾半天发现报错还… · 2026/9/26 19:38:35
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46