A Block Cipher Masking Technique for Single and Multi-Paired-User Environments

Document Type


Publication Date


Publication Title

International Journal on Advances in Security




A ciphertext inherits some properties of the plaintext, which is considered as a source of vulnerability and, therefore, it may be decrypted through a vigorous datamining process. The vulnerability increases when a community of users is communicating with each other. Masking the ciphertext is the solution to this vulnerability. We have developed a new block cipher masking technique named Vaccine for which the block size is random and each block is further divided into segments of random size. Each byte within a segment is instantiated using a dynamic multi-instantiation approach, which means (i) the use of Vaccine does not produce the same masked outcome for the same given ciphertext and key and (ii) the choices for masking different occurrences of a byte are extremely high. Vaccine is tested in both single-paired-user and multi-paired-user communities with the revoking option. A key agreement is used to manage key changes required by the revoking option. For testing in a single-paired-user environment, two sets (100 members in each) of 1K long plaintexts of natural (borrowed from natural texts) and synthesized (randomly generated from 10 characters to increase the frequency of characters in the plaintext) are built. For each plaintext, two ciphertexts are generated using Advanced Encryption System (AES-128) and Data Encryption Standard (DES) algorithms. Vaccine and two well-known masking approaches of Cipher Block Chaining (CBC), and Cipher Feedback (CFB) are applied separately on each ciphertext. On average: (a) the Hamming distance between masked and unmasked occurrences of a byte using Vaccine is 0.72 bits higher than using the CBC, and CFB, and (b) Vaccine throughput is also 3.4 times and 1.8 times higher than the throughput for CBC and CFB, correspondingly, and (c) Vaccine masking strength is 1.5% and 1.8% higher than the masking strength for CBC and CFB, respectively. For testing in a multi-paired-user community with the revoking option, the findings remain the same for every single-paired-user. However, there is an overhead cost related to re-keying and re-profiling, which is caused by the revoking of a user from the community or expanding the community of users. The overhead cost is linearly related to the size of community.