SkillAgentSearch skills...

BinderKeys

Resources for unpacking FromSoftware container files.

Install / Use

/learn @JKAnderson/BinderKeys
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

BinderKeys

This repo contains the resources needed to unpack FromSoftware's BinderLight container files, otherwise known as dvdbnds, ebls, or "those big bdts in the game directory". These files are often encrypted, requiring keys to be extracted from the exe, and they only store filenames in hashed form, requiring dictionaries of known paths to identify them.

The goal of BinderKeys is to collect, organize, and verify the keys and dictionaries for every relevant FromSoftware game in one convenient and platform-agnostic package. They're primarily intended for tool developers, not end-users, although if you know what you're doing you may be able to use them to update older tools with newer information.

If you find this resource useful, you can support me on Ko-fi or Patreon.

Usage

The recommended way to include this data in your own project is to add it as a git submodule, for ease of updating and in case of any structural changes.

Hash Dictionaries

Each game includes a Hash directory with the hash dictionaries for each binder. The filename matches the corresponding .bhd file, with the extension changed to .txt.

Paths are guaranteed to be in normalized form (alias stripped, lowercase, Unix separators, leading slash), so no processing is needed before hashing.

Encryption Keys

Games with encrypted binders include a Key directory with the RSA keys for each binder in PEM format. The filename matches the corresponding .bhd file, with the extension changed to .pem.

Please note that not all games encrypt their binders, so the Key directory shouldn't be assumed to be present. Dark Souls 2 is a special case (as usual) where the encryption keys were changed with each binder update; for consistency the keys for the latest version are included here, but if your project needs to support older versions you should load the .pem files helpfully shipped with the game instead.

Contributing

If you've found any of the missing hashes below, you can submit them as either a PR to update the dictionaries or an issue listing the game and paths. Don't worry about updating this document, as I'll rerun the coverage report after any changes regardless.

Please verify paths before submitting and ensure that they aren't false positives, which are quite common to find in games with 32-bit hashes.

Contributors

Many people have contributed to the hash dictionaries over the years; I've recorded those I can recall, but if your name should be on (or off) this list, please let me know.

  • Atvaark
  • B3LYP
  • Dropoff
  • horkrux
  • HotPocketRemix
  • jenkinsushi
  • Lance
  • Meowmaritus
  • Nordgaren
  • philiquaz
  • sekirodubi
  • Shion
  • TKGP (Maintainer)
  • tremwil
  • WarpZephyr
  • wxvu

Coverage

| Game | Hashes Found | Hashes Total | Percent | |---|---:|---:|---:| | (All) | 384,431 | 385,478 | 99.72% | | ArmoredCore5_PS3 | 19,779 | 19,972 | 99.03% | | ArmoredCore5_X360 | 19,611 | 19,806 | 99.01% | | ArmoredCore6_PC | 37,171 | 37,171 | 100.00% | | ArmoredCoreVerdictDay_PS3 | 16,830 | 17,168 | 98.03% | | ArmoredCoreVerdictDay_X360 | 16,601 | 16,920 | 98.11% | | DarkSouls_PC | 6,244 | 6,244 | 100.00% | | DarkSouls_PS3 | 6,697 | 6,697 | 100.00% | | DarkSouls_X360 | 6,332 | 6,332 | 100.00% | | DarkSouls2_PC | 18,946 | 18,946 | 100.00% | | DarkSouls2Scholar_PC | 16,360 | 16,360 | 100.00% | | DarkSouls3_PC | 15,701 | 15,701 | 100.00% | | DarkSoulsRemastered_NS | 6,005 | 6,005 | 100.00% | | EldenRing_PC | 130,958 | 130,958 | 100.00% | | EldenRingNightreign_PC | 32,288 | 32,288 | 100.00% | | Sekiro_PC | 8,765 | 8,765 | 100.00% | | SekiroSoundtrack_PC | 184 | 186 | 98.92% | | SteelBattalionHeavyArmor_X360 | 25,959 | 25,959 | 100.00% |

ArmoredCore5_PS3

Back to top | Binder | Hashes Found | Hashes Total | Percent | |---|---:|---:|---:| | dvdbnd5 | 19,779 | 19,972 | 99.03% |

Hashes Missed

| Binder | Hash | Sources | |---|---:|---| | dvdbnd5 | 1acc0055 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | e59f2b51 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 4cec3e0f | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | ae08503c | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 77357017 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | fa27b376 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 737a1dd3 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | a74af308 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | e59f1560 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | c445d4df | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 16da15dd | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 4036b65a | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | a25b692e | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | cdcc77fa | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 4943a0e8 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 64adefed | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 687b6648 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 9f2bd244 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 16d9ffec | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | a25b533d | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 787123e9 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 8d22e9b2 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 64add9fc | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | b5a9fc17 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 9f2bbc53 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | f9106a9b | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | c3c5b821 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | b5a9e626 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 1e682e51 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | c644f349 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 90610915 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | c448723a | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | b1253424 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 6f687284 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | af6f2199 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 34e65824 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 9060f324 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | b1251e33 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 6f685c93 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | af6f0ba8 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 91530b54 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 52850f2a | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 6bf96e8b | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 40dc2922 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | f4048fe4 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 2d86cdb7 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 9152f563 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | a2a3fb4f | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | fd6d7cbc | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | f878613e | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | dcc3fc9d | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 4cee1460 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 394c761a | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | f40479f3 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | b8fd096f | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | c7bafe1f | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | ea4a81bc | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 0348d575 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 4cedfe6f | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 7c553b97 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | c99e921f | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | ea4a6bcb | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | c548d09e | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | f55e8030 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 6474be0b | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | c548baad | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 9ef2a062 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 964fa3cc | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 2939ed13 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 882728fe | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | bc3d98f7 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 6474a81a | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | b570ca35 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 9ef28a71 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 2939d722 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | bd30206c | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 8827130d | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | bc3d8306 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 682c26c7 | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | b570b444 | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | a563f37d | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 5a834f1d | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | 09a4479e | BLES01440<br>BLUS30516<br>BLJM60378<br>NPJB90482 | | dvdbnd5 | 0763850b | BLES01440<br>BLUS30516<br>BLJM60378 | | dvdbnd5 | `1a

View on GitHub
GitHub Stars12
CategoryDevelopment
Updated1mo ago
Forks1

Security Score

90/100

Audited on Feb 25, 2026

No findings