GCHQ: Can you crack it?

Just had a quick go at this, but can’t afford any more time on it, so thought I’d share my progress (if any!)


The code starts as..

eb 04 af c2 bf a3 81 ec 00 01 00 00 31 c9 88 0c
0c fe c1 75 f9 31 c0 ba ef be ad de 02 04 0c 00
d0 c1 ca 08 8a 1c 0c 8a 3c 04 88 1c 04 88 3c 0c
fe c1 75 e8 e9 5c 00 00 00 89 e3 81 c3 04 00 00
00 5c 58 3d 41 41 41 41 75 43 58 3d 42 42 42 42
75 3b 51 89 d1 89 e6 89 df 29 cf f3 a4 89 de 89
d1 89 df 29 cf 31 c0 31 db 31 d2 fe c0 02 1c 06
8a 14 06 8a 34 1e 88 34 06 88 14 1e 00 f2 30 f6
8a 1c 16 8a 17 30 da 88 17 47 49 75 de 31 db 89
d8 fe c0 cd 80 90 90 e8 9d ff ff ff 41 41 41 41

This looks very much like hexadecimal to me… so converting it to decimal yields…

235 04 175 194 191 163 129 236 00 01 00 00 49 201 136 12
12 254 193 117 249 49 192 186 239 190 173 222 02 04 12 00
208 193 202 08 138 28 12 138 60 04 136 28 04 136 60 12
254 193 117 232 233 92 00 00 00 137 227 129 195 04 00 00
00 92 88 61 65 65 65 65 117 67 88 61 66 66 66 66
117 59 81 137 209 137 230 137 223 41 207 243 164 137 222 137
209 137 223 41 207 49 192 49 219 49 210 254 192 02 28 06
138 20 06 138 52 30 136 52 06 136 20 30 00 242 48 246
138 28 22 138 23 48 218 136 23 71 73 117 222 49 219 137
216 254 192 205 128 144 144 232 157 255 255 255 65 65 65



I then tried some character encodings… first as alt codes.. 

ë ¯ Â ¿ £ ü ì    etc…

unicode was much the same, and ascii didn’t really work.


Next, I tried bringing the original decimal to modulo 26, (i.e. 27 becomes 1, 28 becomes 2 etc.)


1 4 19 12 9 7 25 2 0 1 0 0 23 19 6 12
12 20 11 13 15 23 10 4 5 8 17 14 2 4 12 0
0 11 20 8 8 2 12 8 8 4 6 2 4 6 8 12
20 11 13 24 25 14 0 0 0 7 19 25 13 4 0 0
0 14 10 9 13 13 13 13 13 15 10 9 14 14 14 14
13 7 3 7 1 7 22 7 15 15 25 9 8 7 14 7
1 7 15 15 25 23 10 23 11 23 2 20 10 2 2 6
8 20 6 8 0 4 6 0 6 6 20 4 0 8 22 12
8 2 22 8 23 22 10 6 23 19 21 13 14 23 11 7
8 20 10 23 24 14 14 24 1 21 21 21 13 13 13 13

 and then reference 0 to a, 1 to b, 2 to c… yielding

b e t m j h z c a b a a x t g m
m u l n p x k e f I r o c e m a
a l u I I c m I I e g c e g I m
u l n y z o a a a h t z n e a a
a o k j n n n n n p k j o o o o
n h d h b h w h p p z j I h o h
b h p p z x k x l x c u k c c g
I u g I a e g a g g u e a I w m
I c w I x w k g x t v n o x l h
I u k x y o o y b v v v n n n n

then [with the help of this site] tried various operations on the rows and columns of letters, mostly the rotating of the letters from their position through the alphabet (the function called ROT.all) in case they’d displaced the letter/number combo by some arbitrary number, none of them looked legible.

This is where I decided not to waste more time on it!

I also tried viewing the page source, but no tips there.

Hope this helps someone… 

Reasons to Rally Against Debt

Debt in this country is insane. Just looking at these graphs highlights how much debt we’re really in already, and how bad it’s going to be. The longer we have it, the more interest we will have to pay. Is it really worth it?

