提出一种基于一维触发细胞自动机的数据加密算法.待加密的数据块被分成两个等长的子块在两个触发细胞自动机上并行加密.细胞自动机之间采用对称耦合结构,每个细胞自动机迭代时采用的反转规则不仅依赖于其自身的状态,也依赖于与其耦合的细胞自动机以及密钥流的状态.这种结构降低了硬件的实现代价并实现了密钥分存,确保只有在同时获得一对密文时才能正确解密,而且两个子数据块并行加密提高了加密效率.触发细胞自动机的反转规则由子密钥流和数据本身共同决定.密钥空间,即反转规则表,随着细胞自动机邻居半径增大呈指数增长,所以可以根据不同的安全性要求,通过增加细胞自动机的邻居半径来实现.
In this paper, a novel data encryption algorithm, which based on one dimension cellular automata (1-D CA), is proposed. Before eneryption plaintext is divided into two parts which are encrypted parallelly by two 1-D CAs. A symmetricalcoupled structure of toggle CAs is selected. In the structure, toggle rule of a CA not only depends on the CA itself, but also depends on states of other CA and the secret key. There are three merits of the structure. Firstly, encryption and decryption can share the structure which simplifies the hardware. Secondly, key divided-deposit scheme is adopted based on the structure, so only obtain two parts of cipher text can a receiver decrypt correctly. Lastly, two sub data blocks are encrypted parallelly which improve the efficiency of the encryption system. The key of this encryption system is the inverse rules of toggle cellular automata which not only based on secret key generated by a keystream generator, but also depends on plaintext itself. With increase of radius of CA, the key space of the system grows exponentially. So the security of the system can be adjusted by changing the radius of CAs according to user' s intention.