恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

删掉 App 也删不掉的痕迹:Loupe 演示 Keychain 如何跨重装记住你的安装次数

  • 首页
  • 资讯中心
  • /
  • 删掉 App 也删不掉的痕迹:Loupe 演示 Keychain 如何跨重装记住你的安装次数

相关资讯

日榜速报才过两天,中文教程就来了:vibe-wise 正在被中文圈盯上 2026/10/12 5:59:05
争议风暴眼:启动快 12 倍、运行慢 7.5 倍,scriptc 究竟是神器还是实验室玩具? 2026/10/12 5:59:05
openJiuwen agent-core 的 DashscopeEmbedding:基于阿里云 DashScope 的多模态嵌入实践指南 2026/10/12 5:59:05

最新资讯

在 Halcon 中,**形态学处理是 Blob 分析的“前置净化”步骤**,而 Blob 分析本身则是在净化后的区域上做“连通域分解与特征筛选”
C++代码实现MATLAB中的fitcsvm函数功能
8GB显存跑通125B MoE大模型:Qwen3.8-Flash-next轻量化部署实战
基尼系数能跨国比较,却不能无条件拿来做城市或高频研究
【AI大模型接入SDK】ChatServer 整体初始化概述
SenseNova sn-infographic 提示词质量评估标准详解:R01–R08 必答项与 O01–O12 选答项实战指南

今日推荐

Debian新手入门:从部署到日常操作的完整指南
MongoDB复制集扩缩容实战:从rs.add到选主事故复盘
条形码目标检测数据集实战:从YOLOv8训练到部署

本周热门

UE动画修改实战:从资产编辑到重定向与蒙太奇驱动
统计随机数生成器攻击下的KLJN安全密钥交换协议Matlab仿真
政务API安全治理:资产测绘、低代码编排与行标对标实践

本月精选

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

删掉 App 也删不掉的痕迹:Loupe 演示 Keychain 如何跨重装记住你的安装次数

