ENCRYPT — Message Storage and Privacy Limits
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.
What this is
Section titled “What this is”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.
What you actually do with it
Section titled “What you actually do with it”Encrypt(from, to, key, data)checks ownership of the sender’s SHIO and writes the result withExpiry = 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.
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.
Requirements & gating
Section titled “Requirements & gating”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.
Retention and privacy limits
Section titled “Retention and privacy limits”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.
Where it connects
Section titled “Where it connects”See ENCRYPT source and the sender/recipient SHIO ownership checks. The name “ENCRYPT” describes the interface; it is not a promise of confidential messaging.