6
本文作者: 謝幺 | 2016-12-22 14:32 |
“蘋果爸爸一張嘴,程序員們跑斷腿”,看來此話挺有道理。
電梯里,宅客頻道編輯聽到兩位程序員在聊天:
甲:“ 新聞?wù)f元旦之后,沒上 HTTPS 的應(yīng)用就不能提交AppStore了,元旦前得趕緊了!”
乙:“ 你早說啊,年底事這么多,離元旦就剩幾天了?!?/p>
甲:“ Deadline是第一生產(chǎn)力,我這是給你增加工作動(dòng)力?!?/p>
乙:“ 嗯,似乎很有道理的樣子……謝謝哥?!?/p>
宅客頻道編輯回去一搜索,發(fā)現(xiàn)確實(shí)有許多相關(guān)新聞。
正當(dāng)雷鋒網(wǎng)宅客頻道打算寫一篇有關(guān)蘋果ATS安全功能的科普文時(shí),卻發(fā)現(xiàn)一個(gè)奇怪之處:
外面“傳聞遍地”,但蘋果商店官方并沒有給開發(fā)者下發(fā)郵件通知,全面禁用HTTP這可是件大事,按照蘋果的行事風(fēng)格,不可能到現(xiàn)在還下發(fā)公告。
宅客頻道預(yù)感:此事必有蹊蹺!
根據(jù)雷鋒網(wǎng)宅客頻道的調(diào)查,事情還得從幾個(gè)月前說起……
這一消息的最初來源于今天6月份,蘋果開發(fā)者大會(huì)WWDC 2016 上,蘋果首席安全架構(gòu)師 Ivan 在會(huì)上演講中提到(只是提到):
今天,我可以自豪的說,至2016年末ATS將成為所有應(yīng)用程序上傳到AppStore 的要求,這可以為用戶和應(yīng)用程序的網(wǎng)絡(luò)通訊大大提升安全性。
然后外媒就將其解讀為:蘋果將對(duì)所有 AppStore上的 iOS 應(yīng)用強(qiáng)制開啟HTTP時(shí)代,最終期限就是2017年1月1日。(詳見當(dāng)時(shí)雷鋒網(wǎng)翻譯的外媒報(bào)道:《蘋果要求所有 iOS 應(yīng)用在年底前默認(rèn)使用 HTTPS 連接》)
先來簡單科普一下蘋果ATS安全功能和HTTPS的關(guān)系,懂技術(shù)的童鞋可以跳過這一段。
HTTPS 就是 HTTP + SSL ,也就是在原本無加密的 HTTP 連接上開啟了一層SSL加密,讓原本近乎“裸奔”的數(shù)據(jù)能夠以密文傳輸,從而提升數(shù)據(jù)在傳輸過程中的安全性。
ATS 則是蘋果在 iOS 9 當(dāng)中首次推出的一項(xiàng)安全功能,全稱為App Transport Security 。在啟用 ATS 之后,它會(huì)強(qiáng)制應(yīng)用通過 HTTPS 連接網(wǎng)絡(luò)服務(wù), HTTP 連接會(huì)被過濾掉。
ATS功能是默認(rèn)開啟的,在實(shí)際情況當(dāng)中,開發(fā)者們通常會(huì)圖方便而將其關(guān)閉,然后繼續(xù)使用不太安全的 HTTP 鏈接。
這大概和宅男們?yōu)g覽大人網(wǎng)站時(shí),殺毒軟件跳出來說該網(wǎng)站不安全,90%的人都會(huì)毅然決然關(guān)掉殺毒軟件繼續(xù)欣賞的道理一樣。
不過不可否認(rèn),HTTPS對(duì)于移動(dòng)應(yīng)用是很重要的安全措施,2015年就有相關(guān)報(bào)道稱,高達(dá)九成的移動(dòng)應(yīng)用未使用HTTPS加密鏈接,存在巨大的安全隱患,關(guān)于ATS和HTTPS對(duì)于移動(dòng)應(yīng)用的作用,可參閱雷鋒網(wǎng)此前報(bào)道:《 iOS 提高安全“門檻”:HTTPS,該升了嗎?》
借機(jī)營銷讓消息迅速傳播
由于使用HTTPS加密鏈接本身可以為用戶的安全帶來提升,因此當(dāng)該消息被解讀為“元旦節(jié)是最后期限”后,大多數(shù)聲音都是為蘋果這一措施點(diǎn)贊的,并沒有太多人質(zhì)疑消息本身的真實(shí)性。
隨后,網(wǎng)上便開始出現(xiàn)大量的借機(jī)營銷的軟文,文章不但未考究消息真實(shí)性,甚至在其之上自我發(fā)揮,于是乎出現(xiàn)了“元旦過后沒上HTTPS的應(yīng)用無法使用”、“新應(yīng)用無法提交”等字眼,文章套路大抵如下:
蘋果要強(qiáng)制用HTTPS了,我家證書符合審核標(biāo)準(zhǔn)!
蘋果要強(qiáng)制用HTTPS了,我家的證書便宜又好用!
蘋果強(qiáng)制HTTPS倒計(jì)時(shí)!走過路過,千萬別錯(cuò)過!
即使文章充滿了營銷氣息,但依然有大量的網(wǎng)友信以為真,雷鋒網(wǎng)宅客頻道詢問了幾位開發(fā)者朋友,對(duì)方均對(duì)元旦之后全面強(qiáng)制HTTPS的消息深信不疑:
【來自微信聊天截圖】
雖然這位 iOS 工程師也在納悶,為何蘋果這次沒有公告和通知,但出于“寧可信其有,不可信其無”的考慮,他還是計(jì)劃在元旦之前將 HTTP 連接全部改成 HTTPS。
按照常理,如果蘋果真的在元旦之后全面強(qiáng)制使用HTTPS,那么好歹也應(yīng)該告訴開發(fā)者,如果沒用HTTPS會(huì)產(chǎn)生怎樣的后果,然而事實(shí)并沒有。
為了探尋事實(shí)的真相宅客頻道來到了開發(fā)者論壇,發(fā)現(xiàn)已經(jīng)有不少人開始討論這個(gè)問題,而蘋果官方人員給出的解釋則是:
那么到底是什么變化:我們會(huì)收緊審核政策,即對(duì)于開發(fā)者添加的ATS例外(即http接口),要求提供一個(gè)“合理的解釋”。之所以要增加這么一個(gè)“麻煩”,是為了避免開發(fā)者們都無腦地全局關(guān)閉ATS,使得ATS偏離其初衷,形同虛設(shè)。開發(fā)者將無法再無腦地全局關(guān)閉ATS,并且添加例外時(shí)需要提供合理的解釋。
英文原文:What has changed is that App Review will require “reasonable justification” for most ATS exceptions. The goal here is to flush out those folks who, when ATS was first released, simply turned it off globally and moved on. That will no longer be allowed.
簡單來說就是:開發(fā)者們將不能再無腦地關(guān)掉ATS功能,好歹你也要說兩句理由。
然而當(dāng)被問及什么才算是一個(gè)“合理的解釋”時(shí),對(duì)方卻強(qiáng)調(diào)自己并不負(fù)責(zé) App 審核,但是據(jù)他所知,目前蘋果并沒有就該問題發(fā)表過任何指導(dǎo)。
【截取自蘋果開發(fā)者官方論壇】
于是,雷鋒網(wǎng)宅客頻道聯(lián)系蘋果開發(fā)者官方進(jìn)行了電話咨詢:
問:我在網(wǎng)上看到說2017年開始蘋果會(huì)強(qiáng)制應(yīng)用開啟ATS,使用HTTPS鏈接,請(qǐng)問是真的碼?
答:我們?cè)赪WDC蘋果開發(fā)者大會(huì)上確實(shí)有提到該項(xiàng)安全措施,但是目前開發(fā)者中心并沒有下發(fā)任何相關(guān)的具體規(guī)定。
問:意思就是說,如果我公司的APP沒來得及在元旦上HTTPS,暫時(shí)也不會(huì)有任何影響?
答:是的,相關(guān)的標(biāo)準(zhǔn)建議您以蘋果官方發(fā)布的公告或指導(dǎo)為準(zhǔn),如果有政策調(diào)整,我們會(huì)第一時(shí)間告知所有開發(fā)者……
掛斷電話后,宅客頻道收到了來自蘋果官方的郵件,被告知蘋果今天就此問題發(fā)布了最新公告:
iOS 9和 OS X v10.11的ATS功能要求應(yīng)用程序在使用安全的HTTPS連接,提高網(wǎng)絡(luò)用戶的安全和隱私。在WWDC 2016我們宣布應(yīng)用提交到App Store將需要支持ATS在今年年底。為了給你們更多的時(shí)間來準(zhǔn)備,這個(gè)最終期限已經(jīng)延長,當(dāng)最新的截止日期確認(rèn)后,我們會(huì)發(fā)布更新。
【截取自蘋果開發(fā)者官網(wǎng)】
至此,真相大白,
元旦之后還沒上HTTPS會(huì)發(fā)生什么? 答:什么也不會(huì)發(fā)生。
媒體有沒有過度解讀?答:也不算是,因?yàn)樘O果他們自己承認(rèn)說過這件事。
不過作者個(gè)人大膽猜測(cè),當(dāng)初 WWDC會(huì)上那個(gè)“最后期限”也許只是隨口一說,不料遭遇媒體過度解讀后才不得不承認(rèn),不然也不至于此前一直沒有相關(guān)官方公告,直到今天(蘋果全體員工23日就開始放圣誕長假了)才臨時(shí)發(fā)出一個(gè)延期通知。
也不知道正火急火燎趕著在元旦之前上HTTPS的程序員們,看到這條消息后作何感想。
聊天記錄再貼一遍:
文/謝幺(微信ID:Dexter0,一個(gè)好奇者)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。