目前 stable 版是 54.0，所以再兩個 release cycle 就會看到了... 這樣就有兩個有支援 headless 模式的瀏覽器 (而且底層 engine 不一樣) 可以測試了。現在要測的人可以在 nightly 裡看到了。
把 side-channel information 配合上統計方法就可以達到 74% 的正確率：「Phone Hack Uses Sensors To Steal PINs」。
而且當可以多抓到更多資訊時 (像是第二次輸入) 準確度就更高了：
Using a sample set of 50 PINs, researchers found that their script was able to correctly guess a user’s PIN 74 percent of the time on the first try, which increases to 86 and 94 percent success rates on the second and third attempts.
有些瀏覽器有做一些修正，讓 side-channel information 變少，於是難度變高：
As for Google, it’s unclear what measures have been taken. “Our concern is confirmed by members in the Google Chromium team, who also believe that the issue remains unresolved,” the report stated. Google did not reply to a request to comment for this report.
新版的 Firefox 已經支援 Multi-processes 架構 (Electrolysis)，但 Ubuntu 上會因為預設值的關係而被關閉，這篇文章就是講原因以及怎麼打開：「Enabling This Makes Firefox More Responsive On Ubuntu」。
由於大家都會裝一堆套件，看起來得用 Force Enable 這邊提到的方法打開，也就是手動在
一個多禮拜前引起蠻多討論的一篇文章，利用 Unicode Domain 釣魚的方法：「Phishing with Unicode Domains」。
由於這是幾乎完美的攻擊，所以被提出來後 (Security: Whole-script confusable domain label spoofing) 有不少討論：
This bug was reported to Chrome and Firefox on January 20, 2017 and was fixed in the Chrome trunk on March 24. The fix is included in Chrome 58 which is currently rolling out to users.
在 comment 8 提到：
We do have a whitelist. Essentially you're suggesting that we remove Cyrillic and Greek characters from the list. I'm not sure we want to go down that path.
在新版的 Chrome 58 已經「修正」了這個問題：
而 Firefox 的討論在「IDN Phishing using whole-script confusables on Windows and Linux」這邊，一開始就直接把票給關了 XDDD：
Indeed. Our IDN threat model specifically excludes whole-script homographs, because they can't be detected programmatically and our "TLD whitelist" approach didn't scale in the face of a large number of new TLDs. If you are buying a domain in a registry which does not have proper anti-spoofing protections (like .com), it is sadly the responsibility of domain owners to check for whole-script homographs and register them.
We can't go blacklisting standard Cyrillic letters.
If you think there is a problem here, complain to the .com registry who let you register https://www.xn--80ak6aa92e.com/ .
Status: NEW → RESOLVED
Last Resolved: 3 months ago
Resolution: --- → WONTFIX
然後一個月前被提出來看看 Chrome 怎麼做：
Gerv/Valentin, is this something we can/should align with Chromium on?
目前唯一的解法是改 flag，把所有的 Unicode Domain 直接當作一般的 domain 來處理，列出像是
在 Facebook 上看到剛剛在 Hacker News 上熱起來的「Onedrive is slow on Linux but fast with a “Windows” user-agent (2016)」這篇，引用了 2016 年在 Microsoft Community 上的討論：「Onedrive for Business open is very slow on Linux (Chrome/Firefox) but with very fast with a "Windows" user-agent」。
I just tried this same thing--changing the OS in the user agent--on Chome on Linux. The difference really is incredible. Normally I find 365 to be so slow as to be borderline unusable, now it's almost as quick as Google docs. Even the institutional log-ins for my university are faster.
EDIT: Just to clarify, I was testing specifically the web apps for Word and OneNote hosted by my uni. I tried loading them both in normal tabs and ones where I had changed the OS useragent in Chrome's developer panel. The normal tabs hung badly as usual (30+ seconds to load the UI), while the modified tabs loaded very quickly. I tried this several times, but I suppose YMMV.
所以我也拿「User-Agent Switcher for Chrome」加上 IE11 的 user-agent 後測試：
最明顯的差異就是 redirect 變少了，然後開 Word 與 Excel 的速度變快好多 @_@
As Office 365 for Business services(e.g. SharePoint Online, including OneDrive for Business, Exchange Online) are not supported on Linux as shown below, for the best experience, we recommend the operating system listed in the article.
所以只能拿老招出來，把 User-Agent 改成 IE 後就變得超～級～快～
然後最 helpful 的回答是：
I go back to Google Apps suite.
在這邊看到可以測試瀏覽器的 SSL 連線，網站在 https://badssl.com/dashboard/ 這邊：
— Eric Mill (@konklone) March 17, 2017
基本上是按照「Installing Selenium and ChromeDriver on Ubuntu」這篇文章的方法安裝，有幾點可以注意一下：
- ChromeDriver 可以翻一下最新版，文件上寫的是 2.26，但現在最新的是 2.27 (寫這篇時)。
- 雖然寫「(Optional) Create and enter a virtual environment」表示可以不做，但不做其實不會動 (看錯誤訊息像是要建立目錄時權限不夠)，所以乖乖的用 virtual environment 裝在自己目錄下吧 XDDD
原文 Python 程式裡本來的
driver = webdriver.Chrome() 改成
driver = webdriver.Firefox() 就 ok 了。
As announced last fall, we’ve been disabling SHA-1 for increasing numbers of Firefox users since the release of Firefox 51 using a gradual phase-in technique. Tomorrow, this deprecation policy will reach all Firefox users. It is enabled by default in Firefox 52.
Facebook 花了不少時間對付 reload 這件事情：「This browser tweak saved 60% of requests to Facebook」。
Facebook 的人發現有大量對靜態資源的 request 都是 304 (not modified) 回應：
In 2014 we found that 60% of requests for static resources resulted in a 304. Since content addressed URLs never change, this means there was an opportunity to optimize away 60% of static resource requests.
而 Google Chrome 很明顯偏高：
於是他們找出原因後，發現 Google Chrome 只要 POST 後的頁面都會 revalidate：
A piece of code in Chrome hinted at the answer to our question. This line of code listed a few reasons, including reload, for why Chrome might ask to revalidate resources on a page. For example, we found that Chrome would revalidate all resources on pages that were loaded from making a POST request.
We worked with Chrome product managers and engineers and determined that this behavior was unique to Chrome and unnecessary. After fixing this, Chrome went from having 63% of its requests being conditional to 24% of them being conditional.
但還是很明顯比起其他瀏覽器偏高不少，在追問題後發現當輸入同樣的 url 時 (像是 Ctrl-L 或是 Cmd-L 然後直接按 enter)，Google Chrome 會當作 reload：
The fact that the percentage of conditional requests from Chrome was still higher than other browsers seemed to indicate that we still had some opportunity here. We started looking into reloads and discovered that Chrome was treating same URL navigations as reloads while other browsers weren't.
不過這次推出修正後發現沒有大改變：(拿 production 測試 XDDD)
Chrome fixed the same URL behavior, but we didn't see a huge metric change. We began to discuss changing the behavior of the reload button with the Chrome team.
後來是針對 reload button 的行為修改，
max-age 很長的就不 reload，比較短的就 reload。算是一種 workaround：
There was some debate about what to do, and we proposed a compromise where resources with a long max-age would never get revalidated, but that for resources with a shorter max-age the old behavior would apply. The Chrome team thought about this and decided to apply the change for all cached resources, not just the long-lived ones.
當 Facebook 的人找 Firefox 的人時，Firefox 決定另外定義哪些東西在 reload 時不需要 revalidate，而不像 Google Chrome 的 workaround：
Firefox chose to implement this directive in the form of a
Firefox 的人也寫了一篇「Using Immutable Caching To Speed Up The Web」解釋這個新功能。
Those users have been enjoying the 400% increase in responsiveness and a 700% improvement when web pages are loading.
現在的 Firefox 是 50 版，目前的情況是當 extension 標成 multi-process compatible 就會啟用：
With Firefox 49 we deployed multi-process Firefox to users with a select set of well tested extensions. Our measurements and user feedback were all positive and so with Firefox 50 we deployed multi-process Firefox to users with a broader set of extensions, those whose authors have marked them as multi-process compatible.
下一個版本 (51) 則是會全面開啟，除非有 extension 標成 multi-process incompatible：
Beyond Firefox 50, we have more work to do to enable multi-process Firefox for users with as yet unsupported extensions. In Firefox 51, if all testing goes according to plan, we’ll be enabling multi-process Firefox for users with extensions that are not explicitly marked as incompatible with multi-process Firefox.