Live data from Hacker News

Code that helped end Apartheid

wired.com

41–50 of 240 posts

Re: Code that helped end Apartheid

#41

Interesting how the PKZIP password-protected compressed file is now easily decrypted in We could have had a very different history if they'd used DES or RC2 for encryption!

One time pads used properly are theoretically perfectly unbreakable. The problem is making sure no one ever uses the same 'pad'/keystream twice, that your pad generation is actually random, and that the pads never fall into the hands of your adversaries. (or if they do you've been diligent about completely destroying the used pads and the other end of your communications doesn't use the captured set of pads) They're just not very good at anything other than point to point secret passing and require a real world connection to distribute.

So much of symmetric key cryptography is just trying to find creative ways of creating and recreating 'one time pads' so we can distribute the key material instead of the pads themselves.

Re: Code that helped end Apartheid

#42
post #6

You know it's _proper_ vintage crypto code because it uses the now very unfashionable word 'encipher'.

Why is it unfashionable? I quite like it.

I remember reading in Bruce Schneier's Applied Cryptography that in some cultures "encrypt" refers to the process of entombing bodies for burial and that "encipher" did not have that baggage.

Similar connotation to "decrypt" which would be exhumation.

Re: Code that helped end Apartheid

#44
post #41

Interesting how the PKZIP password-protected compressed file is now easily decrypted in We could have had a very different history if they'd used DES or RC2 for encryption!

One time pads used properly are theoretically perfectly unbreakable. The problem is making sure no one ever uses the same 'pad'/keystream twice, that your pad generation is actually random, and that the pads never fall into the hands of your adversaries. (or if they do you've been diligent about completely destroying the used pads and the other end of your communications doesn't use the captured set of pads) They're…

> that your pad generation is actually random

The one thing that stood out to me with the original blog post and a quick glance at the code was that it appeared as if the pad was certainly not actually random.

Could anyone that has actually understood it a bit more confirm or reject this?

Edit: It seems that the random generation can be found starting here https://github.com/Vulacode/RANDOM/blob/d6a1a1d694b22e6a115b... With three methods, one (RAND2) seems to use the basic interpreter rng more or less directly and the other two seem to be fairly simple prngs seeded from the basic interpreter's rng.

I don't actually know what the state of basic interpreter rngs was in the early '80s but I would be fairly surprised if they're anything that is secure.

Re: Code that helped end Apartheid

#46
post #15

[flagged]

Nelson Mandela was on the US terrorist watch list until 2008.

Also the fact that so many in the US claim they remember he died in prison should say something about the media landscape.

From the European perspective I recall the concerts that were held to free him and then also the concert that was held after he was free. Simple Minds even made a famous song for it [1]. I don't know if those concets were a big show in the US, we only had a few TV stations and this was always a big thing.

[1] https://youtu.be/xfk13uUuD8Q

Re: Code that helped end Apartheid

#48
post #3

So when he DM’d me to say that he had “a hell of a story”—promising “one-time pads! 8-bit computers! Flight attendants smuggling floppies full of random numbers into South Africa!”—I responded. Ha ha ha. Yes, that was literally my very short pitch to Steven about Tim Jenkin's story! The actual DM: "I think this has the makings of a hell of a story: https://blog.jgc.org/2024/09/cracking-old-zip-file-to-help-o... If yo…

Though, you could argue it was a 16 bit computer, of course :) (It was an 8088, essentially an 8086 with an 8 bit data bus, but 16bit registers and 20bit address bus).

At this point in time (meaning 2024) bits for computers are a word to indicate a culture rather than the technical merits of a computer.

Re: Code that helped end Apartheid

#49
post #44
post #41

Earlier quoted context omitted.

One time pads used properly are theoretically perfectly unbreakable. The problem is making sure no one ever uses the same 'pad'/keystream twice, that your pad generation is actually random, and that the pads never fall into the hands of your adversaries. (or if they do you've been diligent about completely destroying the used pads and the other end of your communications doesn't use the captured set of pads) They're…

> that your pad generation is actually random The one thing that stood out to me with the original blog post and a quick glance at the code was that it appeared as if the pad was certainly not actually random. Could anyone that has actually understood it a bit more confirm or reject this? Edit: It seems that the random generation can be found starting here https://github.com/Vulacode/RANDOM/blob/d6a1a1d694b22e6a115b.…

At the time PRNG was probably good enough. I wouldn't want to go up against the NSA today using the same entropy source but against South Africa decades ago it was probably good enough. Even knowing what PRNG source the original noise came from it'd take a hell of a lot of guess and check with cribs to come close to guessing the seed for the PRNG. That would be my first crack at breaking a OTP I knew was generated with a particular PRNG at least as a casual student of the craft. Generate huge amount of noise for the possible seeds and see if any names like "Mandela" or other known leaders suddenly pops out of intercepted messages starting at different points in the noise stream (and see if the rest of the message makes any sense when that does happen).
Post reply on HN