• livingcoder@programming.dev
    link
    fedilink
    arrow-up
    17
    ·
    edit-2
    4 months ago

    Is there an algorithm or number such that we could basically pirate data from it by saying “start digit 9,031,643,679 with length 5,345,109 is an MP4 of Shrek”? Something that we could calculate in a day or less?

    • AVincentInSpace@pawb.social
      link
      fedilink
      English
      arrow-up
      23
      ·
      4 months ago

      The short answer is no, and even if we could, the digit index you’d start at would have a larger binary representation than the actual data you were trying to encode.

      • AeroLemming@lemm.ee
        link
        fedilink
        English
        arrow-up
        2
        ·
        4 months ago

        Yep. Not always larger necessarily, but close to the same size on average, or maybe a little smaller if the domain is limited and compression can be applied. Not really useful.

    • apex32@lemmy.world
      link
      fedilink
      arrow-up
      18
      ·
      4 months ago

      An example I found: the string of digits 0123456789 occurs at position 17387594880. In this case, it took 11 digits to describe where to find a 10-digit number.

      So I think such an algorithm would technically work, but your “start digit” would be so large it would use more data than just sending the raw file data. Not to mention the impossible amount of computing power needed.

      • livingcoder@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        4 months ago

        What if instead we utilized an algorithm, some code, that would ultimately generate the file? I could imagine a program that generates a number which ultimately is more dense than the program. For example, if we just-so-happened to need a million digits of Pi the program would be shorter than the number. Is there a way to tailor an algorithm to collapse down to any number? As an example, what if we needed a million digits of Pi but the last 10 digits need to be all 9s?

    • nova_ad_vitum@lemmy.ca
      link
      fedilink
      arrow-up
      9
      arrow-down
      1
      ·
      4 months ago

      Similarly: if you write a program to randomly run through all the combinations of pixels on a decently large screen (say, 1080p) you will eventually see every important question and answer that can be expressed on a screen.

    • WolfLink@sh.itjust.works
      link
      fedilink
      arrow-up
      5
      ·
      4 months ago

      Conceptually this is basically just standard encryption: some math that spits out gibberish unless you have the info to make that gibberish become something useful.

    • mlg@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      4 months ago

      I think if you can ridiculously compress the size down then maybe lol.

      • livingcoder@programming.dev
        link
        fedilink
        arrow-up
        4
        ·
        4 months ago

        Do you happen to know of any good algorithms or numbers? Pi gets harder to calculate with each digit, so it’s not a great candidate.