diff --git a/README.md b/README.md index 102139a..cc06a8b 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,6 @@ Miscellaneous scripts that don't need their own repo. - `segafs/makesegafs.py`: Create an `app`/`opt`/`pack` (same thing) from an unencrypted disk image. - Dependencies: `pip install construct PyCryptodome` - - You will need to find the BootID key/IV and the HMAC key yourself if you want to - make fake apps for whatever reason. Or just don't. ## Patchers - `patchers/b2spatch.mjs`: Convert from BemaniPatcher to Spice2x JSON diff --git a/segafs/makesegafs.py b/segafs/makesegafs.py index 08c70f4..debdd90 100644 --- a/segafs/makesegafs.py +++ b/segafs/makesegafs.py @@ -63,12 +63,9 @@ BOOTID = { # ---- Keys # The BootID (app/opt/pack header) encryption key and IV. -BTKEY = bytes.fromhex("") -BTIV = bytes.fromhex("") - -# The HMAC key that ensures the app/opt/pack created is authentic. -SIGKEY = bytes.fromhex("") - +BTKEY = bytes.fromhex("09ca5efd30c9aaef3804d0a7e3fa7120") +BTIV = bytes.fromhex("b155c22c2e7f0491fa7f0fdc217aff90") +SIGKEY = bytes.fromhex("e1bdcb2d5e9ed3b5de234364dfa4d126849edff769fc6c28fba5f43bc482bd7479d676afce8188e1d3a6852f4ebce45cde46bd15e8ee5fe84d197f945a54518f") HEADER_META_PUBKEY = RSA.import_key("""-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsRMLnJuczNpfoqPpHQ3o 5XNkjKXO6P3ToV/45Az5dNaHVL7uEu9vPI7a2KYFQnNYgD3UUHFahfTcljzLOkcH @@ -140,8 +137,8 @@ BOOTID["block_count"] = ceil(filesize / BOOTID["block_size"]) + 8 header_meta = struct.pack("