raganwald
(This is a snapshot of my old weblog. New posts and selected republished essays can be found at raganwald.com.)

Monday, April 30, 2007
  If you reside in the USA, please don't read this post


Update: The 128-bit Programming Challenge!

You probably don’t want to be caught with the following hexadecimal codes in your possession: by downloading this post in your browser you have already participated in their transmission!

If you are in the USA, please stop reading immediately.

Jump to another web page. Clear your cache. Do not read further.

09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0

While you’re protecting yourself against these codes, you should also be careful to remove any code from your system that generates irrational numbers. Such numbers must contain these codes in their expansion.

It is reasonable, therefore, to assume that a program for generating an irrational number such as π is a program for generating these codes, and therefore it is not safe to have this type of program on your computer.

Update: while you’re at it, you should probably be wary of programs that search for large primes. You never know when a prime number will be declared illegal!

This warning provided as a public service by your Canadian friend.
 

Comments on “If you reside in the USA, please don't read this post:
You mean normal numbers, not irrational numbers.
 
It is not necessary for a number to be normal to have the property that the given hexadecimal digits appear somewhere in its expansion.

The Wikipedia entry on normal numbers suggests that irrational numbers like e and pi are thought to be normal, but no proof has been found to date.

So... I'll stick with irrational.
 
Well, in a suitable sense almost all irrational numbers are normal, but it is easy to generate specific examples that are not, such as Liouville's constant, which was the first number proved to be transcendental. A base-16 version of the construction would yield a transcendental (hence, irrational) number that cannot contain any dangerous hexadecimal codes. I encourage readers in the USA to write it down while it is still legal.
 
Any sufficiently advanced Lisp programmer can tell you that there is a big difference between the structure of a set of characters and the meaning of it. The code: "09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0" is nearly devoid of meaning until someone tells you (or you realize) that it is a key to something important.

Considering that these two factors (the code and the knowledge of what it represents) are dual requirements of exploiting that key, and that the code is assumed to appear as a natural mathematical property while the knowledge of its purpose is not, it only keeps with the DMCA to ban the knowledge, not the code.

Therefore, as a Lisp programmer, the widespread distribution of this piece of data means that the only workable solution to this key leaking is to force everyone to forget indefinitely what the key is actually for.
 
The Wordpress.com blog you linked to is already gone with the wind, probably felled by the DMCA beast as well.

But not to worry, Google knows plenty more about this hex string.
 
Any sufficiently advanced Lisp programmer can tell you that there is a big difference between the structure of a set of characters and the meaning of it.

Yes, the key is not useful without knowing where to find the lock. I am trying to be careful not to provide that context.

I don’t actually have an agenda, it is just amusing to think about the idea that a naturally occurring phenomenon would be contraband.
 
I don’t actually have an agenda, it is just amusing to think about the idea that a naturally occurring phenomenon would be contraband.

Oh yes, of course it is. Unfortunately our Congress usually displays the technical acumen of a bowl of peas[1] so we end up with trash like this that anyone whose spent at least two days seriously studying computer security knows is patently impossible. ("You want to give them the key and the lock, but somehow stop them from opening it unless you say so?")

Oh well, I still have faith in the system, so all there is to it is to let my Congressmen and any companies I buy products from (I'm looking at you, Microsoft) know that this kind of crap doesn't fly with at least some of us. Hopefully we can get together enough to actually count for something.

[1] My apologies to any peas that were offended by this post.
 
No, "irrational" is wrong. You said:

"...irrational numbers. Such numbers must contain these codes in their expansion."

This is simply not true. There are infinitely many irrational numbers which do not contain these codes in their expansion. But *all* normal numbers do so.
 




<< Home
Reg Braithwaite


Recent Writing
Homoiconic Technical Writing / raganwald.posterous.com

Books
What I‘ve Learned From Failure / Kestrels, Quirky Birds, and Hopeless Egocentricity

Share
rewrite_rails / andand / unfold.rb / string_to_proc.rb / dsl_and_let.rb / comprehension.rb / lazy_lists.rb

Beauty
IS-STRICTLY-EQUIVALENT-TO-A / Spaghetti-Western Coding / Golf is a good program spoiled / Programming conventions as signals / Not all functions should be object methods

The Not So Big Software Design / Writing programs for people to read / Why Why Functional Programming Matters Matters / But Y would I want to do a thing like this?

Work
The single most important thing you must do to improve your programming career / The Naïve Approach to Hiring People / No Disrespect / Take control of your interview / Three tips for getting a job through a recruiter / My favourite interview question

Management
Exception Handling in Software Development / What if powerful languages and idioms only work for small teams? / Bricks / Which theory fits the evidence? / Still failing, still learning / What I’ve learned from failure

Notation
The unary ampersand in Ruby / (1..100).inject(&:+) / The challenge of teaching yourself a programming language / The significance of the meta-circular interpreter / Block-Structured Javascript / Haskell, Ruby and Infinity / Closures and Higher-Order Functions

Opinion
Why Apple is more expensive than Amazon / Why we are the biggest obstacles to our own growth / Is software the documentation of business process mistakes? / We have lost control of the apparatus / What I’ve Learned From Sales I, II, III

Whimsey
The Narcissism of Small Code Differences / Billy Martin’s Technique for Managing his Manager / Three stories about The Tao / Programming Language Stories / Why You Need a Degree to Work For BigCo

History
06/04 / 07/04 / 08/04 / 09/04 / 10/04 / 11/04 / 12/04 / 01/05 / 02/05 / 03/05 / 04/05 / 06/05 / 07/05 / 08/05 / 09/05 / 10/05 / 11/05 / 01/06 / 02/06 / 03/06 / 04/06 / 05/06 / 06/06 / 07/06 / 08/06 / 09/06 / 10/06 / 11/06 / 12/06 / 01/07 / 02/07 / 03/07 / 04/07 / 05/07 / 06/07 / 07/07 / 08/07 / 09/07 / 10/07 / 11/07 / 12/07 / 01/08 / 02/08 / 03/08 / 04/08 / 05/08 / 06/08 / 07/08 /