tech-sjh

2013年3月23日 星期六

Apple iOS UDID 替代方案

摘譯:

UDID 是一組辨識裝置(比如 iphone, ipad devices)的字母與數字組合
字串,原本 iOS 的 UDID 優點是可以跨 服務供應商,分析廠商 辨識
單一裝置。

可能的替代方案:
1. Wifi module 的 MAC address,但這做法一直有泄漏隱私的疑慮
實作方式可以參考 UIdevice_with_UniqueIdnetifier-for-iOS5

2. Apple 官方建議改用 CFUUID (Core Foundation University
Unique Identifier),由 iOS 的應用程式取得,但跟 Apple UDID 差異
是可能會被刪除,非永久有效。使用者清除裝置(wipe/restore)資料時
也會消失。另一個可能可以用的 id 是 advertisement identifier

3. OpenUDID 由 AppsFire 在 2011 年八月開發,但跟 Apple UDID 有
同樣的隱私疑慮,可能要考慮被停用的風險。

4. 較新的是 SecureUDID 跟 OpenUDID 一樣是開源做法,但是多提供
防止多個應用程式開發者共同存取同一個 SecureUDID 的功能,也讓使用
者有機會取消 SecureUDID

5. mobile Cookies,已經有許多 Gmail, eBay, Facebook 之類的應用程
式可以在 Android/iPhone/Blackberry 等手機平台上辨識你的登入資訊,
當然也同樣可以儲存類似 UDID 等資訊。StrikeAd 已經採用並可以彙整
資訊到 Google Analytics 或 Omniture(?) 等資訊中。


參考:

The End of UDIDs - what it means for mobile advertising


2013年3月15日 星期五

https 加密 http uri 與 response data

常有人好奇我們的瀏覽器 https 究竟保護了哪些資料呢?

而 http 的 GET/POST/DELETE 等 method 在 header 有沒有加密?


從 OSI model 來想,tls(ssl) 在 session layer, http 在之上的
application layer,因此知道 tls(ssl) 完整保護了 header 跟 response
body data

從 python socket programming 來看,會是先建 socket 到 server
host/ip 以及 port 443,再加上 ssl wrapper 後,才對 server
送出 GET /PATH/TO/URI 然後收到 response 資料,因此也可以
理解 https 連線保護了 http uri 跟傳輸的網頁內容,竊聽者除了知道
我們跟哪一台主機、跟 port 連線外(tcp/ip header),除非真正解密,
或找到其他安全漏洞,否則無法知道連線內容。

參考:
https://github.com/sjh/python/blob/master/demo_https_ssl_encryption_parts.py






版權宣告、免責聲明


創用 CC 授權條款
本著作係採用創用 CC 姓名標示-非商業性-相同方式分享 4.0 國際 授權條款授權.
免責聲明: 本文所載資料僅供參考,並不構成投資建議,
讀者閱讀或使用該資料所導致結果需要自擔風險與責任,
作者概不承擔閱讀人行為之任何風險與責任。
除非有特別宣稱,作者言論並不代表所屬任何團體、公司、或其他人意見。