Safety Deposit

An API for seamless encryption of itemstack metadata including a digital safe

Safety Deposit integrates with the Simple Cipher Mod to provide an additional layer of security for itemstack metadata using a 128-bit block cipher.

Since node inventories are sent to every connected client, it is possible to use either client-side modding or local map-saving to examine the contents of locked chests, mailboxes, etc. This has the potential to expose sensitive personal information, as in the case of written books which are often used for communication between players.

Itemstack metadata can be be encrypted and decrypted on the fly using the following two API functions, both of which supply the administrator username as the public key:

safety_deposit.encrypt_metadata( itemstack, data )
Serializes and encrypts the data, saving the resulting ciphertext as a Base-64 encoded string to the itemstack meta.

safety_deposit.decrypt_metadata( itemstack )
Decrypts and deserializes the itemstack meta. As a fallback, in case the string is not actually encrypted, it will simply be deserialized.

If someone happens to obtain a copy of the map (without the private key of the server owner), then it will be virtually impossible, outside of a sophisticated brute-force attack, to fully extract the metedata of these items once encrypted.

A digital safe can also be crafted with 7 steel blocks, 1 mese block, and 1 obsidian block for even higher-grade security. This container, once placed in world, encrypts its entire inventory, thereby thwarting any unwanted intruders. The only means of access is by a 4-digit PIN which only the owner (or team-members) will possibly know. Even the administrator cannot retrieve the access code if forgotten, so it is very important to write the number down immediatly after engaging the lock.

In order to remove the digital safe or to change its access code, all of the contents must first be removed. Then click the "Unlock" button within the inventory screen.