发布时间:2026/10/12 5:59:05
删掉 App 也删不掉的痕迹:Loupe 演示 Keychain 如何跨重装记住你的安装次数 【免费下载链接】loupeA privacy-focused iOS app that raises awareness about what native apps can see项目地址https://gitcode.com/gh_mirrors/loupe12/loupe点击查看免费下载Loupe是一款面向 iPhone 与 iPad 的隐私科普 App,它会从公开 iOS API 读取真实数据,直接展示任何第三方 App 都能在你的手机上悄悄读到什么。其中最反直觉的一项演示是:即使你彻底卸载再重装一个 App,只要它把时间戳写进了Keychain,它就能跨重装记住自己在你设备上装过几次。本文将带你弄懂这套机制的原理,并手把手在 Loupe 里亲手验证。什么是 Keychain:为什么卸载 App 后数据还会留下先说结论:App 的沙盒文件、UserDefaults 里的设置:卸载 App 时会被 iOS 一并清除,这是大多数人的默认认知。Keychain(钥匙串)里的条目:由系统安全层统一保管,卸载 App 并不会自动删除它写入的 Keychain 记录。Keychain 原本是 iOS 保管密码、证书、令牌的安全保险库,App 通过通用密码(generic password)条目往里读写数据完全合规。KeychainInstallLog.swift 文件开头的注释把这层对比写得非常直白:UserDefaults are wiped on uninstall; Keychain entries survive. By comparing the two we detect fresh installs. (卸载会清空 UserDefaults,但 Keychain 条目会存活;对比两者即可识别全新安装。)换句话说,Keychain 是 App 为数不多可以跨越重装的本地存储,这也正是删 App 删不掉的痕迹的技术根源。Loupe 的演示原理:用两个记事本对账Loupe 把这个机制做成了一个可感知的实验,核心逻辑只有三步:长期记忆在 Keychain。App 把历次安装的时间戳以 JSON 数组形式存进一条 Keychain 记录,写入时使用的可访问级别是kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly(本机设备、首次解锁后可读),见 KeychainInstallLog.swift 的writeDates。短期记忆在 UserDefaults。每次启动时,App 会先看 UserDefaults 里的hasRecorded标记:这个标记一旦卸载就消失,所以重装后第一次启动必然能被识别出来。识别到重装,就往长期记忆里追加一条时间戳,再打上标记,见 KeychainInstallLog.swift 的recordInstallIfNeeded。这样,两个记事本一短一长:短的每次重装都会重置,长的却一路累积。App 不需要联网、不需要任何权限,就能精确数出自己的安装次数。打开 Loupe 你会看到什么:4 张安装记录卡片在 Loupe 首页列表里,这个演示对应Previous Installs Log分类,副标题就是Reinstall history kept in Keychain(保存在 Keychain 中的重装历史),分类定义在 SignalCategory.swift。它被归在Advanced(进阶)层级,因为 Keychain 跨重装持久化属于对公开 API 的巧妙用法之一。进入该分类后,PreviousInstallsProvider.swift 会采集并展示 4 张信号卡片:卡片含义Install count(安装次数)这个 App 在这台设备上累计安装过的次数First install date(首次安装日期)Keychain 里记录的最早一次安装Current install date(当前安装日期)本次安装的启动时间Install history(安装历史)历次安装时间戳的完整列表每张卡片下方都有一句解释,比如安装次数卡片写的是:Number of times this app has been installed. Keychain entries persist across uninstalls.(这个 App 被安装过的次数。Keychain 条目在卸载之间持续保留。)为什么被记住装过几次值得警惕单独看,装过 3 次似乎无关紧要。但它揭示的是一种普遍模式:你以为的重新开始,App 记得清清楚楚。卸载重装常被用户当作清除 App 本地状态的手段,而 Keychain 让 App 能够识破这一点。为定向行为提供信号。这是老用户重装和这是首次安装可以驱动完全不同的引导流程、推送策略或广告定价。与其他指纹叠加。安装次数本身不唯一,但和 Loupe 展示的设备型号、系统版本、字体、时区等信号组合后,就成为跟随你跨 App 的设备指纹的一块拼图。更关键的是:这一切发生在完全离线、零权限的状态下,不触发任何系统弹窗,用户无从感知。如何亲手验证:重装一次,数字就 1想亲眼看到这条痕迹,步骤非常简单:在 App Store 安装Loupe,打开首页,点击Previous Installs Log分类,记下当前的 Install count(首次安装通常为 1)。长按桌面图标卸载 Loupe,确认删除。重新下载安装 Loupe 并打开,再次进入该分类——你会看到 Install count 变成 2,同时 Install history 多出一条新的时间戳。重复几次,历史列表会逐条增长,而它们全都只存在你手机的 Keychain 里。和 Loupe 的整体设计一致:所有读数都保留在本地、原样展示,除非你主动导出,否则不会上传、同步或分享给任何人。想深入源码?关键文件都在这里code/Loupe/Support/KeychainInstallLog.swift:Keychain 读写实现,readDates/writeDates展示了如何用SecItemCopyMatching查询、SecItemAdd/SecItemUpdate写入。code/Loupe/Providers/PreviousInstallsProvider.swift:把安装日志转换成 4 张用户可见的信号卡片。code/Loupe/Models/SignalCategory.swift:previousInstalls被标记为 Advanced 敏感级别。code/Loupe/Support/Sensitivity.swift:三个敏感层级(Passive / Needs Permission / Advanced)的完整定义。小结Keychain 是 iOS 上少数卸载 App 后依然存活的本地存储,这是删掉 App 也删不掉痕迹的根源。Loupe 用 UserDefaults(会消失) Keychain(会存活)的对账技巧,把不可见的重装历史变成看得见的数字。这个演示零权限、离线完成,提醒我们:设备指纹里最容易被忽视的,往往是那些系统默许、无需授权的读取。赞分享【免费下载链接】loupeA privacy-focused iOS app that raises awareness about what native apps can see项目地址https://gitcode.com/gh_mirrors/loupe12/loupe点击查看免费下载相关推荐Readest 同步引擎的 deleted_at 游标不变量何时能删掉 OR deleted_at since何时删了会让已删除的高亮“复活”Readest 同步引擎的 deleted_at 游标不变量何时能删掉 OR deleted_at since 何时删了会让已删除的高亮“复活” 导读 Re桌面应用跨平台前端:all: 的危险面tmux-resurrect 为什么可能在你重启后删掉硬盘如何自我保护:all: 的危险面tmux resurrect 为什么可能在你重启后删掉硬盘如何自我保护 tmux resurrect 是一款开源 tmux 插件核开发工具awesome-agentic-ai-zh 之 Agent Memory 实战只记值得记、允许记、能删掉的事awesome agentic ai zh 之 Agent Memory 实战只记值得记、允许记、能删掉的事 本指南对应 awesome agentic ai教程文档AI Agent人工智能大模型创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号