Hacker News new | past | comments | ask | show | jobs | submit login
[dupe] Illegal prime number (wikipedia.org)
59 points by thisjepisje on July 30, 2014 | hide | past | favorite | 30 comments



"Illegal number" is a loaded term designed to point out the ridiculousness of certain copyrights.

However, I've always found this odd. Since pretty much any information can be conveyed as a number, why aren't people complaining about the UTF-8 encoding of Harry Potter being an illegal number? Why does this term seem limited to crypto/DRM?


Harry Potter isn't illegal, you're just violating copyright if you distribute it.

However I believe the DMCA makes DRM circumention itself illegal, hence DeCSS itself is illegal.

That's my understanding at least.


Fair enough. Would child porn be a valid comparison then? It's illegal to possess child porn. So should this reasoning fly?

"Sir, this is NOT a pornographic image featuring a minor, it's just a very large number!"


The argument that "it's just numbers" was considered insipid 20 years ago. There's a Dilbert where Wally says "I was just transmitting 1s and 0s, it's your computer that is really at fault for encoding them into <whatever the thing that got him into trouble with HR>." We are, of course, not meant to take Wally's argument seriously.

I could encode my inciting of a mob to violence as a prime number. No one, least of all HN, should accept this argument that "it's just a number."


The thing about the illegal prime wasn't so much that it's "just a number", rather that it would be archived and published independently because it's a novel prime for mathematical value, not for the purpose of breaking DRM, hence providing an interesting test to free speech law (can you really say that a specific prime cannot be published in a list of primes simply because it happens to represent DeCSS's source code?)


The law is full of contradictions. Pointing out an inconsistency is not a victory[1]. One principle or the other will lose, and the one that loses might be yours.

[1] http://xkcd.com/651/


I suppose so. However I don't think many people are really going to try that one, especially given the US Govt, while perhaps lenient on the DeCSS prime, would probably not be quite so lenient on a child porn prime. It's also just against basic human morality, really.


Yes, in the same way that a knife is "just a bunch of atoms".


It's reductionist nonsense, just as much as it's nonsense to say that certain weapons are an "illegal arrangement of atoms" or poisoning someone is an "illegal sequence of chemical reactions" or weaponized anthrax is an "illegal sequence of DNA."

NB: I'm not in favor of making certain kinds of encryption illegal, or DeCSS like tools. I'm also not in favor of making the meat-space equivalent, burglars' tools, illegal. There's nothing special about numbers.


It's not "Illegal number" it is "Illegal prime number".


http://en.wikipedia.org/wiki/Illegal_number. Illegal prime number is just a minor specialization of the same concept.


I know illegal number exist, the primes here are different beasts and that's the subject title. If we're going to discuss illegal numbers in general then that's (in my opinion a worthy subject) off-topic for this thread.

Any illegal content can be represented as a number, that's not all that special. Illegal primes took some work to create.



I'm not usually fond of the argument that "all data is just numbers so copyright is invalid" (cue the "color of your bits " article) but I must say this is pretty clever.

I wonder if you could extend this principle by writing a program that would extract copyrighted material from public domain work.

Like, you write a program that would take text as an input, apply a transformation and output the result. If you input the bible, you get the source code to DeCSS. Is this code illegal? I don't think you could fill a DMCA against the bible...


If you have enough people you can establish a religion that treats a certain binary number (which also happens to represent an arbitrary algorithm) as a sacred text.


The source code would practically be in the transformation, the bible would only be a key.


Right, and that's what is interesting about the OP.

They found a piece of information that is notable in its own right (by being one of the larger primes discovered through a particular algorithm). This single piece of information, without any further interpretation, can executed in order to perform the illegal DeCSS operation. IOW, somebody tells you that it's the Nth largest number proven prime by {mumble], and you copy that number out of the math book into an executable file, run it, and you're a criminal.


Eh, you could deliberately word-substitute and reformat the bible so that it, itself, contains the data in some form.


Only if you could do that by some meaningful and simple process. If you simply generate a table (of the same length as the source code) that produces the source code when added to the bible, that's just basic cryptography, a sort of indirect way to store the source code.


Nah, what I'm proposing is steganography not cryptography. Encode it hidden within the text in terms of word lengths, comma positions, number of commas per sentence, word capitalisation, or some other property like that:

https://en.wikipedia.org/wiki/Steganography


Use Synesthesia to build up a coloured picture of the ilegal prime. Boom "Art".


