Masking is the level of data source encryption. It is the application of only one or both techniques, which are Ema_0 (replacement/substitution) and Ema_1 (shuffling/reordering), and both use a different key.
Ema_0 uses replacement for masking with its own key.
Ema_1 uses shuffling for masking with its own key
We will call direct substitution “replacement” and reverse substitution “substitution“, direct shuffling “shuffling” and reverse shuffling “reordering“.
Before starting, the data source must be copied and additional data inserted at the beginning and end.
During the unmasking phase, additional characters are required to verify that the unmasked data is correct. The EMA method doesn’t use any more or less complex mathematical algorithms, so we won’t know success or failure until the unmasking is complete!
Note:
Regarding the EMA software the masking stage may or may not calculate a checksum of the source data. If it does, the checksum is written into the data to be encrypted. During the unmasking step, the checksum is found and verified to ensure that the unmasked data is identical to the source. Using the checksum feature slows down a bit the masking and unmasking stages. The available algorithms for the checksum are ‘MD5’, ‘SHA-256’, or ‘SHA-512’. Calculating the checksum of the data source is not mandatory. If the data source is a file, the full original path is included and will be masked.