写点什么

又被大量收集数据,Kindle“监控”你读书

  • 2020-09-08
  • 本文字数:1725 字

    阅读完需:约 6 分钟

又被大量收集数据,Kindle“监控”你读书

作为书迷,我购买过很多版本的 Kindle 设备,从最初版本到 Paperwhite 都有,并对每一版都很喜欢。但我对这个全新文本格式的潜在滥用情况心怀警惕。


从技术上来讲,亚马逊持有读者们阅读内容的所有权,他们随时可以删除这些内容。之前就曾经出现过亚马逊从客户账户及他们的Kindle删除特定书目的情况。这还不是最糟的,亚马逊甚至可以删除用户账户并撤销用户对已购买书籍的访问权限


Kindle 利用用户阅读数据来提供一些传统书籍无法提供的功能:管理设备间书签和笔记,同步所有设备中最后阅读位置等等,Kindle 同样可以显示广告或相关阅读推荐。


我想知道 Kindle 是否只会上传这些服务需要的数据,还是会将用户相关数据一同上传给亚马逊。

事实证明,Kindle 收集了海量的数据

Kindle 不仅会发送设备信息,使用大量元数据,甚至是用户在使用设备或 app 进行的所有操作都会被发送,这些数据都与用户账户直接连接。


打开 app、读书、翻页、关闭书籍,这些简单的操作会向亚马逊服务器上传上百条请求数据。



Kindle 数据请求

侵犯隐私的行为信息

总的来说,用户在读书时手指的每一次点击或互动都会被 Kindle 追踪。


读者阅读的每一页书籍都会发送下列信息:


  • 每页打开时间:每当读者翻页,都会生成一个时间戳

  • 每页的首个单词/文字:会以诸如“书中第 7705 个字”的形式记录其具体位置

  • 每页最后一个单词/文字

  • 该页是文字还是图片


以下是读者在阅读每页时会被发送的简单记录:


{    "created_timestamp": 1597743233808,    "payload": {        "context": "Reading",        "continuous_scroll_state": "disabled",        "end_position": 4708,        "is_scrolled_over_span": false,        "span_type": "Text",        "start_position": 4193    },    "schema_name": "kindle_positions_consumed_v2",    "schema_version": 0,    "sent_timestamp": 1597743233855,    "sequence_number": 26}
复制代码


每个阅读区间都会生成一个阅读页数与浏览模式的总结。


{    "created_timestamp": 1597743255324,    "payload": {        "action_type": "PageTurn",        "book_length": 2003478,        "context": "Reading",        "count": 10,        "navigation_end_location": 7884,        "navigation_mode": "Horizontal",        "navigation_start_location": 3599    },    "schema_name": "reader_in_book_navigation_v2",    "schema_version": 0,    "sent_timestamp": 1597743265854,    "sequence_number": 36}
复制代码


打开 app 时同样会上传类似数据,包括应用是否在后台开启、书籍是打开或关闭、诸如字号等设置是否有变动等。高亮或双击单词/词语,会在将其发送到 bing 翻译或维基百科的同时发送回亚马逊。


这些请求都不是像上次阅读位置这类的数据一样用于客户功能的。高亮、上次阅读位置,以及其他一些信息都会在一定周期内被再次发送向不同目的地,区别在于第二次发送所包含的信息量会大幅减少。


每条请求都不会在生成的同时上传。很多记录生成后会先保存在本地,然后才会被上传(注意前面的 sequence_number 字段)。即使用户在离线情况下阅读,一旦联网,这些存储在本地的数据都会被上传。

设备信息

Kindle 同样会上传一些私人信息,诸如:


  • 用户所在国家

  • 试图获取本地网络 IP 地址(Kindle 获取到作者的地址为 10.,并不准确)

  • 设备和版本信息(屏幕大小、品牌、设备型号),iPhone/安卓/Kindle 软件版本

  • Good Reads 账户信息

  • 设备方向(横屏/竖屏)


部分数据可能会帮助亚马逊了解用户对 app 的使用情况,方便他们后续调整。但本地 IP 是唯一一个困扰作者的数据,虽然除了 IP 作者并没有发现什么其他被上传的本地网络信息有问题。

结论