I take issue with the presenting of this.

The prime itself is kind of useless. What is useful is the number, plus the instructions about what to do with it, how to run it, how to apply it.

This is similar to saying "Book is just a collection of letters, but you can distribute the actual letters one by one and it's allright, isn't copyright absurd?".


You're right, the "it's just a number" argument doesn't hold up. What's interesting in this case though, is that it's not just any other number, but a prime of mathematical relevance.


Check out http://www.magnus-opus.com/

It's a copyrighted algorithmic composition that contains most, if not all international phone numbers. They conveniently supply a form so that you can gain a license to use your phone number if it is in the composition.


A fun project on similar lines: https://github.com/philipl/pifs


The coolest thing about this is it actually works. You can go ahead and copy the number out of the wikipedia page put it into a python prompt convert it to binary write it to a file and decompress it. Pretty awesome!

    >>> s = '''4 85650 78965 73978 29309 84189 46942 86137 70744 20873 51357 92401 96520 73668 69851 34010 47237 44696 87974 39926 11751 09737 77701 02744 75280 49058 83138 40375 49709 98790 96539 55227 01171 21570 25974 66699 32402 26834 59661 96060 34851 74249 77358 46851 88556 74570 25712 54749 99648 21941 84655 71008 41190 86259 71694 79707 99152 00486 67099 75923 59606 13207 25973 79799 36188 60631 69144 73588 30024 53369 72781 81391 47979 55513 39994 93948 82899 84691 78361 00182 59789 01031 60196 18350 34344 89568 70538 45208 53804 58424 15654 82488 93338 04747 58711 28339 59896 85223 25446 08408 97111 97712 76941 20795 86244 05471 61321 00500 64598 20176 96177 18094 78113 62200 27234 48272 24932 32595 47234 68800 29277 76497 90614 81298 40428 34572 01463 48968 54716 90823 54737 83566 19721 86224 96943 16227 16663 93905 54302 41564 73292 48552 48991 22573 94665 48627 14048 21171 38124 38821 77176 02984 12552 44647 44505 58346 28144 88335 63190 27253 19590 43928 38737 64073 91689 12579 24055 01562 08897 87163 37599 91078 87084 90815 90975 48019 28576 84519 88596 30532 38234 90558 09203 29996 03234 47114 07760 19847 16353 11617 13078 57608 48622 36370 28357 01049 61259 56818 46785 96533 31007 70179 91614 67447 25492 72833 48691 60006 47585 91746 27812 12690 07351 83092 41530 10630 28932 95665 84366 20008 00476 77896 79843 82090 79761 98594 93646 30938 05863 36721 46969 59750 27968 77120 57249 96666 98056 14533 82074 12031 59337 70309 94915 27469 18356 59376 21022 20068 12679 82734 45760 93802 03044 79122 77498 09179 55938 38712 10005 88766 68925 84487 00470 77255 24970 60444 65212 71304 04321 18261 01035 91186 47666 29638 58495 08744 84973 73476 86142 08805 29443'''
    >>> s = s.replace(' ', '')
    >>> import ctypes
    >>> PyLong_AsByteArray = ctypes.pythonapi._PyLong_AsByteArray
    >>> PyLong_AsByteArray.argtypes = [ctypes.py_object,
    ...                                ctypes.c_char_p,
    ...                                ctypes.c_size_t,
    ...                                ctypes.c_int,
    ...                                ctypes.c_int]
    >>> 
    >>> def packl_ctypes(lnum):
    ...     a = ctypes.create_string_buffer(lnum.bit_length()//8 + 1)
    ...     PyLong_AsByteArray(lnum, a, len(a), 0, 1)
    ...     return a.raw
    >>> with open('/tmp/i', 'w') as f: f.write(packl_ctypes(i))
    ... 
then in a bash prompt

    $ cat /tmp/i | gzip -cd


Why prime? Is that because they're remarkable? Then any number would do since all numbers are remarkable (otherwise if there was a (set of) non-remarkable numbers, there would be a smallest one, hence it'd be remarkable itself, and so on).


I think it is because primes are widely accepted as remarkable. They are seen as things you discover - you don't invent them.

The fact that they have practical application is important too. Do we really want a legal system where you have to get clearances from the MPAA to make ship building software, for instance?


Good idea for some tshirt printing. By extension won't be PI illegal as it can contain all the information in the universe ? (at infinity at least)





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: