All traffic between Mention Me and your site is encrypted via HTTPS by default. Further encryption is only needed in specific cases — discuss your use case with your Client Success Manager before implementing.
Overview
If you pass personal data in a landing page URL or tag, you can encrypt it so intermediaries cannot read it. Mention Me uses the Sodium crypto library (libsodium) with XSalsa20 encryption. A shared secret key (64-character hex string) is exchanged between you and Mention Me. You use it to encrypt; we use it to decrypt. Without encryption, a referral link looks like:Step-by-Step
URL-encode your parameters
Each parameter value must be URL-encoded first. For example,
person@example.com becomes person%40example.com.Generate a nonce
Create a random 24-byte (48-character) hex-encoded nonce. This must be different each time.Example:
11baf0cb9972615536256b13b2981c1d3cc86508718af061Encrypt with libsodium
Encrypt the query string using
crypto_secretbox from the Sodium library with your shared key and the nonce. This produces a binary cipher text.Libraries are available for:Validation
Encryption must include a valid email address as one of the encrypted fields, otherwise the request will be rejected.Example
Given:- Query string:
email=person%40example.com&firstname=John&surname=Smith - Key:
1234567890123456789012345678901234567890123456789012345678901234 - Nonce:
123456789012345678901234567890123456789012345678
In a referrer tag
Unencrypted:mm_e parameter.