Abstract
Machine learning has recently started to gain the attention of cryptographic researchers, notably in block cipher cryptanalysis. Most of these machine learning-based approaches are black box attacks that are cipher-specific. Thus, more research is required to understand the capabilities and limitations of machine learning when being used to evaluate block cipher security. We contribute to this body of knowledge by investigating the capability of linear and nonlinear machine learning classifiers in evaluating block cipher security. We frame block cipher security evaluation as a classification problem, whereby the machine learning models attempt to classify a given block cipher output as secure or insecure based on the number of active S-boxes. We also train the machine learning models with common block cipher features such as truncated differences, the number of rounds, and permutation pattern. Various experiments were performed on small-scale (4-branch) generalized Feistel ciphers to identify the best performing machine learning model for the given security evaluation problem. Results show that nonlinear machine learning models outperform linear models, achieving a prediction accuracy of up to 93% when evaluating inputs from ciphers that they have seen before during training. When evaluating inputs from other unseen ciphers, nonlinear models again outperformed linear models with an accuracy of up to 71%. We then showcase the feasibility of our approach when used to evaluate a real-world 16-branch generalized Feistel cipher, TWINE. By training the best performing nonlinear classifiers (k-nearest neighbour and decision tree) using data from other similar ciphers, the nonlinear classifiers achieved a 74% accuracy when evaluating differential data generated from TWINE. In addition, the trained classifiers were capable of generalizing to a larger number of rounds than they were trained for. Our findings showcase the feasibility of using simple machine learning classifiers as a security evaluation tool to assess block cipher security.
Highlights
B LOCK ciphers are symmetric-key encryption algorithms that require only one secret key for both encryption and decryption tasks
These results indicate that the machine learning models are better at security prediction for 16-branch generalized Feistel structure (GFS) ciphers as compared to 4-branch ciphers
In this paper, we investigated the use of machine learning classifiers for block cipher security evaluation
Summary
B LOCK ciphers are symmetric-key encryption algorithms that require only one secret key for both encryption and decryption tasks. A high identification rate of 90% was achieved if the same key was used for both training and testing data Another approach compared the performance of five different machine learning algorithms when distinguishing encrypted traffic from unencrypted traffic [19]. Attacks that used machine or deep learning to directly perform key recovery did not give any advantage over random guessing [9], [10] Those successful machine learning-based approaches were only applicable to a cipher with a reduced keyspace [26] , classical ciphers that are no longer in use [11], [12] or for algorithm identification rather than security evaluation [14]– [19]. There have been past approaches that are generalizable to more ciphers [8], [20], [24], these approaches all utilized deep neural networks (deep learning) rather than simpler, standard machine learning models
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.