I posted about this issue awhile back (forums, reddit), but was deliberately vague about the specific details. My reasoning was that I wanted to convince somebody to develop a countermeasure first, so that server administrators have the means to protect their world seeds before I give their players the means to discover them.
If you didn't see that thread, here's the summary: it is possible to discover a Minecraft world seed in less than a day using the locations of slime chunks, village wells, witch huts, desert temples, jungle temples, and/or (in 1.8) ocean monuments. Most of these structures are visible on a server's live map (if it has one), in which case anyone can discover the seed without even having to log in to the server as a player. But even without a live map, it is not difficult to gather enough of these locations by just exploring the world (it just takes longer).
I am posting again now because a basic countermeasure will (hopefully) be included in a future version of Spigot (thanks to md_5), in the form of "Further Seed Customization". By picking new (random, secret) values for the spawning algorithm of Villages and Huts/Temples (and hopefully eventually Slimes and Monuments), those structures will spawn in a slightly different pattern than vanilla Minecraft, which will make it impossible to use their locations to compute the world seed.
Unfortunately this will only protect brand new worlds, in which all structures spawn using the modified values. If an existing world already contains many structures that spawned using the default values, then those locations can still reveal the seed even if new structures spawn in a different pattern. In order to protect the seed of an existing world, the only option is to manually relocate (or completely destroy) a majority of the existing structures. Huts, temples and monuments must be moved in their entirety, but for villages, it is only necessary to move the well. It is not necessary to move structures very far -- just one chunk in any (random) direction would suffice -- but it would be best to move things by an even multiple of 16 blocks (i.e. entire chunks) so that there are fewer clues for someone to figure out where it originally spawned.
Now that a countermeasure is (soon, hopefully) available, my plan is to wait for Minecraft 1.8 to be released, so that server admins have plenty of time to get the latest Spigot, change their structure spawning numbers, and (if they choose) move their existing structures around to prevent them from giving away the world seed. Some time after 1.8, I will finally publish the rest of the technical details of the seed discovery process, as well as my source code that actually does it.
If server admins have any questions about how to protect their world seeds from this analysis, please post here and I'll try to answer them.
If you didn't see that thread, here's the summary: it is possible to discover a Minecraft world seed in less than a day using the locations of slime chunks, village wells, witch huts, desert temples, jungle temples, and/or (in 1.8) ocean monuments. Most of these structures are visible on a server's live map (if it has one), in which case anyone can discover the seed without even having to log in to the server as a player. But even without a live map, it is not difficult to gather enough of these locations by just exploring the world (it just takes longer).
I am posting again now because a basic countermeasure will (hopefully) be included in a future version of Spigot (thanks to md_5), in the form of "Further Seed Customization". By picking new (random, secret) values for the spawning algorithm of Villages and Huts/Temples (and hopefully eventually Slimes and Monuments), those structures will spawn in a slightly different pattern than vanilla Minecraft, which will make it impossible to use their locations to compute the world seed.
Unfortunately this will only protect brand new worlds, in which all structures spawn using the modified values. If an existing world already contains many structures that spawned using the default values, then those locations can still reveal the seed even if new structures spawn in a different pattern. In order to protect the seed of an existing world, the only option is to manually relocate (or completely destroy) a majority of the existing structures. Huts, temples and monuments must be moved in their entirety, but for villages, it is only necessary to move the well. It is not necessary to move structures very far -- just one chunk in any (random) direction would suffice -- but it would be best to move things by an even multiple of 16 blocks (i.e. entire chunks) so that there are fewer clues for someone to figure out where it originally spawned.
Now that a countermeasure is (soon, hopefully) available, my plan is to wait for Minecraft 1.8 to be released, so that server admins have plenty of time to get the latest Spigot, change their structure spawning numbers, and (if they choose) move their existing structures around to prevent them from giving away the world seed. Some time after 1.8, I will finally publish the rest of the technical details of the seed discovery process, as well as my source code that actually does it.
If server admins have any questions about how to protect their world seeds from this analysis, please post here and I'll try to answer them.