When a software company will not make the source code for a product available, one must put one's faith in something called security through obscurity. The argument for security through obscurity is simple. If crackers could get to the source code, it would be easy for them to find ways to exploit weaknesses in the product.
While that sounds like a logical argument, it is easily refuted. If you are not already convinced by the numerous Windows, Internet Explorer, and Microsoft Outlook exploits, then pay a visit to Game Copy World sometime. You'll see just how easy it is for people to break the copy protection for games without having to see the source code. The site often publishes copy protection workarounds the same day a game is released.
Ironically, we open source advocates have confidence in the security of open source software for the same reason others defend security through obscurity - open source code actually does make it easier to spot weaknesses in a product. We simply take the next step in the logic. If having the source code makes it easy to spot weaknesses, then the best way to find and plug security holes is to make the source code as widely available as possible and solicit the input of those who use it.
A greater security risk than system cracking concerns me, one that is only possible through source code obscurity: intentional backdoors.
A couple years ago, researchers discovered that Windows 95, Windows 98, Windows NT, and Windows 2000 include two cryptographic keys. When a Windows service pack accidentally failed to cloak the identity of the keys, Andrew Fernandes discovered that the second key was called _NSAKEY. The implication is that Microsoft provided the National Security Agency (NSA) a way to crack into or decrypt information on any Windows box for surveillance or data-recovery purposes.
Microsoft denies providing the NSA with a backdoor, of course, and says the NSA label only indicates that the key meets the cryptographic requirements of the NSA. Unfortunately, there is no way to know if Microsoft is telling the truth. After all, if it is true that the NSA has a backdoor into every Windows system, then what could one expect Microsoft to say?
It's bad enough that Microsoft and the NSA may have peepholes into our desktops and servers. But what about the crackers who broke into Microsoft recently? Do they now have those same peepholes? Did the crackers who broke into Microsoft modify any source code in order to introduce new backdoors into Windows, or expand existing ones? Did the crackers steal any of the source code? Is there enough information in the source code to provide the crackers a backdoor into Windows systems? Is there enough information there to provide the crackers with a way to decrypt information on any given system without having to know a password?
Just as important are the following questions: Who are the crackers? Are they operating alone or with the aid of a rival company or nation? With whom will the crackers share the source code, assuming it has been stolen?
Depending on the answers, the recent security breach could lead to some alarming possibilities. Given enough information, unknown people, companies, or even nations could soon easily crack into Windows systems and decrypt the information there. If Microsoft knows this is the case, it is not in a position to admit it. To do so would create an embarrassment from which not even Microsoft could recover. An admission would also compromise any relationship Microsoft may have with the NSA.
It's time for Microsoft to face reality and open Windows' source code. Aside from encouraging customers to go into denial, that is the only way Microsoft can restore confidence in the security of Windows. People must have "the ability to examine, modify, recompile and reinstall the code on their own. Then, and only then, can Windows customers have any assurance that their systems are safe from prying eyes.
Fortunately, open source closes backdoors, as ironic as that may sound. I am reasonably sure that my Linux-based machines have no NSA-enabled or other secret backdoors. Even if it were possible to insert such patches without Linus Torvalds or the other kernel maintainers noticing, those secret patches would be discovered by many other Linux kernel hackers.
So I advise you or your company to commit to open source to the extent that it is possible for you. That means putting pressure on companies like Microsoft to provide the source code for Windows and other applications in a form that allows us to recompile and reinstall them. If Microsoft refuses to do so and we must abandon it altogether, so be it.