There are plenty of people marching for an ‘alternative’, none of whom seem to have expressed exactly what this alternative is. Labours spending plans are largely exactly the same as the Tories. In an interview on the Today programme Milliband confessed that Labour wouldn’t have actually done anything different as yet in terms of spending. It’s all a bit of a farce. My opinion is keep taxes where they are for now, and put more spending into paying off the debt, so hopefully in future our interest repayments aren’t £25m more per day than the total cost of education.

People go on about how savage the governments cuts are, and how everything is really affected, and go on these big protests shouting things to this effect. The reality is, they haven’t made any cuts at all, the spending has only increased (perhaps not quite in real terms, I haven’t worked it out), and will continue to do so at least for the rest of this term. Some things have been shifted around the departments in government, but this is normal, and always happens.

I looked up income figures for the government because some of my unemployed friends were complaining about their tax payers money not being used, and corporations not paying their fair share. Turns out, corporation tax income is 5x greater than the income tax from the lower earning 50% of Britain. The top 1% of earners pay 25% of the tax. This led me to a parable that is definitely worth sharing. I have also read the criticisms about this parable, and I didn’t find any of them very compelling, but will discuss them briefly after the parable.


Suppose that every day, ten men go out for beer and the bill for all ten comes to $100. If they paid their bill the way we pay our taxes, it would go something like this:

The first four men (the poorest) would pay nothing.
The fifth would pay $1.
The sixth would pay $3.
The seventh would pay $7.
The eighth would pay $12.
The ninth would pay $18.
The tenth man (the richest) would pay $59.
So, that’s what they decided to do.

The ten men drank in the bar every day and seemed quite happy with the arrangement, until one day, the owner threw them a curve. “Since you are all such good customers,” he said, “I’m going to reduce the cost of your daily beer by $20.” Drinks for the ten now cost just $80.

The group still wanted to pay their bill the way we pay our taxes so the first four men were unaffected. They would still drink for free. But what about the other six men – the paying customers? How could they divide the $20 windfall so that everyone would get his ‘fair share?’ They realized that $20 divided by six is $3.33. But if they subtracted that from everybody’s share, then the fifth man and the sixth man would each end up being paid to drink his beer. So, the bar owner suggested that it would be fair to reduce each man’s bill by roughly the same amount, and he proceeded to work out the amounts each should pay. And so:

The fifth man, like the first four, now paid nothing (100% savings).
The sixth now paid $2 instead of $3 (33%savings).The seventh now pay $5 instead of $7 (28%savings).
The eighth now paid $9 instead of $12 (25% savings).
The ninth now paid $14 instead of $18 (22% savings).
The tenth now paid $49 instead of $59 (16% savings).

Each of the six was better off than before. And the first four continued to drink for free. But once outside the restaurant, the men began to compare their savings.

“I only got a dollar out of the $20,” declared the sixth man. He pointed to the tenth man,” but he got $10!”

“Yeah, that’s right,” exclaimed the fifth man. “I only saved a dollar, too. It’s unfair that he got ten times more than I!”

“That’s true!” shouted the seventh man. “Why should he get $10 back when I got only two? The wealthy get all the breaks!”

“Wait a minute,” yelled the first four men in unison. “We didn’t get anything at all. The system exploits the poor!”

The nine men surrounded the tenth and beat him up.

The next night the tenth man didn’t show up for drinks, so the nine sat down and had beers without him. But when it came time to pay the bill, they discovered something important. They didn’t have enough money between all of them for even half of the bill!

And that, boys and girls, journalists and college professors, is how our tax system works. The people who pay the highest taxes get the most benefit from a tax reduction. Tax them too much, attack them for being wealthy, and they just may not show up anymore. In fact, they might start drinking overseas where the atmosphere is somewhat friendlier.


The main argument that I could see (apart from the numbers being exactly right, but largely similar) is that the link between increasing taxes and the richest leaving isn’t fully understood, and is largely empirical. The Laffer curve suggests that the optimum tax rate is around 70% which is certainly more than the current 50%.

If I was on just a minute I certainly would have been buzzed for deviation by now, so back to my original topic.

I really hope people go to this march in London. It’s sad that only the left wing and anarchists see fit to make their views known in this day and age, and the more susceptible public might then think that the government isn’t working and is ignoring the people. It’s a worthy cause. The official site is here, and the facebook event is here.

