‹ BackHN Continuity

Thread

OpenAI GPT–6 Astra breaks Enigma message that has resisted solution since 2005

738 points · 448 comments · sohkamyung

  1. podgorniy · · focus · HN ↗
    gemini 3.8 flash in anrigravitiy oneshoted the descryption in about 45min non-steered run (opus is still running with the task, has some script to run for about 100min)

    Prompt

    Decrypt encrypted with enigma `ICRVSORMCCWQTATYEVFXDBZGGSNXWLPSYWZYTCBSWULRTBZCVGODVJUSLSOOMJQJZSXSEBZPEYMDNXJYTC`

    Result

    Raw Decryption (verbatim from the machine): BTTEUMANGABEDESMARSQWEGESXBEFINDEMIQINXROSENOWROSENOWXSOFORTFUNKANTWORTXWASCHBBSCH 2. Segmented German (with military telegraph conventions expanded): BTTE UM ANGABE DES MARSQWEGES . BEFINDE MIQ IN : ROSENOW ROSENOW . SOFORT FUNKANTWORT . WASCHBBSCH

    (Standard German radio conventions: X represents punctuation/spacing; Q was frequently substituted for CH to prevent transmission ambiguities; BTTE was an enciphering operator typo for BITTE; WASCHBBSCH was an operator typo for the signature WASCHBUSCH).

    3. Corrected German: „Bitte um Angabe des Marschweges. Befinde mich in Rosenow, Rosenow. Sofort Funkantwort. Waschbusch.“

    4. English Translation: "Please specify the route of march. I am in Rosenow, Rosenow. Immediate reply by radio. Waschbusch."

    Cryptographic Verification Re-encrypting the plaintext using the identical key settings reproduces the exact ciphertext byte-for-byte:

    Enigma ( M raw ) = ICRVSORMCCWQTATYEVFXDBZGGSNXWLPSYWZYTCBSWULRTBZCVGODVJUSLSOOMJQJZSXSEBZPEYMDNXJYTC Enigma(M raw

    )=ICRVSORMCCWQTATYEVFXDBZGGSNXWLPSYWZYTCBSWULRTBZCVGODVJUSLSOOMJQJZSXSEBZPEYMDNXJYTC 19:10

    1. xg15 · · focus · HN ↗
      Wow. Was there any indication how it did that? Did it bruteforce the key and check which result looks sufficiently German, or was it just LLM magic like "decoding" base64 purely in the inference loop?

      (Or did it look up the results on the web?)

      1. podgorniy · · focus · HN ↗
        TLDR: it created program to decypher the string using opensource solutions related to enigma

        --

        it searched for enigma-related repos and implementations, fetched various github repos parts, build inline descryption program.

        It ran bunch of various scrips like:

        clang++ -g -fsanitize=address /Users/dp/.gemini/antigravity/brain/e9a54e5f-1325-448a-8d43-fc537b901f34/scratch/enigma.cc -o /Users/dp/.gemini/antigravity/brain/e9a54e5f-1325-448a-8d43-fc537b901f34/scratch/enigma_dbg && echo "ICRVSORMCCWQTATYEVFXDBZGGSNXWLPSYWZYTCBSWULRTBZCVGODVJUSLSOOMJQJZSXSEBZPEYMDNXJYTC" | /Users/dp/.gemini/antigravity/brain/e9a54e5f-1325-448a-8d43-fc537b901f34/scratch/enigma_dbg -u B -w 123 -r AAA -g ... -c -l /Users/dp/.gemini/antigravity/brain/e9a54e5f-1325-448a-8d43-fc537b901f34/scratch/english

        and

        sed -n '1060,1130p' /Users/dp/.gemini/antigravity/brain/e9a54e5f-1325-448a-8d43-fc537b901f34/scratch/enigma.cc

        and

        Running 82M combination scan for unsteckered Enigma across all rotors, reflectors, positions, and ring settings. Monitoring progress.

        and

        Scanning all 60 rotor permutations and reflectors B and C across all ring settings (step 2) and all 17,576 indicator positions. Monitoring progress.

        --

        I also have opus running. It produced some sypher cracker which is still running (estimated time 100min, is about 15 min left)

        --

        My point is that astra isn't special. This appears to be quite narrow, well-documented and explored task. The goal itself is approacheable by other LLMs and non-researches task.

        1. david_shaw · · focus · HN ↗
          > TLDR: it created program to decypher the string using opensource solutions related to enigma

          It seems weird to me that a (relatively) straightforward workflow like that would elude crypto hobbyists for the last 21 years (since 2005 according to the article).

          1. kadoban · · focus · HN ↗
            My understanding is that there's a bunch of short, probably unremarkable ciphertexts out there that if anyone spent a good amount of time on (days/weeks), they'd break, but nobody really has the incentive to do so.

            These models/agents are quite good at that type of thing, working through the tedious bits with available information and tools.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.