Gorbachev on the end of the Cold War

Following up on his exceptional books The Making of the Atomic Bomb and Dark Sun, historian Richard RhodesThe Twilight of the Bombs provides fascinating details on all matters nuclear-weapon-related during the fall of the Soviet Union and years afterward. For instance, there are many details on the clandestine Iraqi nuclear weapons program in operation after the first Gulf War, along with frightening details on the August coup against Mikhail Gorbachev and the protection of American tactical nuclear weapons in Europe during the later years of the Cold War.

One interesting passage Rhodes quotes comes from Gorbachev’s speech from Christmas Day, 1991 formally dissolving the Soviet Union:

“We had plenty of everything: land, oil, gas and other natural resources, and God had also endowed us with intellect and talent – yet we lived much worse than people in other industrialized countries and the gap was constantly widening. The reason was apparent even then – our society was stifled in the grip of a bureaucratic command system. Doomed to serve ideology and bear the heavy burden of the arms race, it was strained to the utmost… The country was losing hope. We could not go on living like this. We had to change everything radically.”

Rhodes, Richard. The Twilight of the Bombs: Recent Challenges, New Dangers, and the Prospects for a World Without Nuclear Weapons. p.116 (hardcover)

In another fascinating passage, Rhodes discusses the control systems in place for the Soviet nuclear arsenal during the August coup. With the particular combination of conspirators involved, it was not possible for them to make unauthorized use of the Soviet strategic nuclear arsenal. A different group of conspirators with different tactics and objectives, however, might have been able to circumvent the Soviet nuclear controls and use weapons without Gorbachev’s approval:

“‘There is an important lesson here,’ [Bruce] Blair concluded. ‘No system of safeguards can reliably guard against misbehaviour at the very apex of government, in any government. There is no adequate answer to the question, “Who guards the guards?”‘”

Ibid. p.95

Dealing with some MediaWiki malware

I am not sure how it happened, but somebody (or some robot) managed to insert some malicious code into my wiki. Random people were receiving emails with links to URLs within the wiki and when they followed the links, they were redirected to malicious pages.

The URLs within the wiki resembled these:

  • sindark.com/wiki/images/thumb/c/c4/Labelled_overview.png/kmdlss.html?dhe=fh.dhplh&zazssr=fe.dh&ahf=jgtf
  • sindark.com/wiki/images/thumb/c/c4/Labelled_overview.png/kmdlss.html?er=edo.dhega&rdpy=fm.eza&zso=fbcb
  • sindark.com/wiki/images/thumb/c/c4/Labelled_overview.png/kmdlss.html?vbh=egr.mdjgp&fvsa=fm.dhr&rdvh=ufrv

I removed the whole Labelled_overview.png folder, which it shouldn’t have been possible for a wiki user to upload, given that I had my wiki set up to only allow logged-in users to make edits. In addition to removing the folder, I have also updated MediaWiki to the newest version. I have also set up DreamHost’s system for automatically updating MediaWiki when new versions are released, though that risks breaking extensions that are not compatible with the new software and possibly causing other problems.

I still don’t know how the malware got introduced (perhaps through a vulnerability in an old version of MediaWiki or one of my extensions), so I am keeping the whole wiki inaccessible for now.

My apologies to anyone who followed one of the malicious links.

The whole incident shows one of the annoying things about the internet. Whenever you set up a content management system like WordPress or MediaWiki, you have to be aware that there will be efforts to compromise it. As such, you need to keep it well-updated and keep an eye out for malicious activity. You can’t just set it up and forget about it.

Replacement Etymotic mc3 earbuds

I’ve written before about the durability of Etymotic headphones.

On 5 August 2011, before leaving on my trip to New Orleans and Washington D.C., I bought a pair of Etymotic mc3 earbuds, with a built-in microphone for use with my iPhone.

A few weeks ago, they failed in the ordinary way. At the connection points between the wire and the audio-in jack, the constant bending of the cable led to structural failure. The sound became distorted and intermittent. With other pairs, I have had the same thing happen at the junction point between one of the wires and one of the individual earbuds.

I sent them back to Etymotic with a copy of my Amazon receipt and a short note explaining the problem and today I received a brand new pair of mc3s in the mail. I think every pair of headphones I have ever purchased from Etymotic has been replaced free of charge (starting back in Oxford in 2005 or ’06).

My expectation when I buy Etymotic earbuds is that they will last for one year of heavy daily use. Then I will get them replaced once under warranty. Then, after about a year, the replacement earbuds will fail and I will buy a new pair.

I don’t know if their more expensive models are more durable. I may try a pair next time, to see whether the sound is better and whether the construction better withstands the abuses of life.

