Of the MITM attacks against SSL actually deployed in the wild, what proportion rely on stolen keys compared to compromised certs? Answer that question, and you'll see that my "most attacks" claim is fully valid.
It's possible, but useless, to implemet public-key TOFU in web browsers. Almost all web sites rotate keys too fast for the pin to be useful.
If you don't trust your CA chain then do cert pinning. Either way you need to know you're talking to the right server, pretending that's impossible so it's not worth trying is a cop out.
Certificate pinning is not possible in any real-world scenario. The problem is that certificates change too often. Certificate authorities are part of the problem: they encourage high turnover, because it increases their profits. Certificate pinning only works in situations where you have inside knowledge of a company's certificate policies. Google implements certificate pinning on their own Google properties in Chrome in this way. There is nothing in SSL that technically prevents certificate pinning, but the design of SSL has inevitably led to non-technical economic incentives that indirectly make certificate pinning impossible.
SSH essentially relies exclusively on key pinning (not certificate pinning) for authentication, and it works beautifully. SSH has no certificates, and yet has a higher market share in the shell connection market than SSL has in the http connection market. SSL should become more like SSH, but this is impossible to achieve, because CAs are already economically entrenched.
True MITMs are reasonably rare in large part because of SSL.
WRONG. Provably wrong.
There exists an extremely widely-used crypto protocol which uses no certificate validation and yet prevents almost all MITM attacks. It's called SSH. In fact SSH has done something that SSL will never do: it has completely replaced the corresponding unencrypted protocol, to the point where no one, I mean no one, uses telnet anymore.
How does this magic work? SSH performs key validation. It performs this validation without requiring certificates. The validation model is very simple: trust on first use (TOFU). Although TOFU on paper is theoretically inferior to CA validation in every way, real life does not take place on paper. In the real world, TOFU is far superior to CA validation. It prevents the kinds of attacks that actually matter, while ignoring the kinds of attacks that look great on paper but aren't really a big deal in practice.
I admit I made up the 1% figure, but I believe it is a reasonable estimate. Would you like to challenge the accuracy of the number? If anything, I am convinced that closer scrutiny would reveal it to be too high of an estimate. 2013 US GDP was 17 trillion dollars. Microsoft's 2013 revenue was 77 billion dollars, about 0.5% of GDP. Of course, Microsoft is not a pure software company; some portion of that revenue is hardware, services, and so on. There are other software companies, of course. I have never heard anyone reasonably justify a much higher cost than 1%.
It is true that the benefits of commercial software far exceed its costs, but from a public policy perspective that's completely irrelevant. The cost of producing this software is ~1% of the economy. If commercial software did not exist, the government or any public body could (provably) replicate the exact same benefits at the exact same cost. Government support for something on this scale is not a ridiculous idea; it's exactly how most basic research in science is actually done in the US. Hence 1% (or less, if I'm overestimating the cost) is the correct figure to use for policy prescrptions.
In a world lacking music, the human species can survive. In a world lacking free sharing of knowledge, the human species is doomed to die. Take your pick.
To take just one example, if not for copyright restrictions, Google Books would provably be willing to make available for free to every human on the planet the entire contents of the Library of Congress. You're telling me that the future potential growth from making this knowledge available isn't worth trading 1% of our economy on a one-time basis?
Restrictions on computing or copying are unacceptable. Full stop. This is not negotiable. Copying is as natural as breathing in the digital age. Everything else, without exception, has to start from this premise and work around it. Nothing else is compatible with technological progress. Nothing else is compatible with free society.
If artists cannot sustainably produce music under this constraint, then so be it. Better to have no music at all than no freedom of computing.
3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.)
The free tools have more rough edges than the Microsoft software you're used to. For learning purposes, this is an advantage. By the time you master sendmail configuration or mod_rewrite rules, you'll also have learned the m4 programming language and regular expressions. Clicking on graphical configuration wizards does not make you learn anything like what you naturally have to learn just to set up a Unix server.
Microsoft certainly makes some world-class software. Visual Studio is unmatched by anything in the open source world. But Visual Studio is not really that useful until you've actually learned how to code. Open source and free software will get you there.
However, if you compare iOS and Android, which is the proper comparison, then there is one other major important difference: Lots of Android hardware is capable of running open-source Android builds, but there is no iOS hardware at all that can run open-source builds of Darwin. I don't consider iOS "open" if you can't run it on any actual hardware.
To do nothing is to be nothing.