# grack.com

## Code

Here is a comprehensive list of argument fallacies.

I haven’t studied this stuff since I accidentally took an argumentative logic class instead of a boolean logic class back in university and I don’t think people will ever learn what begging the question really means.

On a somewhat related note, I serendipitously came across an interesting new word while browsing some of the other pages on infidels.org: solipsism. After a bit of Googling, I came across this gem of a joke attached to a random slashdot post:

A professor is teaching a philosophy course, and he explains to his class solopism, the theory that reality is a creation in ones mind. After the lecture, several students rush up and introduce themselves to the professor and explain that the theory was really in-tune with how they felt and it’s really opened their minds and they just wanted to tell him in person how the felt about his lecture … to this the professor replies “Thats wonderful, so rarely does one solipsist meet another.”

While I find it interesting that somebody has coined a word for the concept, I find this quote from the Wikipedia entry to be somewhat relevant:

Some philosophers hold the viewpoint that solipsism is entirely empty and without content. Like a ‘faith’ argument, it seems sterile, i.e., allows no further argument, nor can it be falsified. The world remains absolutely the same—- so where could a solipsist go from there?

It has about as much potential as the thought experiment that involves imagining what would be if the universe didn’t exist. I find that the latter usually ends up with a popping sensation in my brain and my eyes watering.

</ streamofconsciousness>

For my own information, here’s a quick Javascript monitor size calculator. Enter the diagonal size in inches and the program will tell you what the 4:3 and 16:9 dimensions will be:

</table>
 Diagonal Size: 4:3 Size: 16:9 Size:

An interesting read, found via a recent Scientology article on kuro5hin:

Sex, Drugs, and Cults. An evolutionary psychology perspective on why and how cult memes get a drug-like hold on people, and what might be done to mitigate the effects

Perhaps there might be an opportunity to “vaccinate” against those with more vulnerable dopamine systems with modern technology. It’s interesting to read about the human ability to absorb and transmit memes. It makes sense from an evolutionary perspective: as our genes encode less genetic behaviour, we need to make up for it in some way. Memes end up being a second set of genetic coding – though one that isn’t permanent .

Here’s a bit from the abstract:

In the aggregate, memes constitute human culture. Most are useful. But a whole class of memes (cults, ideologies, etc.) have no obvious replication drivers. Why are some humans highly susceptible to such memes?

Note that the term meme was coined by Richard Dawkins in his book The Selfish Gene.

After reading up on Prof. Felton’s description of the major HDCP weakness and reading the paper he referenced, I cooked up a small proof-of-concept conspiracy attack for HDCP in Java.

It turns out that you can trivially solve for a private system key by solving for the simple case of public keys that look like this (for a four-length array system):

[1 0 0 0]
[0 1 0 0]
[0 0 1 0]
[0 0 0 1]

This yields a symmetric matrix that can be used to generate any private key given any public key in milliseconds. The code implements this in HdcpKeyGenerator.

So, all you need to do to start generating your own codes is:

HdcpSystem system = new HdcpSystem(4); // key size
Conspiracy conspiracy = new Conspiracy( system, /* the keys */ );
HdcpKeyGenerator gen = conspiracy.solveForKeyGenerator();

gen.createDevice(new PublicKey(system, /* public key */));

Here’s a solvable system you can use to trace through things by hand:

Secret Key         Public Key
[ 26, 19, 12, 7 ]  [ 1 2 ]
[ 13, 13, 22, 5 ]  [ 2 4 ]
[ 22, 16, 5, 19 ]  [ 1 3 ]
[ 12, 19, 9, 16 ]  [ 2 3 ]

The symmetric “solution” matrix for the key generator is:

Secret Key
[ 18, 8, 4, 5 ]
[ 8, 11, 8, 2 ]
[ 4, 8, 1, 14 ]
[ 5, 2, 14, 3 ]

To solve for any key, just add up the number in the columns that correspond to the public key. The first row is the first number, second row is the second number, etc. For the public key [ 1 2 ], we get [ 18+8, 8+11, 4+8, 5+2 ] == [ 26, 19, 12, 7 ], the same result as the input we used to generate this matrix (as you would expect).

The documentation is in the unit tests themselves. I recommend unzipping this project and opening it with Eclipse to check out and run the unit tests.