Encryption and error correction codes for reliable file storage

The application of encryption techniques to provide communications system security has been practised for a long time. More recently, these techniques have been applied to secure data storage systems. The purpose of a secure data storage system is to allow the user to encrypt a file, store the enciphered image, destroy the original, and reliably recover the file at a later date. The transmission and storage of digital information have so much in common that the same encryption methods are applied to both systems. This leads to some problems if the data is damaged during the storage or encryption processes. In current systems, these two problems are handled separately. This paper introduces and analyses a data storage system where redundancy is added to control errors introduced by the storage or encryption processes. Given that the sources of error are independent, the redundancy is added via error-correction codes in an independent fashion. As a consequence, the data is processed in two operations: pre-encryption coding, and channel/storage coding.