
SeedShield
Cryptographic structure seed protection for Paper/Spigot servers - prevents seed cracking tools from locating structures
SeedShield
Cryptographic structure seed protection for Paper/Spigot servers.
SeedShield prevents seed cracking tools (chunkbase, SeedCrackerX, Structurecracker) from determining structure locations by replacing each structure type's placement salt with an irreversible SHA-256 derived value.
This is the first Paper/Spigot plugin to provide cryptographic structure seed protection. Previously, this level of protection was only available through Fabric mods or custom server forks.
How It Works
Minecraft determines structure positions using this formula:
position = f(worldSeed, regionCoords, salt)
The salt is a hardcoded integer per structure type. Tools like chunkbase know these default salts, so knowing the world seed = knowing all structure locations.
SeedShield replaces each salt with:
salt = SHA-256(secretKey + ":" + worldSeed + ":" + structureType)[0..4]
- Per-structure isolation: Each structure type gets a unique cryptographic salt. Cracking one type's salt reveals nothing about others.
- Secret key protection: Without the 256-bit key (stored in
config.yml), salts cannot be reversed. - Stronghold protection: Also modifies
concentricRingsSeedand recalculates ring positions.
Installation
- Download
SeedShield-1.0.0.jar - Place it in your server's
plugins/folder - Delete the region files of worlds you want to protect (structures must regenerate)
- Restart the server
- Edit
plugins/SeedShield/config.ymlto configure which worlds to protect
Important: SeedShield only affects newly generated chunks. Existing structures in already-generated chunks will not change positions.
Configuration
# Auto-generated 256-bit secret key. DO NOT SHARE.
secret-key: "a1b2c3d4..."
# Worlds to protect
enabled-worlds:
- world
- survival
