Wednesday, October 12, 2011
Most realistic sci-fi film scene ever
Sunday, August 21, 2011
The Law of Political Necessity
- Something must be done
- This is something
- Therefore, it must be done
Friday, July 08, 2011
Who won the space race?
Wednesday, June 29, 2011
Whatever happened to stability analysis?
Monday, May 30, 2011
Loss Equilibrium
There's the paranoid approach: "however much security you have, it's not enough" This is encouraged by vendors of security products and services, who want you to buy, buy, buy, and don't care if you're spending your money effectively. It's functionally equivalent to the "priceless assets" approach: "if your assets are infinitely valuable, anything less than an infinite amount of spending on security is inadequate." This approach is deeply baked into the security industry due to its origins in military security, where the asset value is the entire country.
There's the auditor's approach: "for every vulnerability, a control". It assumes that controls are 100% effective, and that breaches can be identified and rolled back if detected. This also creates an ongoing market for security products, since in a system with human components and with computationally universal inputs, that is one that allows documents with macros, Javascript, and active plugins, not to mention stack overflows and command injection vulnerabilities, there is an infinite supply of vulnerabilities to be protected by pattern-matching & blocking technologies.
Then there's the loss-management approach. This is based on the notion that losses can be predicted, and controls can be assessed for their effectiveness in mitigating those losses. This is the only approach that that provides a principled basis for a budget less than "all the money you have". But how do you manage effectiveness in a principled way, when vendors are motivated to tell you "trust me, it really works great!" and hide any weakenesses that their product or service may have until it's too late for you. Third party certifications such as Common Criteria protection profiles ensure a baseline of effectiveness, but the CC certification hierarchy doesn't distinguish levels of effectiveness - the distinguishes trustworthiness of achievement of the baseline. A product certified at EAL4 may may be no more effective than one certified at EAL2.
Assessment of effectriveness is problematic prospectively, but it can be assessed retrospectively: simply add up the losses actually experienced with a given configuration of controls. That is, if you are unable to develop a credible estimate of annual loss expectancy, use historical data for measured annual losses. That is, ALE = MAL.
Now apply the principle of not spending more than the value of the asset to your annual budget. You have observed MAL, so you can say the annual security expenses shouldn't exceed that value. SE =< MAL.
In an environment where threats & assets cannot be effectively and reliably estimated, security expenses will approach an equilibrium with security losses. This is not good news for participants with assets that are protected by the laws of macroeconomics, such as consumers in a free-market economy whose personally identifiable information is somewhere out there in the cloud.
Saturday, May 28, 2011
Buffalo
Wednesday, May 18, 2011
The Paranoid Style in American Politics
By Richard Hofstadter
Harper’s Magazine, November 1964, pp. 77-86.
Hofstadter was a famous professor of political science at the school where I was an undergraduate, though I never took any of his courses. This article is one of the reasons for his fame. The paranoid style is evident to any careful observer of politics, but this puts it in a broader context. No you're not imagining it, they really are crazy, and they've been that way for a long time.;
Friday, April 22, 2011
Ballistic Risk Management
Sunday, March 27, 2011
Mechanical Universal Turing Machine at last!
Not to mention his fully fabbed Rule 110 cellular automaton, with a few parts missing, oops. Rule 110 CA's are also universal, with a nice scandal to go along with their discovery.
http://srimech.blogspot.com/search/label/turingmachine
Reminds me of one of those naive geniuses that pop up regularly in the SF literature.
Monday, February 21, 2011
The road to sustainability: finding it with DE4 models
- sustainable in the sense of lasting at least as long into the future as civilization has extended into the past, some 3000-5000 years.
- stopping the decline in biological species diversity. This can occur either by forestalling the extinction of existing species, or by increasing the rate of appearance of new ones. Currently we're out of equilibrium by at least 10,000 to one.
- Stopping the increase of carbon dioxide in the atmosphere, and secondarily other pollutants itself. The days of "the solution to pollution is dilution" are long gone. Mark Z. Jacobson's GATOR model is an example of the state of the art in this area.
- Transformation of the global energy economy to sustainable sources. Jacobson and Mark Delucci have concluded that it is technically feasible to transform global energy sources to wind, water and solar within 20-40 years. They are of course wildly optimistic since neither the political will nor the economic resources are available.
- Thus integrating economic models into this transformation is necessary. Things are unlikely to change in ways that are unprofitable; causing economies to collapse by raising taxes to unsustainable levels in order to fund energy projects doesn't do anyone any good. Cyclic booms and collapses don't count as "sustainable" even if their long-term average is nonzero.
- We suspect that it will somehow be necessary to decouple the material economy from the nonmaterial value chain. Many material resources are bounded, but billionaires cannot personally consume all their wealth; it's just places they don't have time to go to and money they don't have time to spend. We would like to know whether a level of health and comfort equivalent to a first-world country in the year 2000 can be achievable for most everyone in the world using market economies.
dead media: the uncensored internet
Monday, December 20, 2010
Bozo the Clown's telephone number
Fiddledeedee 555-5555-55555-5552. That's fifteen 5's and a two.
I think it must be related to an observation that many weather prognosticators and climate change skeptics' declarations cannot be distinguished from the results of numerological computations on facts about clowns.
Masters writings of course are the very antithesis of this approach -- they're as scientific, coherent and data-based as it is possible to get.
Friday, October 15, 2010
Analogy of the day...
The New York Times doesn't. An article by David Segal concludes that economics isn't really trying to be successful -- people are just too complicated. He quotes Duke University professor and specialist in behavioral economics Dan Ariely, who says "...the economy is a hugely complex problem. So we either simplify the problem and offer a solution, or embrace the complexity and do nothing.” Or as I say sarcastically, "if at first you don't succeed, give up."
Sunday, October 10, 2010
Amateurs study cryptography, professionals study economics -- true experts study accounting
Saturday, October 02, 2010
Cyber Attack Threat Map
Tuesday, September 28, 2010
Security is a wicked problem
Monday, September 06, 2010
Atlas Shrugged - nothing happened
Saturday, September 04, 2010
The logic of denialism
- it never happened
- even if it happened in the past, it's not happening now
- even if it's happening now, it's not due to anything we did
- even if it is due to something we did there's nothing that can be done about it
- even if there's something that can be done about it, it shouldn't be done for other reasons
- even if it is due to something we did, it wasn't with malicious intentions and we shouldn't be held responsible
- even if something should be done, we shouldn't have to pay, somebody else should
- even if we ought to pay for the fix, paying will consume all of our profits and we'll go bankrupt and then somebody else will have to pay anyway
- even if we won't go bankrupt, our profits will be reduced, and this is bad for the country if not for the world
- solving the problem is revenue-neutral, we could get a lot of good press and "brand reputation" if we fixed it
- hey, we could increase our profits if we really fixed this problem
Saturday, July 24, 2010
The pending carbon regulations
When the EPA first made its finding that the climate impact of anthropogenic CO2 and 5 other greenhouse gases endangers the health of U.S. citizens (the "CAA endangerment finding"), the Obama administration made it clear that if Congress didn't produce legislation, the EPA would act unilaterally. No deficit-reducing taxes, no free-market cap and trade framework, simply a flat limit on emissions, just like benzene, ozone and other pollutants. "Please don't throw me into the briar patch!"
Friday, December 11, 2009
ODBC password encryption
How secure is ODBC?
Any ODBC sniffer will be able to trace everything from an ODBC perspective. This includes data, usernames, passwords etc. However, if you are using an ODBC driver that provides encryption, you can increase your level of security.
Since any front-end tool can effectively connect to and modify your databases, you need to enforce security at the server level.
On the other hand, if you use TCP/IP, ODBC security should be the least of your concerns!
It should be massively embarrassing to every security professional that the basic rule of never transmitting or storing passwords in clear text still doesn't have a standard, default implementation even now, many years after the first ODBC specification was published in 1992. The fact that ODBC is really an API, and not a network protocol, and that it was created for a non-networked environment where communication between the client process and the DBMS would take occur in the within-system interprocess communication framework, via OS traps using shared memory or intrasystem messages where security can be rigorously enforced, instead of the modern environment where database client and server processes run on different computers with an open, possibly hostile network in between, is not really an excuse. Vendors have had seventeen years to work this out!
Some ODBC libraries do support SSL session encryption, and if you encrypt everything, then passwords get encrypted too. But passwords should be encrypted always and everywhere. If every OS was able to figure out that this is required decades ago, DBMS products should be able to figure it out, too.
Monday, December 07, 2009
Hydrogen-compressed natural gas blends
While ownership of the name is good for that company, it's bad for the industry, which has to use some other, less felicitous term, such as HCNG, which is used by NREL. DOE’s Advanced Vehicle Testing Activity (AVTA) spells it H/CNG, and has vehicles using 15%, 30%, 50% and 100% hydrogen.
Sunday, November 29, 2009
Academic research in security - misguided again
A few weeks ago, Science magazine, one of the most prestigious general-readership journals (if you can call a polymath scientist a "general reader") published a short article in its perspective section by two of the most eminent computer engineering researchers in the US, William Wulf and Anita Jones, about computer security, titled "Reflections on Cybersecurity".Their summary is almost accurate "Cyberspace is less secure than it was 40 years ago. That is not to say that no progress has been made—cryptography is much better, for example. But more vital information is accessible on networked computers, and the consequences of intrusion can therefore be much higher. A fresh approach is needed if the situation is to improve materially." And their discussion, behind a membership barrier or a typically outrageous $15.00/day per article pay-per-view fee, is generally correct. They list a number of ways that security goes wrong even with the best designs and the best methods.
Their error is in their conclusion, that public key cryptography is the miracle cure: "we conjecture that by providing just a way of accessing the public key of an object, one could build an arbitrary end-to-end security policy." Yes you can probably build an arbitrary end-to-end security policy, but in my experience with public key infrastructures, it will be intractably complex, in the technical sense of being NP-hard to administer in all but trivial usage structures. This is the same kind of error that occurs in real life with role-based access control schemes: for naturally occurring organizations rather than artificial examples, you quickly end up with more roles than people, and the system, though elegant, costs more to operate and administer than the messy environment that you started with.
Any system with crystalline simplicity such as the one that Wulf and Jones are looking for will have the brittleness of crystals, too. Strike it at just the right angle and it will fail disastrously. They have failed to recognize the key design decision by Tim Berners-Lee that made the World Wide Web scale so remarkably. Unlike nearly all previous hypertext systems, the WWW does not automatically create backlinks with every forward link, and it doesn't automatically update links with their targets change or go away completely. The Web expects errors and deals with them routinely. Even the very advanced semantic web, which is otherwise little more than a type system for XML objects, expects to see uncomputable type specifications and deals with them routinely.
If academic researchers want to make significant advances in security, they need to come to grips with the notion of "robustness" and not confuse it with "simplicity", which although it is very similar in that simple systems are often easy to make robust, they're not the same. Two of the most robust systems we understand, the immune system and the behavioral programming of the nervous system, are also among the most complex systems known.
Friday, October 23, 2009
Why economists should be opposed to nuclear power
No principled economist should be for nuclear energy, because its costs are dominated by serious aspects with extremely long tailed statistical distributions. Unlike chemicals such as PCBs where the cost of projects such as the cleanup of sediments in the Hudson River is merely unimaginably huge, there has never been a cleanup of a nuclear site so successful that it’s now suitable for residential use.
Other chemical disasters also have infinite costs — consider the permanent loss of the entire town of Times Beach, Missouri due to dioxin contamination. It’s also true that the costs associated with coal tailings and other mining wastes have equally long tails. Picher, Oklahoma is being abandoned due to mountains of toxic tin mine tailings that cannot be cleaned up at a cost less than the total value of the town.
We cannot base a permanent energy economy on extraction-based activities that cause progressive, permanent damage to the environment — sooner or later we’ll end up with all of the environment contaminated, and we’ll have no good places left for ourselves. If you like nuclear energy, we already have a wonderful source of fusion energy that produces far more power than we’ve been able to capture so far, and it keeps its waste to itself, at a safe distance of 93 million miles. Photovoltaic, solar thermal, wind, hydro, and wave energy produce no toxic waste needing cleanup after the plants have completed their lifespans. Not to mention photolysis of water to produce hydrogen, which has a nice promise to make a chemical fuel in home power plants for people who have an emotional need for a viciously roaring internal combustion engine in their car rather than a meekly quiet electric motor. But solar hydrogen technology is much less farther along than the other renewable ones.
Natural gas is a useful low-carbon fuel, but it can only be a transitional stage to a fully sustainable energy economy.
Tuesday, September 15, 2009
Path to a hydrogen-based energy economy
The U.S. Energy Secretary, Paul Chu, has put the government on a path to a renewable, carbon-free energy ecosystem that is based on electricity and battery storage for stationary and short-distance transportation, and biofuels for long-distance transportation. This is a perfectly valid path but it's not the only one.
H.R.1622 was passed unanimously by the House and referred to the Senate Energy Committee on July 21. This bill directs the energy secretary to implement a 5-year program to enhance the capabilities of Natural Gas Vehicles (NGV) in 12 areas, including fuel storage, fueling stations and NGV-electric hybrids. These capabilities are a necessary next step, but they don't provide big picture that gets us to where we need to go. Here's a sketch of a path that does. There's a lot more to this picture than there is space for here. The National Renewable Energy Laboratory has done a lot of heavy lifting in this area.
- Expand interstate infrastructure for Compressed Natural Gas transportation, driven by demand from long-haul truck lines and by supply pressure from natural gas producing companies
- Develop capability of CNG motors, based on demand from trucking companies
- Provide CNG motors in autos, based on fuel-management technology developed for trucks. Just like diesel fuel, CNG cars can drive up to the truck pumps at the fuel station. Home fuel stations become viable for those homes that have gas heat.
- Deploy hydrogen-enhanced "Hythane" fuel. Hydrogen can be obtained by steam reformation of methane with carbon capture, or by direct production of hydrogen from water
- Develop "Hy-flex" engines that can run on any blend of hydrogen and methane from 100% CNG to 100% hydrogen. At this point pure hydrogen fuel stations become a technically viable proposition.
- Prohibit pure CNG
- Progressively reduce the allowed proportion of methane in Hythane fuel.
- Allowed proportion reaches 0%, prohibiting methane in compressed-gas fuel. Done!
Saturday, August 08, 2009
Too complex to exist
Interesting on its own, the argument also applies to IT risk management. CIOs like to simplify their systems, for many good reasons, including security reasons. The farther the system gets from being analyzable by the security staff, the more likely it is that it will contain a critical vulnerability that isn't being adequately addressed.
But they need to be sure that they don't simplify too much. We all know the maxim about not "putting all your eggs in one basket." CIO's like to say "we're an XX shop" where XX is IBM or Windows or SAP, but whenever they do this they're admitting that they're not only at the mercy of that vendor but also at the mercy of any cybercriminal who holds an undisclosed zero-day exploit. If an application or infrastructure component is so essential to the business that if it went down the business would also have to shut down, then that application or component probably needs to be partitioned, modularized, and diversified so that any single failure is not catastrophic.
Sunday, July 26, 2009
Health destruction systems
It's shocking, although I have to say not really surprising, that so much of the discussion in the debate about restructuring our healthcare system is about how to maintain the profits of the insurance companies at the expense of the health of U.S. citizens.
The other perversity of the current system is the fee-for-service model, that pays more for delivery of more procedures, regardless of whether they actually do any good for the patient.
The original vision for Health Maintenance Organizations was that they could reduce costs by keeping their subscribers healthy. Healthy people don't need treatment as often, so by providing programs that keep subscribers from getting sick, HMO's could reduce the amount of money they would spend on treatments. But they discovered that prevention programs have overhead -- they actually had to engage with their subscribers regularly, and convincing subscribers to stop doing unhealthy things and start doing healthy things was complicated and took work. It was much easier to simply deny care when they got ill, or better yet exclude people who were likely to get sick in the first place. If your HMO only accepts healthy subscribers, payments for treatments are low and their subscriber fees are mostly profit. So HMO's became care-denial organizations. This acted to counterbalance the motivations for unnecessary treatments, but it didn't do anything to keep patients healthy.
In order for the United States to have a healthcare system that promotes the health of citizens instead of working against them, we have to identify those portions of the system that are incentivized to work against the interests of the end-users and either reverse those incentives or eliminate those portions entirely. I don't know of a structure that does that other than a government-administered single-payer system. Yes, government is inefficient, but it could hardly be more inefficient than the current system that is full of middlemen and where every insurance company has its own unique set of forms for doctors to struggle with when they should be focusing on their patients, and the "statement of benefits" from the insurance company has 3 different prices for every line item.
Tuesday, June 02, 2009
PCI "death penalty"
Tuesday, May 19, 2009
Threat taxonomies
Other risk or threat taxonomies can be found in:
- U.S. NIST SP 800-30 "Risk Management Guide for Information Technology Systems"
- SANS has a "What works" poster series that was organized by threat a few years ago. Unfortunately that perspective is gone from the latest version.
- recreational vandals: generally low skill level, looking for notoriety, will attack public-facing services but not destroy the ability of the site to show his "greatness".
- cyber-theives: looking for money, will extract credit card and other information that can be sold or used directly to generate cash. Will generally not do permanent damange so that he can come back later for more.
- cyber-extortionists: looking for weaknesses that can stop the service from fulfilling its function, so that he can threaten to do it again if the victim doesn't pay up
- cyber-spies: looking to get in and out without discovery. May be supported by governments and may have high skill levels and large amounts of resources available for cracking passwords and encryption keys
- cyberwarriors: attempting to do as much damage as possible. Will attack infrastructure for business continuity and data integrity.
Saturday, April 18, 2009
Surprise-resistant
- What is fragile should break early while it is still small. Computerized systems always break; they need to be built so that any component, including the hardware and the OS, will not cause the system to fail if every instance of that component fails.
- No socialisation of losses and privatisation of gains. We haven't had a case where a computer systems needed a government bailout. Let's hope we never do.
- People who were driving a school bus blindfolded (and crashed it) should never be given a new bus. PCI and HIPAA penalties for data breaches need to be much more severe than the slaps on the wrists that are given these days.
- Do not let someone making an “incentive” bonus manage a nuclear plant – or your financial risks. CISO's should never report to the CIO. CIO's are paid to reduce IT costs; if they can do so by ignoring risks, they will.
- Counter-balance complexity with simplicity. Information systems are the most complex systems in any enterprise. Every time some local solution is added in because it's too hard to make a global change, risk increases.
- Do not give children sticks of dynamite, even if they come with a warning. While IT users may be system admins of their PCs at home, they should not be given that privilege over the systems they use at work.
- Only Ponzi schemes should depend on confidence. Governments should never need to “restore confidence”. If your IT systems are so complex that their risk can't be analyzed by different members of your security staff and yield the same risk results, you can't manage their risks consistently.
- Do not give an addict more drugs if he has withdrawal pains. Buying more security products does not often produce greater security.
- Citizens should not depend on financial assets or fallible “expert” advice for their retirement. If a security "consultant" uses some proprietary method that he can't teach to a company's security staff, he's likely to be making it up as he goes along.
- Make an omelette with the broken eggs. Don't remediate security weaknesses by patching on more controls, redesign the systems so that they are naturally secure.
Saturday, March 28, 2009
Laws of evolution
Evolution by natural selection is a natural phenomenon with the same status as heat flow, which has its own Laws of Thermodynamics. It's a statistical statement about aggregate properties of groups of individuals, which in the case of thermodynamics are atoms, and in the case of evolution are biological organisms. Once it's understood clearly and carefully, what was originally an empirical generalization turns out to be a mathematical truth as incontrovertible as the fact that 2+3 is greater than either 2 or 3.
- The first law of evolution: when entities that have inheritable traits exist in an environment where some of those traits make them less effective at reproducing themselves than entities with other traits, then evolution occurs.
- The second law of evolution: when one subgroup, or population, of evolving entities becomes separated from another subgroup of what was that same population, they will evolve into varieties that cannot interbreed with each other, creating different species.
- The third law of evolution: the complexity of organisms in an ecosystem tends to increase, because complexity has a lower bound, while it has no upper bound. That is, "there's always room at the top" of the complexity spectrum.
The laws of evolution apply to any entity that follows the first law, whether they are biological organisms, cultural memes, or data structures in an evolutionary algorithm in a computer.
Charles Darwin's great achievement was the discovery of the principles of evolution by examination of the fossil record and other sources. To the politically-minded, Darwinism is the recognition that the fossil record shows how evolution occurred in biological organisms.
In the 150 years since the publication of The Origin of Species, the theory of evolution has itself evolved, into a "modern synthesis" that is 60 years old now, incorporating molecular biology and population genetics. This theory (Huxleyism if you have to ideologize) recognizes that errors in DNA replication and recombination will lead to evolution, regardless of any evidence in the fossil record.
The latest features of evolutionary theory, still in progress under the banner of a wierd name, evo-devo, are the incorporation of developmental lifecycles into the organization of the traits that natural selection acts upon.
Update: I probably ought to mention, since I cite the laws of thermodynamics, that life occurs in an open system, on the slopes of entropy gradients, not in the closed system that the second law of thermodynamics applies to.
Also, Christopher Hitchens has a commentary about the Texas Board of Education decision. Although always entertaining, Hitchens doesn't actually add much light to the debate.
Sunday, March 15, 2009
Foundations of (sustainable) economies
You can look at economic systems in the same way. There are a few industries that constitute primary production, and the rest of us in other industries are all standing on their shoulders. Only primary industries produce real value that exists independently of some subjective judgement. If you are trying to design a monetary system that is immune to speculative fluctuations, you want the currency to be tied to a value that is objectively constant as possible.
The primary economic sectors are
- mining
- agriculture
- energy
- information technology
Many people would want to include real estate in that list, since other than waterfront landfills, they ain't makin' any more of it, as Will Rogers said. But we have seen a real estate bubble collapse recently, and there's no reason that it can't happen again. Real estate has a stable value only if you use it yourself. Real estate that is not owner-occupied free and clear is speculative by somebody.
Nevertheless, parts of the energy sector are set up for an investment bubble, as Eric Janszen wrote in an article for Harper's titled The next bubble: Priming the markets for tomorrows big crash. Once we're out of that bubble, we should have a sustainable economic foundation. There will be other bubbles, but they will be riding on that foundation, and investors who confine their focus to foundational sectors should be able to ride them out without too much damage.
We may discuss the sustainability of each of the primary sectors in future posts.
Saturday, March 14, 2009
Doing your own dentistry
Saturday, February 28, 2009
Conditions for a unified consciousness
In his book "Consciousness Explained", philosopher Daniel Dennett (do we have to wait until he's dead to call him a "great philosopher"?) argues that the notion of "one mind" is an illusion, and that even as individual persons we have many minds. I think this goes a bit far, but it underscores that there's no neurologically justified way to look inside the box of our heads and tell how many minds are really there, as long as the mind that does the talking mistakenly says "I'm the only one". Nobody has a clue as to how to look at a neural circuit diagram and tell whether it can or does sustain consciousness.
Well, okay, here's what may be a clue: a unified consciousness is possible only in a system where the interconnect bandwidth between the processing elements exceeds the sensory bandwith between the respective processing elements and the external world.
Short of magic, ESP and telepathy, the one-mind options are physically impossible.
Even in science fiction, where one of the most creatively designed alien characters ever is a character in Vernor Vinge's A Fire Upon the Deep -- a group mind whose component elements look like puppies, but create a unified consciousness joined by ultrasonic sensors on their backs. Even with holographic multiplexing akin to the principles of phased-array radars, which doesn't seem to be what Vinge was thinking of, the bandwidth obtainable from atmospherically-transmitted ultrasound doesn't compare to the bandwidth obtainable in even a small fiber tract of neuronal axons and dendrites. Consider a simpler argument for bandwidth limitation: birdsong has much of its information in ultrasonic frequencies -- why are birds not telepathic with other birds of the same species?
Friday, February 13, 2009
Transparency is profitable
This effect is well-known to users of eBay, Amazon, and other online marketplaces that incorporate reputation systems.
Sudipta Basua, John Dickhautb, Gary Hechtc, Kristy Towryc and Gregory Waymirec (2009) Recordkeeping alters economic history by promoting reciprocity. PNAS January 27, 2009 vol. 106 no. 4 1009-1014. Open Access article at http://www.pnas.org/content/106/4/1009.full
Saturday, January 31, 2009
Automated vs manual code inspections
.. software testing alone has limited effectiveness -- the average defect detection rate is only 25 percent for unit testing, 35 percent for function testing, and 45 percent for integration testing. In contrast, the average effectiveness of design and code inspections are 55 and 60 percent. Case studies of review results have been impressive:
- In a software-maintenance organization, 55 percent of one-line maintenance changes were in error before code reviews were introduced. After reviews were introduced, only 2 percent of the changes were in error. When all changes were considered, 95 percent were correct the first time after reviews were introduced. Before reviews were introduced, under 20 percent were correct the first time.
- In a group of 11 programs developed by the same group of people, the first 5 were developed without reviews. The remaining 6 were developed with reviews. After all the programs were released to production, the first 5 had an average of 4.5 errors per 100 lines of code. The 6 that had been inspected had an average of only 0.82 errors per 100. Reviews cut the errors by over 80 percent.
- The Aetna Insurance Company found 82 percent of the errors in a program by using inspections and was able to decrease its development resources by 20 percent.
- IBM's 500,000 line Orbit project used 11 levels of inspections. It was delivered early and had only about 1 percent of the errors that would normally be expected.
- A study of an organization at AT&T with more than 200 people reported a 14 percent increase in productivity and a 90 percent decrease in defects after the organization introduced reviews.
- Jet Propulsion Laboratories estimates that it saves about $25,000 per inspection by finding and fixing defects at an early stage.
Saturday, January 24, 2009
How science works
This action is inevitably controversial and led to the story being one of the "most commented" on the Chronicle's website. While they present the spectrum of good, bad, and ugly views that one would expect in the newspaper of a large southern city, one of the commenters made a very good summary of the scientific method. [I've added some formatting to improve the clarity.]
Scientists often get so caught up in the marvelous organization of nature that they forget the basics. Science is simple:Hey, that's five steps plus "repeat", one fewer than six days of creation and rest on the seventh. Which method is simpler?Anything else isn't science, it's fiction or religion and should be taught in those classes, not science classes.
- look at some facts
- create a model of the facts
- use the model to make a prediction
- test the prediction
- revise the model to account for the differences between the model and the facts
- repeat
Evolution is the best model we have for the organization and development of biological organisms. All the others are losers in the scientific contest. I have no problems with teaching the weaknesses in evolution as long as the weaknesses of all the competitors are taught, too.
Consider "creation science" or "intelligent design". All their so-called "facts" have been shown to be mistakes or frauds. Their advocates' theories are full of logical errors, they don't make predictions that aren't obviously wrong, and they don't ever go out into the field and test anything against what their God is actually doing right now. It ain't science, it's propaganda.
Wednesday, January 21, 2009
The mirage of risk management
Arthur at the Emergent Chaos blog attempts to continue the debate on the viability of "risk management" as an approach to computer system security, based on the comment from Financial Cryptography that "risk management is a dead duck". [FC's home link is to itself in in SSL, but uses a self-signed certificate that neither Firefox nor IE7 want to trust. And with good reason. If a so-called security website can't get its own security setup correctly, can you take its content seriously?] In any case, the basic point of risk management as an illusion that practitioners should not pretend to be following seriously is a good one. Here are some of the reasons why risk management is more like the city floating in the sky in the distance across the blazing desert.
Sunday, January 18, 2009
Fundamental error in urban designs
This is really an intrinsic property of concentrations of humans, and the correct answer is not simply to design less stressful city plans with good transportation infrastructures so that you have fewer traffic jams, and mixed-use complexes so that you don't have to carry your groceries on the subway. These are stopgaps that make a bad situation less bad. The right answer is to get out of town, i.e. suburbia. People know this, even if architects don't.
Sunday, January 11, 2009
Why pure electric cars are no good
Sunday, January 04, 2009
Risk mismanagement according to the NY Times
Risk Mismangement by Joe Nocera is about the Value at Risk method for assigning a single number to a large collection of financial situations, at http://www.nytimes.com/2009/01/04/magazine/04risk-t.html?em
The End of the Financial World as We Know It is actually a two parter by Michael Lewis and David Einhorn, first at http://www.nytimes.com/2009/01/04/opinion/04lewiseinhorn.html?em and then, titled How to Repair a Broken Financial World, at http://www.nytimes.com/2009/01/04/opinion/04lewiseinhornb.html?em
I especially like the suggestion "Another good solution to the too-big-to-fail problem is to break up any institution that becomes too big to fail." When an enterprise is subject to catastrophic risks that put its existence in jeopardy, the only real remedy is to restructure the enterprise so that those risks are not catastrophic. That goes for the enterprises that are national and international financial systems, too.
Sunday, December 28, 2008
Not keeping score
This is really the most important question in security: how much security is enough? If we're ever to get beyond the self-serving answer "you can never have too much security", this has to change. There has to be a framework able to distinguish "too much" from "not enough".
Sunday, December 07, 2008
Small-scale water power
There are other environmental consequences in store if these small power sources become pervasive. Before Edison and Tesla invented electricity there were thousands of little dams all over New England producing power to run the mills -- their traces can still be seen today. The environmental effects were serious, not some tiny meaningless snail. Among other effects, they destroyed the Atlantic salmon industry, put fishermen out of business and eliminated a source of healthy food.
But there are many rivers that already have many small dams to provide flat water for barge transportation. The McClellan-Kerr Arkansas River navigation system is one example, extending for 445 miles from Oklahoma to the Mississippi River, with 18 locks and dams. Power turbines could easily be added onto them without further damage to the environment.
Monday, October 13, 2008
The Black Swan
We eagerly romp with [Taleb] through the follies of confirmation bias (our tendency to reaffirm our beliefs rather than contradict them), narrative fallacy (our weakness for compelling stories), silent evidence (our failure to account for what we don't see), ludic fallacy (our willingness to oversimplify and take games or models too seriously), and epistemic arrogance (our habit of overestimating our knowledge and underestimating our ignorance).
Saturday, August 16, 2008
We don't explain the news, we just report it...
In science we have the convention of the review article, which takes a whole bunch of more focused, technical reports and ties them together so that they form a coherent picture. General journals such as Science and Nature have a standard section in each weekly issue where they always publish two or three reviews. There's even a specialty publisher, Annual Reviews, who produce highly influential books containing nothing but review articles in each of 37 different subject areas.
When a scientist wants to investigate research in some new area of knowledge, the obvious approach is to look at the latest textbooks in the area, then find the review articles, then use them to look at the in-depth monograph volumes, followed by the specialized, polished journal articles, the less polished but more current conference proceedings, and finally the cutting edge but not fully vetted preprint archives and tech reports on personal websites. At each level you get less background explanation and stronger assumptions that the reader is fully up to speed on the concepts and issues. But each article also has references back to other articles for more context. The phrase "for reviews, see (ref1,ref2, etc.)" is practically obligatory.
Why doesn't journalism have a similar structure? Is the news review article an empty ecological niche waiting for an entrepreneur to fill it?
Rosen suggests that Pro Publica might be one candidate to fill that niche.Wednesday, August 06, 2008
Economics Does Not Lie -- sez you!
In this article at http://www.city-journal.org/2008/18_3_economics.html, Guy Sorman proposes 10 laws of economics that he believes qualify it as an authentic science. In his relentlessly pro-capitalist discussion, he fails to mention a important consequence of information asymmetry: Unrestricted markets destroy themselves. The rich get richer faster than the poor, because the rich can afford better advice on how to invest their money. Without strong regulation, this leads inevitably to monopoly or oligopoly in which the number of participants falls below that needed to function as a market. Stable pricing solutions do not exist when this kind of positive feedback occurs.
Of course there are as many rich fools who can't distinguish good advice from bad as there are poor fools, and there are a lot of fools giving investment advice, but not even the internet and exchange-traded funds have eliminated this asymmetry.
Labels: economic security
Saturday, August 02, 2008
Sinclair's Law of Perverse Educational Incentives
- Upton Sinclair (1935) I, Candidate for Governor: And How I Got Licked, ISBN 0-520-08198-6
Many of the paradoxes of why computer security is so bad can be attributed to perverse incentives, where doing bad things is more profitable than doing good things. Sinclair's law is one of the reasons that it is so difficult to teach people good security practices.
Tuesday, June 03, 2008
Evolution is "only a theory". Yeah, right.
-- David Hillis, a biology professor at the University of Texas at Austin, quoted in a Houston Chronicle story today, titled Debate brewing over how to teach science
Couldn't have said it better myself.
Sunday, September 16, 2007
Treasury Direct appears to be using the IdentityGuard product from Entrust, with the Entrust logo removed. Entrust owns patent 5,712,627, which claims to cover all forms of grid-based authentication.
Saturday, September 15, 2007
One of the most secure websites I know of is operated by the U.S. Government, which has received much deserved scorn for its weak security in other areas. Treasury Direct is in the process of introducing a multifactor authentication system based on a lookup card.
The website already uses a virtual keyboard that foils keystroke loggers; their Access Card adds a further level of authentication by requiring a 3-character one time PIN that can only be obtained by a computation that incorporates the layout of characters on a grid in a unique pattern known only to the Treasury and to the holder of the card. Details of Treasury Direct authentication are on their security page at http://www.treasurydirect.gov/indiv/help/TDHelp/help_ug_274-SecFeaturesProtectAcctLearnMore.htm. The page includes a demo of the Access Card system.
While most OTP systems use a six-digit PIN, the computation is performed by electronics on a token that is provided to the user. While prices of these tokens are very low for an electronic device, the price of a passive laminated card is far lower.
The security of the card is not as great as that of a token, since the keyspace produced by a six-digit token consists of 1,000,000 values, while the keyspace produced by the card is three of (26 letters + 10 digits), i.e. 363=46,656 possible keys. Adding a fourth character to the card would create a keyspace of 1,679,616 possibilities, but this was apparently determined to be too much of an imposition on the user.
Monday, September 10, 2007
Anyway, one more step in the evolution of best common practice...
Sunday, August 12, 2007
How should your organization react when an employee loses a PC? The reaction should vary depending on the nature of the information stored on it. If the information includes a database with personally identifiable information about employees, customers or other persons, you may have to notify every person in the database. But before you can understand what's on those PCs, you have to know who has them. Maybe some of them are lost? How do you know?
We hope you're not in the sad situation of NASA, which received this response to a request to confirm possession of one:
This computer, although assigned to me, was being used on board the International Space Station. I was informed that it was tossed overboard to be burned up in the atmosphere when it failed.
The Government Accounting Office documented more than $94 million in equipment losses over the past 10 years by the agency.
Monday, June 11, 2007
From the Risks Digest,
http://catless.ncl.ac.uk/Risks/24.68.html#subj6.1. This isn't quite cyberAIDS, it's more like an iatrogenic disorder.
<"Peter G. Neumann"
An erroneous Symantec antivirus signature update caused Norton Internet
Security 2007 and Norton 360 antivirus software to identify two critical
system files (netapi32.dll and lsasrv.dll) as the Backdoor.Haxdoo Trojan in
the Simplified Chinese version of Windows XP (with Service Pack 2 and a
particular patch), resulting in those files being quarantined. As a result,
millions of PCs throughout China were crippled, unable to be
rebooted. ``According to Symantec, the problem was caused when Symantec made
a change to the automated process used by the company's security response
team to detect malicious software.'' [Source: Article by Aaron Tan, CNET
News.com; PGN-ed]
http://news.com.com/Flawed+Symantec+update+cripples+Chinese+PCs/2100-1002_3-6186271.html?tag=st.ref.goo
http://www.cctv.com/program/bizchina/20070524/103599.shtml
Saturday, June 09, 2007
I actually wrote this in January 2002. I was reorganizing some old files and rediscovered it. It's never been published anywhere:
Computer Science departments teach courses in program verification that are based on the thesis that algorithms are mathematical objects that can have statements about their properties proven correct with the same absolute assurance that applies to the statement that “the factors of 330 (base ten) are 2, 3, 5 and 11”.If we would only take the trouble to prove our programs correct, we would save ourselves worlds of trouble in the long run [Note 1].What does it take to prove that a small program written in a high-level language will execute as intended?If you believe the textbooks, just a knowledge of logic.In reality, you need to have proofs of the correctness of several objects:
- The small target program
- The compiler for the language that the target program is written in
- The source code for the runtime library modules for the language the target program is written in
- The compiler(s) for the language(s) the runtime library modules are written in
- The source code for the operating system the target program will run on
- The compiler(s) for the language(s) the operating system is written in [Note 2]
- The compilers and OS are enormous programs that cannot be proved correct by hand, so theorem-proving tools must be used. These must be proven correct, too:
- The theorem-proving tools
- The language processor(s) for the language(s) that the proof tools are written in
- The processor, memory and I/O logic of the computer the OS and program run on all need to function correctly; they need proofs, too.
- Almost nobody has designed and built a computer completely by hand since the 1950’s, so all the design tools need to be proven correct.
- The VLSI design tools
- The PC board layout tools
- The language processors for the language(s) that the tools were written in
- The OS that the tools run on
- The hardware design of the computer that the tools run on
Remember, these are tools that were used to design the computer that we’re actually interested in, so we have a bootstrap situation that requires proofs of correctness all the way back to the stage when the entire system actually was completely designed and assembled by hand from primitive parts and machine language instructions toggled in by hand.
Last of all, you need a proof that your model of the physics of the hardware your computer is built out of is correct.Current consensus in the philosophy of science is that regardless of the fact that the doped silicon that integrated circuits are made from is perhaps the most accurately characterized material known to man, no scientific fact can be proven correct, it can only be falsified [Note 3].
You might consider the specific hardware used to implement your system’s security irrelevant – after all, a bit is a bit – but consider these two examples: First, certain types of scanning electron microscopes can detect the set or reset state of the memory cells of ROMS or EPROMS without reading them via the normal data access ports [Note 4]. Second, in 1998 Paul Kocher, Joshua Jaffe, and Benjamin Jun discovered Differential Power Analysis, which uses variations in the amount of power consumed by a cryptographic module when it does the same operation (e.g. a multiply) on different values to vastly reduce the amount of trials needed to guess a secret key [Note 5]. Smartcards and cryptography modules have been redesigned since then to reduce the effectiveness of this class of attack, but without that redesign it would be possible to guess the password that protects the information in a card or module without opening it and triggering the tamper-resistance self-destruct operation.
A Foundation of Trust
Not only do you need proofs for every element and every step of the design, elaboration, and execution platforms, but you also need to be assured that the process has not been tampered with in any of the transitions between stages.
Ken Thompson, in his Turing Award Lecture in 1984 [Note 6] showed how Trojan Horse code could be created that not only did not appear in the source code for the host program, but would also not appear in the source code for the compiler of the program. It is not known that Thompson’s technique has ever been exploited, but it stands as a warning that If you haven’t done every single one of the proofs listed in the previous section yourself, you can’t really be absolutely sure that nobody has inserted a Trojan Horse into one of the intermediate files and invalidated all your careful work.
“Trust no one” is unfeasible; you have to trust somebody, and you have to decide who to trust, how much to trust them, and why to trust them. The highest level of trust comes from a deep, longstanding relationship based on shared goals and experiences, but because computer systems are so complex and the industry is so dynamic, that’s also unfeasible for most of us. You often will have to trust people and organizations that you don’t know personally.
Who Must You Trust?
Most users of computer systems are unaware of the multiplicity of organizations that participate in the development and operation of those systems. Not only are there hardware, OS, application and network providers, but each of these is a huge organization that uses not only permanent employees, but individual contract and temporary workers, as well as subcontracting significant elements of their products and production processes to third party organizations. And those subcontractors often obtain major portions of their capacity from further sub-subcontractors. If you really must have a secure system, you have to verify the integrity of the “transitive closure” of all organizations involved in the system’s design, integration, and operation.
Last of all, and most important, you have to trust your users. Information security has three ultimate goals: prevention of malicious denial of service, prevention of unauthorized data modification, and prevention of unauthorized information leakage. If your organization does not have sound business practices with effective management of who is authorized to modify any particular piece of information, then all your efforts to secure the system and network are worthless.
All of these factors lead to an inescapable conclusion: it is impossible to be absolutely, incontrovertibly sure that there are no security holes in any activity that uses a modern computer. There is always some risk that the hole is there; the task of the security analyst is to estimate how big that risk is, and to make sure that the controls on the risk are appropriate to the magnitude of the value that’s being protected.
Notes
[Note 1] e.g. David Gries (1981) The Science of Programming. Springer-Verlag, New York.
[Note 2] Most OS’s are written in at least two languages. Early versions of Unix, for example, were written in C and the as assembler.
[Note 3] This view originated with Karl Popper (1959) The Logic of Scientific Discovery. Harper & Row, New York.
[Note 4] This is the reason that the U.S. government has specified requirements for making computer modules tamper-resistant, so that they will clear their memories if physically opened to provide access to the silicon chips they contain. Federal Information Processing Standards Publication 140-2 (2001) Security Requirements for Cryptographic Modules. Available online at http://csrc.nist.gov/publications/fips/fips140-2/fips1402.pdf
[Note 5] See, for example, http://cryptography.com/dpa/
[Note 6] “Reflections on Trusting Trust”, Communications of the ACM, Vol. 27, No. 8, August 1984, pp. 761-763. Available online at http://www.acm.org/classics/sep95/
Wednesday, June 06, 2007
Quality ensures that the system behaves as expected when used in intended or unintended ways with good intentions.
Security ensures that the system behaves as expected when misused with bad intentions.
This is a corollary of the well-known slogan: "it is difficult to make systems foolproof, because fools are so clever." Hackers and crackers function as probability amplifiers for vulnerabilities in two ways. Foolish users will encounter vulnerabilities simply due to random chance, but hackers search for vulnerabilities systematically. Benign users will attempt to avoid revisiting vulnerabilities, but malicious hackers and crackers will revisit vulnerabilities again and again until they are drained of all value to them.
Thursday, January 25, 2007
You can fool some of the people all of the time. You can fool all of the people some of the time. But you can't fool all of the people all of the time.
Rove's corollary to Lincoln's Law
If you can fool 51% of the people all of the time, in a democracy you can rule forever.
Political pundits who who don't understand how President Bush can act as if he has a "mandate" when his approval ratings are so low, don't understand this.
Saturday, December 30, 2006
Iris scans for everyone
With all the paranoia about RFID, we can't forget that there are other remote-identity techniques out there. For example, the Sheriff of Galveston County, Texas has announced a campaign to get a computer-readable signature of the iris pattern of every child and old person into a national database. He's one of more than 1800 sheriffs in 47 states who's on board with this. Who needs implantable verichips or bar-code tattoos when your eyes identify you? One more step towards the scenario in the film Minority Report.
Unlike RFIDs which radiate omnidirectionally, remote iris scanners don't work if you're not facing them, and they can of course be defeated by sunglasses or contact lenses with fake irises. "The future's so bright, gotta wear shades."
Friday, December 08, 2006
AIDS stands for Acquired Immune Deficiency Syndrome. Computer AIDS is when a computer has some part of its "immune system" defenses agains malware disabled by other malicious software. The first case of computer AIDS that I heard of was not malicious except to conspiracy theorists -- it involved a pre-release, beta version of Microsoft AntiSpyware that removed Symantec AntiVirus. Technically, it's an easy error to make in the signature base that searches for spyware, so I'm not in with the conspiracy fans. The problem was fixed in the production release.
There have been others since then that I'll catalog later. Today's case appeared in SANS NewBites vol.8 no.97. It says
--Complaint Alleges Site Downloads Malware Surreptitiously
(7 & 6 December 2006)
The Center for Democracy and Technology (CDT) and StopBadware.org plan to file a complaint with the Federal Trade Commission (FTC) alleging that FastMP3Search.com.ar installs malware on people's computers when they believe they are installing a plug-in to download MP3 files. The complaint alleges the download disables the Windows Firewall, changes homepage settings and otherwise affects users' computers. The downloads are made without users' consent and are difficult to remove.
http://www.scmagazine.com/uk/news/article/608841/anti-spyware-groups-target-sham-music-website/
http://news.com.com/2102-7348_3-6141621.html?tag=st.util.print
1.Our so-called "theories of risk" are nonsense. We don't know how to attach credible numbers to threats, exposures, losses, or assets (unless those loss and asset values are money in current accounts). Do the basic physicist's step of "dimensional analysis" and your units don't match.
2.Our data are worthless. Tons of worthless data is still worthless. Security "analyst" companies that purport to compile attack data like number of spam messages per day keep their coverage and methods secret so that they can't be validated or falsified. US-CERT notwithstanding, overnment agencies corresponding to the Centers for Disease Control don't exist, and don't have the legal basis that the CDC does for collecting decent data.
3.Many "risks" are intrinsically unmanageable. Nasim Taleb writes about black swans, but computer systems are even worse. There are fundamental theorems in computer science that say that for any computer system powerful enough to be useful, it's impossible to prove that it is free of catastrophic defects. The hacker's job is to find those defects and exploit them.
4.Our systems are too complex for us to understand. The vulnerabilities that we know about number in tens and hundreds of thousands, and we don't have any tools that tell us how to assess their impact on enterprise-class systems comprising dozens of servers (not to mention "cloud computing" platforms of tens of thousands of servers), even if our theories made sense.
Computer security much more like military defense or public health than it is like managing an electric power grid. And even the grid has blackouts.