Kindle 可以说是我见过对用户隐私最不手下留情的 app 了,它记录了很多令我感到不适的阅读行为数据。在过去的几年中,我一直在尝试避免使用 Kindle 生态系统,目前在用Marvin在 iPhone 上阅读。虽然已经不再用 Kindle 设备了,但还是难免会怀念 e-Ink。


不幸的是,如果使用非 Kindle 应用,就需要买 DRM-Free 的书。这类书并不是很好找,但 Kobo 书店以及一小部分利基供应商经常会提供这类书,有些甚至还能在亚马逊上找到。


相关阅读:


Kindle Collects a Surprisingly Large Amount of Data


2020-09-08 07:002212

评论 3 条评论

发布
用户头像
图里的数据用的是什么抓包工具?
2020-09-08 10:21
回复
应该是 mitmproxy
2020-09-08 10:48
回复
多谢, 确实是这个工具
2020-09-15 10:29
回复
没有更多了
发现更多内容

Springboot 整合Shiro 轻量级权限框架,从数据库设计开始带你快速上手shiro

Java 程序员 后端

Spring Boot 谷粒学院、谷粒商城项目问题汇总,tomcat面试题

Java 程序员 后端

Spring Boot核心技术之Rest映射以及源码的分析,java从入门到放弃

Java 程序员 后端

Spring Cloud入门-Consul服务注册发现与配置中心(Hoxton版本)

Java 程序员 后端

Spring-boot使用logback实现日志配置,java自学视频网站

Java 程序员 后端

【Flutter 专题】13 图解最基础的 http 请求方式

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 11月日更

Spring cloud stream【入门介绍】,java开发实例大全云盘

Java 程序员 后端

Spring 全家桶,永远滴神,spring框架教程

Java 程序员 后端

springboot+Redis+Shiro,java编程技术高级八大类

Java 程序员 后端

spring boot增删改查,javassm框架面试重点

Java 程序员 后端

Spring 使用Validation 验证框架的问题详解,springboot原理

Java 程序员 后端

SpringBoot+Redis基本操作,实现排行榜功能(1),springmvc教程下载

Java 程序员 后端

002|CocoaPods 优化知多少?

棒棒彬👻

CocoaPods 认知偏差 工程能力 开源软件

Spring Cloud Stream 编程模型的基础知识,很多老司机都不知道

Java 程序员 后端

Spring--JdbcTemplate基本使用,三年老Java经验面经

Java 程序员 后端

spring-cloud-kubernetes的服务发现和轮询实战(含熔断)

Java 程序员 后端

Spring Cloud 分布式事务详解及LCN解决方案,mybatis底层原理

Java 程序员 后端

Spring Cloud入门-Admin服务监控中心(Hoxton版本),java开发面试视频

Java 程序员 后端

【LeetCode】提莫攻击Java题解

Albert

算法 LeetCode 11月日更

Spring Cloud:第四章:Hystrix断路器,mybatis面试常问问题

Java 程序员 后端

Springboot 使用Quartz定时器执行多个定时任务 配置篇

Java 程序员 后端

SpringBoot 实战:优雅的使用枚举参数(原理篇,这一次带你搞懂Spring代理创建过程

Java 程序员 后端

Spring MVC框架:第十二章:运行原理,腾讯Java面试题

Java 程序员 后端

Spring Retry不为人知的技巧,你知道几个?,java程序设计精编教程第三版答案耿祥义

Java 程序员 后端

Spring02:基本配置与依赖注入,贼好用的Java学习路线集合

Java 程序员 后端

SpringBoot + Vue 开发前后端分离的旅游管理系统,unixlinux编程实践教程

Java 程序员 后端

Spring Boot 实战(11)整合MyBatis-Plus,mysql原理相关文章

Java 程序员 后端

Spring Boot 实战(9) springboot 整合 JPA,2021必看

Java 程序员 后端

spring boot 整合Swagger2 构建API文档,linux学习路线图

Java 程序员 后端

Spring Cloud Gateway限流实战,万字详解微服务的哨兵机制

Java 程序员 后端

springboot+mybatis+druid整合笔记,java程序设计案例教程课后答案

Java 程序员 后端

又被大量收集数据,Kindle“监控”你读书_安全_Charlie Belmer_InfoQ精选文章