Player's Guide

ENCRYPT — Message Storage and Privacy Limits

Last updated:

Evidence scope: The behavior below is from the pinned Solidity source. A source-file hash does not establish deployed bytecode equivalence. Check the selected deployment and caller before sending a transaction.

ENCRYPT stores transformed message bytes and an expiry timestamp. Do not use this interface to send confidential plaintext or a secret key. Both Encrypt overloads accept Key and Data as public call arguments. A normal transaction exposes those inputs in calldata, including when the call is made through another public contract. Caller checks on Decrypt do not make blockchain data confidential.

  • Encrypt(from, to, key, data) checks ownership of the sender’s SHIO and writes the result with Expiry = now + 10 days.
  • Decrypt(from, to, index, key) checks the recipient SHIO owner, computes its result, and then deletes the requested mapping entry if expired. It does not reject expiry before doing the calculation and does not call Prune.
  • Prune() is an explicit transaction, not a scheduled cleanup service. The pinned loop accesses _encryptions[i] rather than _encryptions[_indexes[i]] and mutates the index array while iterating. Do not assume it reliably removes all expired message entries.

Use these calls here. Simulations preview the current state; each confirmed call is a separate transaction.

ENCRYPTDeployment unresolved; calls unavailable.
ENCRYPT.Encrypt(uint64 From, uint64 to, string Key, string Data)Simulate / call

A callable deployment has not been resolved for this reference.

ENCRYPT.Decrypt(uint64 From, uint64 to, uint64 Index, string Key)Simulate / call

A callable deployment has not been resolved for this reference.

The string overloads forward to the bytes overloads. The ChromosomeLength check belongs to Saat(bytes), not to an Encrypt-key minimum. Crypt checks the index-array length against MotzkinPrime; the cleanup behavior matters to that limit.

An expired timestamp does not autonomously execute deletion. Deleting current storage does not remove earlier transaction inputs or historical chain data. The presence of a ciphertext field and ownership checks is not a security proof for the cryptographic scheme.

See ENCRYPT source and the sender/recipient SHIO ownership checks. The name “ENCRYPT” describes the interface; it is not a promise of confidential messaging.