re: the '504 unnamed keys' is 504 entries, not 504 names -- it is 42 keys
Independently reproduced across all 33 paks: 7750 IDXD objects, 1485577 unnamed field entries, 7094 distinct never-named keys splitting cleanly into 7052 in an ordinal band (<=0x2198, 94.6% equal to their own field index) and 42 hash-shaped (>=0x2677C), with ZERO keys in the gap between. The 42 carry exactly 504 entries -- six language copies of one object times two records. So the preimage target was 42, not 504, and my earlier wording invited the misreading. Cross-referenced to the idxd-unnamed-keys write-up, which shows the 42 belong to <lang>\script\ID.tbl and cannot be recovered from a 24-bit hash.
This commit is contained in:
@@ -60,8 +60,18 @@ Disc-wide census of all **2,757,039** fields:
|
||||
| unnamed, literal key (`< 0x10000`) | 1,485,073 |
|
||||
| unnamed, hash-shaped key | 504 |
|
||||
|
||||
Those **504** are the entire remaining preimage problem on the disc. ❔ Their
|
||||
names are unrecovered.
|
||||
Those **504** are the entire remaining preimage problem on the disc — but the
|
||||
count is easy to misread, so state it precisely: 504 is a count of **field
|
||||
entries**, not of distinct names. They are **42 distinct keys**, each appearing
|
||||
in 12 places (six byte-identical language copies of one object × two records).
|
||||
The preimage target was never 504 names; it is 42.
|
||||
|
||||
❔ Their names are unrecovered, and
|
||||
[idxd-unnamed-keys.md](idxd-unnamed-keys.md) shows why that is not a matter of
|
||||
more compute: the 42 belong to `<lang>\script\ID.tbl`, and at 7 characters one
|
||||
of them already has 1 176 preimages under a 24-bit modulus. 30 of the 42 have
|
||||
their trailing digits pinned algebraically; the prefixes cannot be recovered
|
||||
from the hash alone.
|
||||
|
||||
## Two corrections
|
||||
|
||||
@@ -144,7 +154,9 @@ of the four legacy magics), so that path is read-only knowledge, untestable here
|
||||
|
||||
## What this does *not* settle
|
||||
|
||||
* ❔ The names of the 504 unnamed hash-keyed fields.
|
||||
* ❔ The names of the 42 unnamed hash-keyed fields (504 entries — see
|
||||
[idxd-unnamed-keys.md](idxd-unnamed-keys.md); shown to be unrecoverable from
|
||||
the hash alone).
|
||||
* ❔ How much of the existing corpus the old string-pool reader got wrong. The
|
||||
legacy `get_f32`/`get_raw` path infers a field's value from *pool adjacency*
|
||||
(`<value>\0<key>\0`). That adjacency is a consequence of the field table, not a
|
||||
|
||||
Reference in New Issue
Block a user