## Description - Add encryption/decryption for messages before sending to smart contract - Use WebCrypto API or libsodium for encryption - Implement key exchange protocol between chat participants - Store encryption keys securely in the wallet - Add visual indicators for encrypted messages - Include error handling for failed decryption ## Acceptance Criteria - [ ] Messages are encrypted before being sent to the blockchain - [ ] Only intended recipients can decrypt messages - [ ] Encryption keys are stored securely - [ ] Visual indicators show message encryption status - [ ] Graceful error handling for decryption failures ## Technical Notes - Consider using libsodium for encryption - Need to handle key exchange between participants - Should work with existing wallet infrastructure
Description
Acceptance Criteria
Technical Notes