In this research, we introduce MIND-Crypt, a novel attack framework that uses deep learning (DL) and transfer learning (TL) to challenge the indistinguishability of block ciphers, specifically SPECK32/64 encryption algorithm in CBC mode (Cipher Block Chaining) against Known Plaintext Attacks (KPA). Our methodology includes training a DL model with ciphertexts of two messages encrypted using the same key. The selected messages have the same byte-length and differ by only one bit at the binary level. This DL model employs a residual network architecture. For the TL, we use the trained DL model as a feature extractor, and these features are then used to train a shallow machine learning, such as XGBoost. This dual strategy aims to distinguish ciphertexts of two encrypted messages, addressing traditional cryptanalysis challenges. Our findings demonstrate that the DL model achieves an accuracy of approximately 99% under consistent cryptographic conditions (Same Key or Rounds) with the SPECK32/64 cipher. However, performance degrades to random guessing levels (50%) when tested with ciphertext generated from different keys or different encryption rounds of SPECK32/64. To enhance the results, the DL model requires retraining with different keys or encryption rounds using larger datasets (10^7 samples). To overcome this limitation, we implement TL, achieving an accuracy of about 53% with just 10,000 samples, which is better than random guessing. Further training with 580,000 samples increases accuracy to nearly 99%, showing a substantial reduction in data requirements by over 94%. This shows that an attacker can utilize machine learning models to break indistinguishability by accessing pairs of plaintexts and their corresponding ciphertexts encrypted with the same key, without directly interacting with the communicating parties.
翻译:在本研究中,我们提出了MIND-Crypt,一种新颖的攻击框架,该框架利用深度学习(DL)和迁移学习(TL)来挑战分组密码的不可区分性,具体针对CBC模式(密码分组链接)下的SPECK32/64加密算法在已知明文攻击(KPA)场景下的安全性。我们的方法包括使用同一密钥加密的两条消息的密文训练一个DL模型。所选消息具有相同的字节长度,且在二进制级别仅相差一个比特。该DL模型采用了残差网络架构。对于TL,我们将训练好的DL模型用作特征提取器,然后利用这些特征来训练一个浅层机器学习模型,例如XGBoost。这种双重策略旨在区分两条加密消息的密文,以应对传统密码分析的挑战。我们的研究结果表明,在一致的密码学条件下(相同密钥或加密轮数),该DL模型对SPECK32/64密码的区分准确率可达约99%。然而,当使用不同密钥或SPECK32/64不同加密轮数生成的密文进行测试时,其性能会下降至随机猜测水平(50%)。为了提升结果,DL模型需要使用更大规模的数据集(10^7个样本)并针对不同密钥或加密轮数进行重新训练。为了克服这一限制,我们实施了TL,仅用10,000个样本就实现了约53%的准确率,优于随机猜测。进一步使用580,000个样本进行训练可将准确率提升至近99%,这表明数据需求大幅减少了超过94%。这表明攻击者可以通过访问使用相同密钥加密的明文-密文对,利用机器学习模型来破解不可区分性,而无需直接与通信方交互。