jwz's secret code?
February 26, 2010 3:26 PM   Subscribe

Does the code on the front page of jwz.org mean anything?

From the source code:
mail me if you find the secret
(no, you can't have a hint)
posted by Mwongozi to Computers & Internet (32 answers total)

This post was deleted for the following reason: poster's request -- jessamyn

 
You'd have to be one hell of a hex-edit guru to glean anything from that. Love that site so much.
posted by Aquaman at 3:28 PM on February 26, 2010


It looks like an old fashioned IBM type Hex dump from the days of 360/370.
posted by Obscure Reference at 3:51 PM on February 26, 2010


Regarding the layout, this may be obvious to you but the three columns are:
byte offset (hex)       hexadecimal representation     ascii representation
with exactly 16 bytes on each line (hex 10)
posted by idiopath at 4:08 PM on February 26, 2010


A good next step would be to take the hex representation, get it saved to a binary, and try disassembling it with some common disassemblers (x86, z80, ppc, arm), or see if it makes a valid jpeg or bmp or other readable file or something.
posted by idiopath at 4:11 PM on February 26, 2010


Yes, but the page layout is that of a dump of IBM/360 memory. Were you running a program (on punched cards) and it ABENDed (IBMese for abnormal end, i.e. crashed) it would give you a dump of virtual memory in exactly that format.
posted by Obscure Reference at 4:12 PM on February 26, 2010


See also Sean Eddy's home page (one of the most notable computational biology researchers).

(Vg'f cneg bs gur pnrabeunoqvgvf ryrtnaf trabzr.)
posted by grouse at 4:16 PM on February 26, 2010 [1 favorite]


It is also the page layout of a number of disassembly tools - IBM/360 may or may not be the first use of the layout, but it is a standard layout for a hex dump.
posted by idiopath at 4:16 PM on February 26, 2010


Well, if the secret is in what's being represented as a hex dump there, you wouldn't have to be a hex-edit guru, you'd put the dump back into the editor, save it, and see what the file is.
posted by weston at 4:17 PM on February 26, 2010


Yes, but the page layout is that of a dump of IBM/360 memory

Every hex editor I've seen in the last 20+ years looks like that. Also the dump starts at 4285504 hex, which is 4285504 decimal. Did 370s have 4 MB of RAM?

Also, FWIW, the dump isn't continuous. There are sporadic gaps between lines.
posted by turbodog at 4:20 PM on February 26, 2010


Also, it would have been in EBCDIC and that is ASCII. Never mind!
posted by Obscure Reference at 4:23 PM on February 26, 2010


turbodog: To me it looks like it starts at 0416440 octal, which is 138528 decimal or 21D20 hex. (Does it serve the same hex dump every time?)
posted by hattifattener at 4:29 PM on February 26, 2010


Confusing the issue even more, the links stay in place while the rest of the code scrolls around, but in the source, the the links are inline with the code.

Anyway, it's probably an executable of some sort, for some processor.
posted by delmoi at 4:32 PM on February 26, 2010


To me it looks like it starts at 0416440 octal

Thanks. I was just starting to puzzle over the addressing, and doing so is making me realize my previous suggestion of reconstituting the dump and saving it probably wouldn't yield much.

I'm kindof wondering if this is something you have to write to those specific addresses of some piece of hardware.
posted by weston at 4:43 PM on February 26, 2010


If you scroll to the bottom, you can see that it's not scrolling up continuously - it's just moving up several lines and then down. (Hard to explain, if you look you'll see what I mean.)
posted by Solon and Thanks at 4:43 PM on February 26, 2010


If I had to guess, it'd be some excerpt of Netscape.
posted by pwnguin at 4:45 PM on February 26, 2010


Well, decoding the hex dump to a file and running /bin/file on it doesn't suggest anything. That's about as much effort as I'm willing to put into it. I'd just assume that it's random, though the distribution of byte values is pretty nonrandom — way too many 0xFFs, and a couple other values stick out on the histogram as well.
posted by hattifattener at 4:58 PM on February 26, 2010 [1 favorite]


My understanding, having been a long-term reader of his stuff (pre-launch of DNA Lounge), there's nothing there, but he greatly enjoys the "meaning" that people find in it - think conspiracy theory, but applied to someone who's internet-famous.
posted by lowlife at 5:03 PM on February 26, 2010


For those of you interested, here's the source data un-entitied and stripped of html tags.
posted by artlung at 5:31 PM on February 26, 2010


there's a series of characters that dont move with the rest where it says

JAMIE
ZAWINSKI
With corresponding code:

4A 61 6D 69 65
5A 61 77 69 6E 73 6B 69

Doing find and replace on those letters doesnt seem to give me much, but is a start.
posted by CharlesV42 at 5:32 PM on February 26, 2010


CharlesV42: "JAMIE
ZAWINSKI
With corresponding code:

4A 61 6D 69 65
5A 61 77 69 6E 73 6B 69
"

Yeah that is the hex sequence for that ASCII string.
posted by idiopath at 5:38 PM on February 26, 2010


Yeah, I've always assumed there was nothing there, but now that there's an AskMe about it, I'm hooked.

The sequence FF F3 20 C4 occurs every 52.25 bytes or so on average, which suggests something writing 52-byte packets with a HDLC-like byte-stuffing sychronization, which suggests low-bit-rate MP3, and in fact that's a fairly valid-looking MP3 frame sync sequence, but I don't get anything comprehensible out if I throw this file at an mp3 decoder.
posted by hattifattener at 5:39 PM on February 26, 2010 [3 favorites]


(Can't believe I'm still messing with this.) It is valid MP3 audio data, and except for a loud noise at the beginning (maybe where the website text stomped on the mp3 data), it's about three seconds of very quiet music.
posted by hattifattener at 6:07 PM on February 26, 2010 [11 favorites]


Awesome work hattifattener, can you name that song in 3 seconds?
posted by zephyr_words at 6:22 PM on February 26, 2010


hattifattener -- that's some ninja action right there. What were you using for your statistical breakdown of the file?

It is valid MP3 audio data, and except for a loud noise at the beginning (maybe where the website text stomped on the mp3 data), it's about three seconds of very quiet music.

Hmm. Did you do anything with it before you played it back?

If I throw it into Audacity, it gives me a mono 22050hz track on which I can't hear anything. If I normalize it, I get a short clip less than a second that starts with what sounds like ground noise quickly moves to something that sounds like the attack of that Tardis noise from Dr. Who.

If I play it in Finder Preview mode under OS X, I get about two seconds of what sounds like background noise broadcast over low bit-rate Real Audio codec circa 1996.

If I try to play it in iTunes, nothing happens.

What am I missing?
posted by weston at 6:39 PM on February 26, 2010


http://www.bastwood.com/aphex.php ?
posted by j.edwards at 8:23 PM on February 26, 2010


The very first frame appears to be corrupt, which may be why iTunes won't play it. It looks like a valid mp3 stream if you start at byte offset 52.

I'm guessing that there's more than one data source here. The last ASCII string is embedded in (valid) frame #31, and it seems like the music starts immediately thereafter. It's not entirely clear that frames 1-30 actually represent audio.

I'm wondering if the ASCII strings serve as delimiters which mark different types of data. I'm also wondering how much I should really care about this, since I'm on the record as not caring what jwz has to say.
posted by Galvatron at 9:27 PM on February 26, 2010


A friend went through this in 2003. Jamie's reply to his email said "Congratulations, you're the first person in more than a year to figure that out!". At the time, at least, the hexdump changed nightly.
posted by plant at 9:54 PM on February 26, 2010


Ugh. The data is non-constant. It's changed relative to artlung's snapshot, and now has a base address of 0371600 octal. So I guess one would have to watch for a while to see the whole thing.

I don't care I don't care I don't care
posted by Galvatron at 10:03 PM on February 26, 2010


Heh. So maybe with enough samples of the webpage, one could assemble a complete mp3 file, based on the address column? :) That's way too much work for this puzzle, especially since I suspect there isn't anything deeper than "hey, it's an mp3 of [some song]!".

weston: I'd pulled it into python to strip out the html before converting the hex to binary, so I wrote a three-line make-a-histogram-of-byte-values-and-plot-it-with-asterisks. The periodic 0xFF made me think it was an image, and then the fact that it had a non-integer width made me think of byte-stuffing.

I'm also getting 22050-Hz mono audio. iTunes played it fine for me, though I had to turn the volume 'way up to hear the music in the background.

j.edwards: Huh, interesting thought. I made a waterfall-type diagram of the spectrum and played with it a bit, but I don't think I'm seeing anything other than synthesized music (no voicelike formants) that's been through a subband codec (weird blocky effect on the spectrum). numpy sure makes this stuff easier than last time I did this.

Galvatron: You could be right about the beginning of the file not being real. I had to zero out the frames with text in them to get rid of the BZRKNK noise they made, but even so, the spectrogram of the first 0.4 second is qualitatively different from the rest of the file.

plant: Can you reveal what “it” was that your friend figured out? (email me if you don't want to spoil it for everyone else.)

Anyway. That's enough junior cyberdetective for me. Anyone wants to replicate what I did, I used: ad-hoc python to remove the html tags (re.subn()), strip off the right and left columns, and convert the remaining hex to binary; netpbm to see if it made an image; hexl-mode to zero out the frames with text in them; mpg321 to convert to .wav; and the python wave, numpy, and matplotlib modules to check for aphex-twin-esque frequency-domain messages.
posted by hattifattener at 11:49 PM on February 26, 2010 [5 favorites]


I don't think he got any further than identifying the file type. Of course, that doesn't mean there isn't more to it.

According to IRC logs from the time, I listened to it, but I don't remember it at all.
posted by plant at 12:58 AM on February 27, 2010


Response by poster: Meta
posted by Mwongozi at 3:02 AM on February 27, 2010


So I've spent the day digging into this, and I don't think it's entirely solved. A few thoughts:

1) For those who want more data to play with, archive.org has literally years.

2) The octal does not correlate directly to an MP3 clip. As far as I can tell (after searching through a bunch on archive.org), there are 16 values the octal column can take on, but these don't map one-to-one to hex data. (See for example here versus here.)

3) I have yet to find one whose hex data didn't play just fine as an MP3, without even scrubbing the lines with names in them. Most have music, and at least one had someone singing, though I don't remember the link it came from.
posted by Upton O'Good at 2:04 PM on February 27, 2010 [1 favorite]


« Older Help me find a concise history of modern...   |   Get that out of your mouth! Newer »
This thread is closed to new comments.