None of this should be taken as evidence that I am unsatisfied with Etymotic products. They are pretty great. The sound is good and they block off outside noise very effectively. It’s pretty amazing to have a product that fits in such a tiny space and which can turn anywhere into quite a good listening environment.

[Update: 19 December 2014] My latest pair of Etymotic earbuds failed today – one of the wires inside seems to have broken right near where it connects to my music player. Now, there is only sound in one ear. I will naturally need to replace them, and will probably go with another pair of Etys.

Free speech online

The internet is one of the places where people in free societies get to exercise their right to free speech. It’s also a place where a lot of private communication takes place, and where the protection of the right to privacy is a constant struggle.

For those reasons, I suggest people consider joining groups that work to protect our rights as citizens online, like the Electronic Frontier Foundation.

Also, remember that the only way to preserve rights is to use them. Make use of your right to engage in political speech online (maybe a little anonymity too).

Third rule of the internet

Following up on rules one and two, it seems appropriate to add a third: “You should probably worry more about being attacked online by your own government than by any other organization”.

This is really an extension of the point about how governments are more dangerous than terrorists and how institutions of armed power need oversight.

Based on the open source intelligence available, we have to assume that governments all over the world are constantly monitoring the activity of their citizens online, for reasons both reasonably benign and exceedingly nefarious. It is worth remembering that even if the official purpose of a surveillance program is acceptable, it can be abused by anyone who gains access to it for purposes that may be very dubious. Hackers and rogue government agents are well positioned to use internet surveillance to rob or blackmail people, for instance. It is also worth remembering that data is not only being monitored in real time; it is also being archived for unknown future purposes.

Tools for privacy

Thankfully, we do have some tools to make this ubiquitous surveillance more difficult to carry out. You probably cannot encrypt your hard drive well enough to protect the contents if government agents grab it, but you can encrypt your online communications sufficiently well to make it at least challenging to decrypt them. The more people streaming gigabytes of data via encrypted HTTPS connections, the less feasible it is to archive and crack internet traffic taken all in all.

You can also use tools like Tor. People should be willing to assert their right to anonymous communication.

Portlands Energy Centre

As part of Doors Open Toronto 2012, my friend Mike and I took a tour of the Portlands Energy Centre: a natural-gas-fired peaker power plant located slightly south and east of downtown Toronto.

This is a combined cycle plant with two gas turbines and a steam turbine. Together, they are about 60% efficient at turning the chemical energy in natural gas into electricity. The plant is a peaker, which means it can be started at reasonably short notice to add power to the grid when demand exceeds supply (summer air conditioning creates Toronto’s highest demand peaks).

The plant puts out 550 megawatts of electricity. The peak temperature inside the gas turbines is about 600˚C, and the output from the steam turbine is at about 80˚C (for all those Carnot efficiency fans out there). Neat fact: steam turbines work on the same principle as hurricanes.

I took about 200 photos inside, and I will be posting the best of them to Flickr once I have processed them.

[Update: 10:21pm] The first few shots are on Flickr: Portlands Energy Centre – Doors Open Toronto.

[Update: 2:25am] Done with all the RAW files. Post-processing takes a lot of time!

Idea for an access control device

There are many circumstances in which both authorized and unauthorized people wish to gain access to the same physical space. It might be a secure storage area in a shop where valuable things are kept, a secure part of a military facility storing cryptographic materials, a person’s bedroom, a bank vault, or even a child’s secret hiding place.

In all of these cases, it would be valuable for authorized users to know if someone else has been entering the controlled space.

In spaces that do not contain moving objects aside from people, it seems to me that there is a pretty simple way to provide a bit more security. All you need is a device that watches for motion and which publicly displays recent spans of time when it has been detected. It is essential that this time display be able to resist tampering by unauthorized individuals. The number of spans that should be shown depends on the level of security desired and the frequency with which the space is used.

Such a device could be useful for militaries worried about spies, businesses worried about thieving employees, and ordinary people worried about over-curious friends and relations.

Design of the device

The key components of the device are a motion sensor, a tamper-resistant display, and tamper-resistant software and hardware to run the physical devices:

Particularly for spaces that have fairly normal patterns of use, abnormal activity would be immediately obvious from the display board. For instance, the secure file storage facility of a company might ordinarily be used during business hours. The appearance of recorded activity during the middle of the night or during a weekend would attract suspicion.

This device would make a natural compliment to a motion-activated video surveillance system. Where such systems exist, people normally only watch the tapes when they have a reason to be suspicious. The tamper-resistant time display would give authorized users a reason to be wary, if unexplained access times popped up. They could then refer to the video footage for investigation. The two systems could be integrated closely. For instance, beside each of the access times displayed could be a button that causes a fast-motion version of a recorded video to be played. It would then be possible to determine at a glance what sort of activity was happening at a particular place and time. This would be especially useful for identifying false positives. After all, that mysterious movement during the middle of the night might just be the moving glare of headlights from passing cars, fluttering curtains, or something similarly benign.

