cRaCked

Cracking helper with calibrated probability estimates, a character-model fallback for unknown words, and self-measuring telemetry

Đây là phiên bản của script này, nơi mã nguồn đã được cập nhật. Hiện tất cả các phiên bản.

  • v2.4.7 01-09-2026
  • v2.4.7 31-08-2026

    cRaCked 2.4.7 — Android Firefox network compatibility

    • Supports both Tampermonkey HTTP request APIs so dictionary downloads, community sync and uploads work when Android Firefox exposes only the modern GM.xmlHttpRequest interface.
    • Reports a direct grant/install error instead of an undefined-global failure if neither userscript request API is available.
  • v2.4.6 31-08-2026
  • v2.4.6 31-08-2026

    # cRaCked 2.4.6 — one-second wait and retry recovery

    - Reduces the suggestion button's maximum wait from six seconds to one.
    Expiry unlocks the button without sending another guess automatically.
    - Modifier keys, navigation, deletion and keyboard shortcuts no longer create
    phantom guesses or restart the countdown while a character input has focus.
    - Keeps tracking delayed results after the button unlocks. Unconfirmed attempts
    expire even when Torn's remaining-guess count is unavailable; a timeout alone
    is never recorded as a failed guess.
    - Explicit retries work when the same character is still in Torn's input.
    Double clicks remain guarded, with retries available after one second.

  • v2.4.5 31-08-2026

    # cRaCked 2.4.5 — single tooltip and full button wording

    - Keeps Torn's styled hover tooltip without bringing back the browser's plain
    duplicate during button refreshes or modifier-key changes.
    - Hover help updates inside the existing tooltip, preserving its arrow and
    accessibility association.
    - Brute-force buttons now say BRUTE FORCE instead of BF and still show the
    nerve cost. Compact fallback launchers retain the full wording too.

  • v2.4.4 31-08-2026

    cRaCked 2.4.4 — encrypted job controls and Torn button font

    • Untouched fully encrypted jobs now receive the cRaCked button controls, so their modal and hover information remain available before any brute force. The same fix covers jobs with no guesses remaining.
    • Modal hover text retains the encryption explanation and remaining brute-force workload. Existing click/modifier preferences still apply.
    • Replacement action labels inherit Torn's native font, weight and size, replacing the small bold monospace text. Fallback launchers use Fjalla One.
    • Brute-force nerve checks, suggestion thresholds and touch long-press remain unchanged, with regression checks covering encrypted and unencrypted jobs.
  • v2.4.3 30-08-2026

    cRaCked 2.4.3 — mobile Firefox identity detection

    • Detects the logged-in player's name and ID from Torn's embedded account data, even when mobile Firefox/Tampermonkey has no visible profile link.
    • This browser-compatible path needs no API key, cookies, or extra permissions. TornPDA retains its API fallback when embedded account data is unavailable.
    • Settings waits briefly for late-loading account data and offers Retry identity if detection is still unavailable.
    • Enabling public credit checks the current login on every browser instead of silently reusing a saved identity from another account.
    • TornPDA can now verify the current player's name and ID through TornPDA's documented API-key bridge and Torn's basic profile endpoint.
    • The public-credit switch performs the identity check itself and reports actionable API-key errors instead of asking the user to reopen settings.
    • Enabling public credit requires a fresh verification so a saved identity from another Torn login cannot be silently reused.
  • v2.4.2 29-08-2026

    cRaCked 2.4.2 — TornPDA identity detection

    • TornPDA can now verify the current player's name and ID through TornPDA's documented API-key bridge and Torn's basic profile endpoint.
    • The public-credit switch performs the identity check itself and reports actionable API-key errors instead of asking the user to reopen settings.
    • Enabling public credit requires a fresh verification so a saved identity from another Torn login cannot be silently reused.
  • v2.4.1 29-08-2026

    cRaCked 2.4.1 — safe one-shot modifier actions

    • A modifier-click sends at most one suggested character and waits for Torn's verdict before another action can run. Duplicate miss notifications are collapsed instead of consuming the script's whole guess budget on screen.
    • The native button shows a live cooldown countdown after sending and unlocks immediately when Torn responds or when the six-second safety timeout ends.
    • Holding Shift, Alt, Ctrl/Command, or another configured modifier previews the action directly on Torn's button, including the suggestion and its probability or OPEN MODAL. An explicit suggestion modifier overrides the automatic-send threshold; the threshold still governs normal clicks.
    • In-flight and incorrect guesses survive refreshes. Legacy duplicate miss records are repaired while loading so the same character is not suggested again.
  • v2.4.0 28-08-2026

    cRaCked — major improvements

    This is the concise public changelog for the Greasemonkey listing. It focuses on meaningful changes to accuracy, safety, speed, privacy, and usability rather than minor layout adjustments.

    v2.4.0 — clearer first-time privacy choice

    • Fresh installations now open Settings automatically on the cracking page.
    • Public Torn-name credit is presented first and clearly marked as optional. Shared cracks remain anonymous unless the player explicitly opts in.
    • Settings detect the current Torn name and ID, and public credit can be enabled or revoked at any time without changing anonymous sighting counts.

    v2.3 — transparent community learning

    • Added a browsable, scroll-bounded view of recently learned community words, including when they were added, how often they were seen, and optional public contributor credit.
    • Community sync now distinguishes newly added words from existing local words promoted to community-confirmed entries, while repeat sightings remain de-duplicated.
    • Added clearer prior-coverage reporting and actionable diagnostics for dictionary, sync, network, and local-storage failures.

    v2.2 — safer recommendations and native controls

    • Recommendations now account for the complete open row, remaining guesses, brute-force strength, crack context, and whether Torn can accept a character.
    • cRaCked works through Torn's existing action button while preserving explicit access to suggestions, brute force, and the detailed modal.
    • Failed guesses survive refreshes, stale results are invalidated immediately, and exhausted guesses or insufficient nerve cannot trigger unsafe actions.
    • Dictionary and community indexing report progress and avoid expensive full-model rebuilds after routine updates.

    v2.1 — accuracy and performance overhaul

    • Added honest out-of-vocabulary probability so an unknown password can no longer appear as a false 100% dictionary match.
    • Added character-pattern fallback and embedded-word matching for generated passwords such as words with prefixes, suffixes, or digits.
    • Corrected ranking so community words and previously cracked passwords receive stronger evidence than generic base-list entries.
    • Corrected observation tracking so completed rows and repeat sightings are not counted again on page reload.
    • Replaced repeated large worker copies with one persistent worker, packed word storage, cached IndexedDB access, and event-driven updates for substantially lower memory and CPU usage.

    v1.3.1 and earlier

    Initial dictionary-based cracking assistance and community word sharing.

  • v2.3.4 27-08-2026

    Failures now always produce one structured console.error containing:

    • Failure stage
    • Request URL
    • HTTP status
    • Dictionary part
    • IndexedDB key
    • Underlying error message
  • v2.2.8 25-08-2026

    /* ===========================================================================
    * WHAT CHANGED FROM 1.3.1 — read this first
    * ---------------------------------------------------------------------------
    * Accuracy
    * - Explicit out-of-vocabulary mass. A lone surviving candidate can no
    * longer print 100%; it prints the probability the password is in the
    * dictionary at all. This was the TERMINATOR failure.
    * - Backoff ladder: trigram -> bigram (both neighbours) -> positional
    * frequency -> unigram. The script now always has a recommendation, and
    * on out-of-vocabulary words it beats random by a wide margin instead of
    * printing "(no matches)".
    * - Rank is stored explicitly with a source tier (base list / community
    * pool / own crack). In 1.3.1 rank came from array position, so appended
    * community words scored ~104x worse than generic top-of-list passwords
    * and needed roughly 670 sightings of one word to recover. They now
    * start ahead of the base list, which is where the evidence actually is.
    * - Observation evidence is additive rather than a multiplicative log
    * boost, so confirmed sightings can genuinely dominate a weak prior.
    * - Crack level is scraped and feeds the coverage estimate.
    * - Coverage self-calibrates from logged outcomes.
    *
    * Correctness
    * - Misses are captured by MutationObserver instead of an 800 ms poll
    * racing a transient CSS class. Missed misses were lost exclusions.
    * - Observations only count on a real incomplete -> complete transition.
    * 1.3.1 re-counted any finished row on every page load, inflating counts
    * and manufacturing fake repeats.
    * - Outbox: in-flight guard, correct requeue of the untried remainder,
    * capped retries with backoff, bounded queue. 1.3.1 dropped words on a
    * mid-batch failure and then span forever.
    * - Row state lives in a WeakMap keyed on the DOM node, so the virtual list
    * recycling a row cleans up automatically. No more random rowKeys, no
    * sessionStorage growth.
    *
    * Speed
    * - Words are packed into typed arrays (fixed stride). The 8-char bucket is
    * 2.2 MB instead of ~16-20 MB of JS strings.
    * - ONE persistent worker that owns the packs and the IndexedDB. 1.3.1
    * spawned a worker per update and structured-cloned the whole bucket
    * into it every time.
    * - IndexedDB handle is cached instead of reopened on every get/set.
    * - Auto-sync uses one computed timeout instead of a 1 Hz poll.
    * - Theming is CSS custom properties, not inline styles rewritten per row
    * per tick. DOM updates are observer-driven with a slow safety net.
    *
    * Torn passwords are confirmed to be 4-10 characters using A-Z and 0-9.
    * Dots and underscores shown by the cracking UI represent slot states, not
    * password characters, and therefore do not belong in the model alphabet.
    *
    * ---------------------------------------------------------------------------
    * 2.2.8 — settings are compact/collapsible, the status badge opens them, pool
    * sharing uses an explicit switch, statistics use clearer prior-coverage
    * labels and compact counts, and completed sync messages return to Ready.
    *
    * ---------------------------------------------------------------------------
    * 2.2.7 — base, community, and character-model indexing now report elapsed
    * time and an ETA. Worker scans publish progress every 25,000 words so a
    * large bucket no longer looks frozen between coarse phase updates.
    *
    * ---------------------------------------------------------------------------
    * 2.2.6 — a failed/restored exclusion immediately invalidates any scorer
    * response already in flight, so the rejected character cannot remain in a
    * stale launcher or suggestion modal while the replacement score is queued.
    *
    * ---------------------------------------------------------------------------
    * 2.2.5 — failed character attempts now survive a refresh of the same crack.
    * Transitional, partially hydrated Torn markup no longer deletes the saved
    * record, and restoration retries as the password identity becomes visible.
    *
    * ---------------------------------------------------------------------------
    * 2.2.4 — batches community-pool membership checks into one scan per packed
    * length bucket and atomically saves only changed buckets, so interrupted
    * syncs recover without repeating minutes of linear lookups.
    *
    * ---------------------------------------------------------------------------
    * 2.2.3 — detects Torn's real CSS-module rig statistic while it is mounted
    * and carries that per-tab value back to the cracking list.
    *
    * ---------------------------------------------------------------------------
    * 2.2.2 — reads each player's current rig panel instead of assuming one
    * brute-force strength for everybody. Fractional strength is retained and
    * modelled using Torn's per-action stochastic rounding.
    *
    * ---------------------------------------------------------------------------
    * 2.2.1 — replaces the arbitrary per-slot RISK threshold with Torn's actual
    * dominant policy: use the free highest-probability guess while guessing is
    * available, then brute force. The modal reports the chance of clearing all
    * currently open slots within the global miss allowance and the remaining
    * brute-force work, and telemetry records those decisions for replay.
    *
    * ---------------------------------------------------------------------------
    * 2.2.0 — completed passwords now upload their Torn target/type, service,
    * and level as a separate context association. Confirmed community context
    * links sync back to each browser and cautiously boost exact-context words.
    *
    * ---------------------------------------------------------------------------
    * 2.1.10 — completed rows no longer show a launcher. The transparent panel
    * no longer intercepts Torn's hover-only abandon button, and failed guesses
    * retain their original probabilities across refreshes for display in the
    * suggestion modal.
    *
    * ---------------------------------------------------------------------------
    * 2.1.9 — compact row launchers replace the mobile-width suggestion bars.
    * Tapping one opens a password-box modal whose suggested characters send to
    * the corresponding real Torn slot, with ranked alternatives per open slot.
    *
    * ---------------------------------------------------------------------------
    * 2.1.8 — new installs fetch the base dictionary in bounded chunks instead
    * of cloning and splitting one 7.4 MB string. Packed lookup no longer keeps
    * a parallel 868k-string Map, and observations no longer trigger a complete
    * character-model rebuild after every crack.
    *
    * ---------------------------------------------------------------------------
    * 2.1.7 — community sync now checks lightweight metadata every 15 minutes,
    * downloads at 25 pending words or after 24 hours, reports the real number
    * added/upgraded, uploads in batches of up to 10, and uses the mobile-safe
    * uncompressed base snapshot endpoint.
    *
    * ---------------------------------------------------------------------------
    * 2.1.6 — removed the DECRYPT → X → char feature. Torn's brute-force decrypt
    * is random (not slot-specific), so ranking encrypted slots by confidence
    * against encryption layer cost was misleading and should not be used.
    *
    * ---------------------------------------------------------------------------
    * 2.1.0 — reported by MoDuL [4022159], diagnosed by MoDuL and TheDno [4443016]
    *
    * - Embedded-word matching. XTRIDENT66 (= X + TRIDENT + 66) is a generated
    * password, so whole-string lookup can never find it. Aligning TRIDENT
    * inside the pattern explains six revealed characters at once and pins the
    * remaining gap: on that exact pattern the open slot went from I 6.4%
    * (truth R ranked 5th) to R 87.7% ranked 1st.
    * - Right-hand trigram, mirroring the left. Revealed characters cluster where
    * the player has been guessing, so a gap often has all its context on one
    * side.
    * - A still-loading dictionary no longer reports fake estimates. An untrained
    * model produces a flat 1/39 distribution, which put "TRY 1:A 2.6%" on
    * every row and read as confidence rather than as "not ready yet".
    * - Rows with every hidden slot encrypted no longer recommend a guess they
    * cannot accept.
    * - IN-DICT is no longer pegged to its ceiling by a single observed word.
    * - The LETTERS chip no longer overflows the panel.
    *
    * ---------------------------------------------------------------------------
    * THINGS THE SCRIPTER MUST CONFIRM — search for CONFIRM: in this file
    * 1. SEL.level / readLevel() — the crack level selector is a guess.
    * 2. AJAX_MATCH + parseGuessResponse() — optional network verdict hook,
    * off by default. The MutationObserver path works without it.
    * ======================================================================== */

  • v2.2.0 22-08-2026
  • v2.1.10 22-08-2026
  • v2.1.7 17-08-2026
  • v2.1.4 13-08-2026
  • v1.3.1 01-08-2026
  • v1.3.0 31-07-2026