骑猪兜风

“1970事件”全集:它的所有剧集都在这儿了

骑猪兜风 2016-02-18 14:05:51    200930 次浏览

  过年回来上班,发现朋友圈、微博里频繁在刷两个事件,一个是鹅网红,另一个就是 1970 事件。以前我们总调侃别人说,别以为你能轻易让手机变砖,要让手机变砖也是需要实力和运气的。无论是 Android 还是 iPhone。

  然而,现在,让 iPhone 变砖似乎已经不再需要“你是怎么做到的”感叹,也不再需要你花费所有的运气,只要将手机时间设置为 1970 年 1 月 1 日,手机秒变砖头,妥妥的。

  “1970”——一个像病毒式蔓延的 Bug

“1970事件”全集:它的所有剧集都在这儿了

  最初是谁发现了这样一个深埋多年的 Bug?

  就是这个“无聊”的家伙——vista980622,人家无聊对对手指,数数头发,他另辟蹊径,设置手机时间。

“1970事件”全集:它的所有剧集都在这儿了

  这个家伙在国外一个名为 reddit 的论坛上发表了一个名为“把 iPhone 时间改成 1970 年 1 月 1 日,手机即可永远变砖”的帖子。

  经常逛科技论坛的同学应该都知道 Reddit 的影响力,在这样一个论坛上爆出这样一个帖子,仿佛在黑夜里投下了一颗炸弹啊!

  在帖子发布之后,很多人表示不相信,纷纷不作不死的将手机时间设置到 1970 年 1 月 1 日。都说实践才最有说服力,果不其然。现在这些人估计都还在苹果店排队吧。

  1970 年 1 月 1 日像病毒一样迅速在全世界蔓延,不止不少国外 iPhone 用户体验中招,国内也有不少网友手贱尝试。不说远的,就说 TFboys 组合里又帅又学霸还是人气王的王源,王源昨天发微博表示“不作死就不会死,我心里苦但我不说”,配图为已经成功变砖的 iPhone。

  我们论坛锋友也有不少忍不住尝试的,把子弹当彩蛋,也是醉了。比如:

“1970事件”全集:它的所有剧集都在这儿了

“1970事件”全集:它的所有剧集都在这儿了

“1970事件”全集:它的所有剧集都在这儿了

  苹果:这个锅,我背

  如果是意外,比如手机自己动手把自己的时间设置为 1970 年 1 月 1 日,那么我们无话可说。但是,要知道在“1970”像病毒一样传播开来之后,有多少人只是因为好奇和手贱而把自己的手机变成砖。但是,即使是后面这种情况,苹果依然愿意承担这个责任。不过,话说回来,苹果其实也不能完全脱离关系。

  首先,苹果官方已经承认了“1970”变砖 bug,并且称只要日期设置在了 1970 年 5 月之前就都会遇到相同的问题。

  其次,苹果表示将尽快对 iOS 系统进行更新,以防止该日期设置漏洞对 iOS 设备和用户体验的影响。而已经出现问题的用户可以向苹果官方售后求助。

  第三,有部分用户还成功因为“1970 事件”而能够在苹果店换了新机。

  1970 年 1 月 1 日究竟是什么妖怪?

“1970事件”全集:它的所有剧集都在这儿了

  也许有的人已经知道,计算机时间和众多的编程语言的时间都要从 1970 年 1 月 1 日开始算起呢,但是时间计时起点到底为什么是 1970 年 1 月 1 号呢?

  很多编程语言起源于 UNIX 系统,而 UNIX 系统认为 1970 年 1 月 1 日 0 点是时间纪元,所以我们常说的 UNIX 时间戳是以 1970 年 1 月 1 日 0 点为计时起点时间的。

  而 iOS 操作系统就是以 UNIX 为时间戳,Unix 时间戳规定,UTC 时区的 1970 年 1 月 1 日 0 点 0 时 0 秒的值为 0,以秒为单位,即每过一秒,二进制数字加 1。考虑到时区的影响,在北京时区,将 iPhone 时间设置到了 1970 年 1 月 1 日 0 点 0 时 0 秒,那么将这个时间转换为 UTC 时间(公式:北京时间 = GMT 8 = UTC 8),那么 UTC 时间则会变成 1969 年 12 月 31 日 16 时 0 分 0 秒。这样就会出现时间负值,即时间回归 bug 触发,系统启动卡在 Kernel 阶段,时间错误,无法继续进行启动,就砖了。

  哪些设备会中招?

“1970事件”全集:它的所有剧集都在这儿了

  iPhone 要中“1970”的毒,需要满足下面几个条件:

  系统版本:iOS 8.0 -iOS 9.3 beta 3,包括 9.2.1

  硬件设备:搭载 64 位处理器的设备(即处理器为 A7-A9X 的设备)

  我们统计了一下,涉及的设备包括以下设备:

  A7:iPhone 5s、iPad mini 2、iPad mini 3;
  A7 variant:iPad Air;
  A8:Apple TV 4G、iPad mini  4、iPhone 6、iPhone  6 Plus、iPod Touch 6G;
  A8X:iPad Air 2;
  A9(三星/台积电):iPhone 6s、iPhone 6s Plus;
  A9X:iPad Pro;

  1970 年 1 月 1 日被利用啦

“1970事件”全集:它的所有剧集都在这儿了

  第一种,上周四有人在 4Chan 上贴一张图称,如果把 iPhone 时间设置为 1970 年 1 月 1 日,重启之后就能够看到旧版的苹果 Logo。很多人大呼上当。

  第二种,这种还没有人尝试,还只是一个设想。做个开放 Wi-Fi,把苹果的 ntp 解析到自己,日期改 1970.1.1,再用 DNS 劫持的方式触发安全重启警告。手机连接 Wi-Fi 之后,就去厕所哭一会吧。 

  和前面的两种恶搞不同,第三种则有点贪小便宜的感觉。我们上面已经说过,部分因 1970 bug 变砖的手机可以在苹果店换得新机。有些人则利用这一点,故意把旧手机时间设置成 1970 年 1 月 1 日,企图让苹果为其更换新机。这种做法让人鄙视。不过,有这种想法的朋友还是省省吧,因为苹果店并非每一台机型都允许更换,更多时候会叫你耐心等更新。

  最后一种,你真的太机智了!有一种人,自己十分好奇,想要体验设置 1970 让 iPhone 变砖是一种怎样的体验。他不用自己的手机测试,而是跑去苹果店,用店内的设备测试,修改人家店内设备的时间!你这么聪明,你妈妈知道吗?哈哈哈哈哈

  不过,万幸的是,展示用的 iPhone、iPad 等设备有“特殊技能”,这种操作对于体验机是无效,因为苹果店里的展示机均带自动恢复功能,不管做了什么操作都可以自动恢复,修改时间对这些手机也不会有影响。

  ——拆开手机拿掉电池,放置 10 分钟后重新安装。

  ——电量充足的情况下,等待数小时,当 Unix 时间戳的数值大于等于 0(等到时间戳慢慢走过负数的区域),系统时间生效,可正常开机。

  不过,这样一来,你就会因为私自拆机而失去苹果的官方保修。

内容加载中