Radio Buttons Matlab GUI

I had an existing GUI, and tried to add another panel of Radio Buttons. I did this using guide. I then copied and pasted the existing working code from another uipanel, changing the suitable variables, assuming this would work (obviously changing the tags and strings for the radio button) but nothing was happening, and they weren’t working as I wanted them to.

A simple test for it working is under your copied and suitably changed function uipanel1_SelectionChangeFcn(hObject, eventdata, handles) add fprintf(‘does this work?’). If it works, every time you change your selection, that should be printed into your command history.

Mine didn’t work and I couldn’t figure out why, or find on the internet the reason why this should be. I was comparing properties of the buttons and panels for ages using the ‘property inspector’.

I found the solution in the end to be going through the motions of creating a new function in the guide, by right clicking the panel, view callbacks, then SelectionChangeFcn. This then takes you to the code you’ve had all along, but I assume it adds a reference for it in the hidden back end files (such as guidefunc.m) that is necessary.

Printer problems…

A printer stopped working over the wireless… The HP officejet 6500 wireless.

I tried disconnecting and reconnecting it to the network, I downloaded the HP Home Network Diagnostic Utility (hphndu.exe) and ran that, which said everything was working fine, and correctly printed a test page. I tried uninstalling and reinstalling all the drivers/HP software, it couldn’t re-find the printer automatically, so I specified the IP address ( and it then found it. It seemed to install correctly until about 98% when it couldn’t print a test page and said:

“Unable to communicate with your printer at this time. This may be caused by a Firewall. If you are using firewall software, verify UDP port 427 is unblocked from your printer…”

I checked the firewall, and it was already clear, I checked my router, and it was clear. After a while, I just chose to continue the installation ignoring the error, which I did, and it thereafter it worked fine!

Miami 2 Ibiza Acronyms

Couldn’t find the acronyms for this song listed anywhere, thought I’d compile a list of the abbreviations/acronyms/meanings as I think they are…

AP– Audemars Piguet [watch company]
QVC – shopping channel
mp3 – music file
Bold BB – model of blackberry
BM – BMW car
TT – Audi TT card
CK – Calvin Klein
PVC – Type of plastic
JVC – Camera Manufacturer
FHM – Mens magazine
LV – Louis Vitton [handbag]
LPR – Laurent-Perrier Rose Champagne
APC – French Fashion Brand
PRPS – Denim Brand
Nike SB’s – Nike Skateboarding Shoes
SHM – Swedish House Mafia
NYC – New York City


Full lyrics:

She says she likes my watch, but she wants Steve’s AP
And she stay up all hours watching QVC
She said she loves my songs, she bought my mp3
And so I put her number in my Bold BB
I got a black BM, She got a white TT
She wanna see what’s hiding in my CK briefs
I tell her wear suspenders and some PVC
And then I’ll film it all up on my JVC

Uhh, scene one. Everybody get in your positions.
Pay attention, and listen.
We’re tryna get this in one take, so lets try and
make that happen.
Take one, action!

She pose for FHM, She like my Black LV
We spillin’ LPR, up on my APC
I’m in my PRPS and my Nike SB’s
Ravin’ with SHM, London to NYC
I got my Visa and My Visa
A diva and her dealer
B***h I’m up on the guest list with the Swedish House Mafia
You can find me on a table full of vodka and tequila
Surrounded by some bunnies, and it aint f***ing easter
I wake up in the morning with a mild case of amnesia
With a girl that like a girl like Lindsey Lohan, Queen Latifah
A few n****z are pullin, Yeah guetta must be fever
And that’s standard procedure from Miami 2 Ibiza

World War One Anecdote

I heard this from an old guy who heard it first hand from a vet, and he thought that it wouldn’t be recorded anywhere. I’m writing it into the ether for posterity, on the off chance a historian finds it in years to come and finds it interesting.

‘They used to carry people back and forth from the front line trenches to the behind lines rest area’s in old London buses. Rather than sit quietly, they would always run up to the top deck, and run from side to side trying to topple the bus”

Whether this was insanity, fun, or a desire to stay on the front line wasn’t explained.