Obviously, a motion-activated video system alone would be sufficient to let people identify instances of unauthorized access and sort out what happened during them. What the time display system provides is at-a-glance simplicity and ease of use. It reduces the amount of time spent worrying about false positives, and it makes it immediately clear to everyone that access to a particular space is logged. That knowledge alone could be sufficient to deter snooping and other nefarious activities.

I think it would be pretty easy to build something like this. All you need is an off-the-shelf motion sensor that you can connect to a microcontroller, a microcontroller like an Arduino, a display system (possibly a set of seven-segment displays) driven by the same board, and a source of power. A very simple system might be able to run from a solar cell and backup battery. Optional extras include physical barriers to tampering like a locked metal and plexiglass casing, tamper-evident components like seals, and systems for external logging of access times (they could be automatically emailed to a particular address, saved in a database, posted to a website, etc). As a further means of resisting tampering, the device could make use of public key cryptography to include a digital signature and time stamp for each entry in the access log.

Concept for a secret communication system

What you need

In order to use this system you will need two computers (which could include phones or other devices) with the same chess-playing software installed on them. The software must always suggest at least two moves for any given board position, and it must always produce the same suggestions based on a particular board arrangement.

For instance, in a game that opens with white moving the king’s pawn two spaces forward (e4 in algebraic notation), the software must always recommend the same set of countermoves. It might recommend the Sicilian Defence (c5) as the highest ranking move, followed by an open game as the top alternative (e5). By choosing c5, the correspondent would indicate a ‘0’ and by choosing e5 they would indicate a ‘1’. It is essential that both players have software that suggests the same moves based on a given board position. It is this determined character that allows the communication system to work.

Sending a message

In order to send a message, it must first be converted into binary code. A simple way of doing this is to start with ASCII text and use an ASCII to binary converter. For example, we might wish to send the message “Your telephone has been tapped”. Converted into binary, this encodes as:

“010110010110111101110101011100100010000001110100011001010110110001100101011100000110100001101111011011100110010100100000011010000110000101110011001000000110001001100101011001010110111000100000011101000110000101110000011100000110010101100100”.

In order to send the message, it is simply necessary to look at the two top moves suggested by the chess-playing software. In the event that you want to transmit a ‘0’ then you should select the topmost move. In the event that you wish to transmit a ‘1’ use the second topmost move. Because the person who you are talking to will also be running the software, it will be immediately obvious to them which digit you intend to transmit. Because both of the top moves are likely to be reasonable chess moves, the game will look fairly ordinary to anyone intercepting the communication.

One option is to have each correspondent make moves in alternating fashion. In that way, each can send a message to the other simultaneously. Alternatively, one person can send a message while the other simply provides countermoves to maintain the impression of a game being played. Alternatively, a single player can transmit moves for both white and black. They could use each to encode a different message, or they could use both together for a single stream.

In order to send a long message, it would take quite a few chess games. There would also need to be a system in place for when there is only one legal move possible, or none at all. I suggest that whenever a situation arises where fewer than two legal moves exist, the ongoing game be abandoned by the resignation of one player and a new one be started.

Automation

The whole thing could be set up to run automatically – for instance, on cellular phones. You could put the text to be transmitted into an app and it could automatically query a database of chess moves. It could then transmit the appropriate move to a chess server which the other correspondent would be connected to. The rate of transmission could be automatically limited in order to maintain the illusion of a game of chess being played, or it could be allowed to run at a high speed in order to send messages quickly. In either case, the data being transmitted would consist of valid chess moves and the game being played would look fairly normal.

Super-encipherment

Naturally, it would also be possible to use an encryption algorithm to turn a plaintext message into a binary string. This could either be a symmetric key cipher with a key that the correspondents have agreed to beforehand, a public key system based on public and secret keys, or an online key exchange system like Diffie–Hellman. This would provide some protection against an attacker who realizes the chess games are being used to transmit a message.

Alternative mechanism

As an alternative to chess-playing software, each player could also look at one of the chess game analyzing websites that ranks moves by popularity. The most popular move could code for a ‘0’ while the second most popular move could code for a ‘1’. Over time, the popularity of moves in the database may change. This shouldn’t be a problem for communication happening in real time, and could be useful insofar as it would make it difficult for anyone trying to decipher the message later to do so.

Obviously, this system could be used for games other than chess. All that is necessary is that both players have access to the same ranking of moves, so that each move can be translated reliably into the appropriate binary digit and from there into plain text. In games where a fairly large number of moves are always possible, the system could be extended beyond binary and longer messages could be concealed in fewer games. For instance, if there were always ten possible ranked moves, each option could be used to convey a decimal digit between ‘0’ and ‘9’.

