In a public key cryptosystem a first sub matrix of a public key encoding matrix is used for encoding message data into a shortened codeword. A second sub matrix of a public key encoding matrix is used for encoding part of a randomly generated error pattern so as to determine the corresponding parity bits. A shortened ciphertext is constructed using the shortened codeword, said parity bits and another part of the error pattern such that the syndrome is the same as that of a full length ciphertext with length equal to a codeword of the error correcting code. With the decoupling of ciphertext length and error pattern length a number of embodiments are described which defeat attacks based on information set decoding.
展开▼