元胞自动机加密算法中的错误段

Errant segments in cellular automata encryption algorithm

我一直在实施一篇论文,该论文旨在通过基本元胞自动机使用 64 位块密码进行物联网加密。该论文在 README 的 repository/linked 中。

我正在尝试验证该算法的实现是否确实有效。

当前状态

第一段和第三段没有正确解密,我认为这是由于使用了规则 153。

P: deadbeefcafebabe
K: f6c78663f3578746
E: ce09ac834be8ba8d
D: df8cbeefcbcbbabe

我已经验证的事情

我在论文中注意到的勘误表

问题

规则 153 是否真的适用于在解密过程中反转自动机?规则 51 本质上是前一个纪元的 NOT,所以我希望规则 153 的逆运算在解密过程中使用,但似乎不可逆。

如果有人可以看一下我哪里出错了并提供反馈,我将不胜感激。我已经给作者发了邮件,还没有收到回复。

代码

https://github.com/optimisticninja/caencryption

在遍历所有自动机规则后,对于交替段,只有线性规则代替 153。规则 29 似乎是传播明文的最佳选择。

RULE 29
P: deadbeefcafebabe
K: f6c78663f3578746
E: ce09bfd34be8a898
D: deadbeefcafebabe
RULE 51
P: deadbeefcafebabe
K: f6c78663f3578746
E: ce09bfd34be8a898
D: deadbeefcafebabe
RULE 204
P: deadbeefcafebabe
K: f6c78663f3578746
E: ce09bfd34be8a898
D: deadbeefcafebabe
RULE 205
P: deadbeefcafebabe
K: f6c78663f3578746
E: ce09bfd34be8a898
D: deadbeefcafebabe