Instapaper and the Kindle

Instapaper and the Kindle make a good combination.

You can set up Instapaper to assemble a digest periodically from stories that you have identified as interesting. It will email that digest to Amazon’s free conversion service, Amazon will convert the file into a Kindle-friendly format, and the file will download via WiFi when it is ready.

I have it set to produce a daily digest, but the appropriate setting probably varies depending on how often you have time to read interesting but non-essential material.

One Instapaper tip: Always use the ‘Instapaper Text’ browser button before the ‘Read Later’ browser button. When I click the ‘Read Later’ button directly on websites, Firefox often crashes completely. When I click ‘Instapaper Text’ first, then ‘Read Later’, it almost never crashes.

The Unfolding of Language

The key argument in Guy Deutscher’s The Unfolding of Language: An Evolutionary Tour of Mankind’s Greatest Invention grows out of the subtitle. Deutscher argues convincingly that languages branch and mutate much like species, though the process is different in that it occurs within and between the minds of human beings. People working to express themselves both concisely and forcefully continuously change their languages, building up complex grammatical structures and other linguistic elements while also shortening and simplifying and forgetting. As with biological evolution, the process of change leaves traces:

For whenever one finds impressive edifices in language, one is also likely to find scores of imperfections, a tangle of irregularities, redundancies, and idiosyncracies that mar the picture of a perfect design. (p.40 paperback)

All the complexities of this process exceed the scope of what any linguist or group of linguists can ever really track, since we are all involved in the re-invention of language whenever we communicate. Still, Deutscher is able to draw on examples from many languages to demonstrate and defend his argument, all while openly acknowledging the limits of our knowledge and the questions that can only be answered partially and by conjecture.

There are no doubt readers who will revel in every example in Deutscher’s 274 pages plus appendices, but I personally found myself well convinced of his basic thesis by the time I was halfway through. The key to understanding it comes in the second chapter, in which Deutscher draws attention to how we are all exposed to a whole spectrum of usage of any particular language during the ordinary course of life. We deal with upper class speakers who are pernickety about rules of grammar and with rebellious teenagers who develop their own cryptic argots and transfer patterns of abbreviation from text messages and Twitter into their love letters and academic papers. With so much variation at a single point in time, it is no surprise that language as a whole can drift across time, without ever creating solid breaks where people stop being able to understand one another. A word like ‘willy-nilly’ can go from meaning ‘whether you like it or not’ to ‘done in a haphazard way’ without anyone imposing that change on the language, and without the word becoming incomprehensible to anyone.

Speaking of this linguistic evolution generally, Deutscher says:

[T]his invention is not the design of any one architect, nor does it follow the dictates of any master plan. It is the result of thousands of small-scale spontaneous analogical innovations, introduced by order-craving minds across the ages. So while language may never have been invented, it was nonetheless shaped by the attempts of generations of speakers to make sense of the mass of details they have to absorb. (208)

Deutscher goes on to explain:

The elaborate conventions of language needed no gifted inventor to conceive them, no prehistoric assembly of elders to decree their shape, nor even an overseer to guide their construction. Of course, saying that language changes ‘of its own accord’ does not mean that it evolved independently of people’s actions. Behind the forces of change there are always people – the speakers of a language.

For my part, I am trying to change the general convention on punctuation and quotation marks. It would also be nice if English dealt with possession and contraction in a less confusing way.

Deutscher’s account of metaphors in language is also convincing and worthy of attention. He shows how we reach out to metaphors in an effort to make our points clearly and forcefully. (So many metaphors, when you start looking! Reaching out! Points! Clarity! Forcefulness! All concrete concepts being used to express abstract ideas.) The book is also scattered throughout with charming little facts about the history of words and how they have changed across time, including extremely common words with non-obvious origins. Deutscher also makes good use of humour in pointing out some of the stranger aspects of language. For example, Deutscher quotes Mark Twain’s priceless poem mocking German along with doggerel making fun of the inconsistencies in English spelling.

Deutscher’s book was recommended to me by Stephen Fry- not directly, but in his comforting and inspiring ‘podgram’ on language. I made extensive use of that podgram in shaking off the absurdly parochial and self-righteous perspective on English maintained by the creators of the Graduate Record Examination. Deutscher’s book is a similarly effective response to anyone who assumes that their language – as they happen to speak it – is correct and eternal and that all variations are representative of the failures in the education of other people. Language is something we all do together – one of the most important inheritances of humanity. Both Fry and Deutscher are right to wish that language were taught and understood more as a participatory process than as a set of rules to be followed.