A Framework for Fine-Grained Nonlinearity Optimization of Boolean and Vectorial Boolean Functions
Boolean functions and vectorial Boolean functions (S-boxes) are widely used cryptographic primitives for achieving cryptanalytic resistance of modern block or stream ciphers. In the aspect of information security, one of the most desirable characteristics a given S-box should possess is a high nonli...
Main Author: | |
---|---|
Format: | Article |
Language: | English |
Published: |
IEEE
2021-01-01
|
Series: | IEEE Access |
Subjects: | |
Online Access: | https://ieeexplore.ieee.org/document/9530573/ |
id |
doaj-f52385a082fd441786e18935ba4148d8 |
---|---|
record_format |
Article |
spelling |
doaj-f52385a082fd441786e18935ba4148d82021-09-14T23:00:28ZengIEEEIEEE Access2169-35362021-01-01912491012492010.1109/ACCESS.2021.31107619530573A Framework for Fine-Grained Nonlinearity Optimization of Boolean and Vectorial Boolean FunctionsMiroslav M. Dimitrov0https://orcid.org/0000-0003-4428-5426Institute of Mathematics and Informatics, Bulgarian Academy of Sciences, Sofia, BulgariaBoolean functions and vectorial Boolean functions (S-boxes) are widely used cryptographic primitives for achieving cryptanalytic resistance of modern block or stream ciphers. In the aspect of information security, one of the most desirable characteristics a given S-box should possess is a high nonlinearity. In this paper, we project the nonlinearity optimization problem to the domain of binary integer programming. Then, we demonstrate how this interconnection could be successfully exploited by SAT solvers. The provided toolbox could serve in cases, where the designer’s goal is to increase (or intentionally decrease) the nonlinearity of a given S-box by applying as minimum changes as possible. For example, we demonstrate how the Skipjack S-box, developed by the U.S. National Security Agency (NSA), and the Kuznyechik S-box, developed by the Russian Federation’s standardization agency, could be optimized to a higher nonlinearity by tweaking, respectively, just 4 and 12 bits (out of 2048). In the end, we show that bijective (8,8) S-boxes, the eight coordinates of which possess the currently known optimal nonlinearity value of 116, do exist.https://ieeexplore.ieee.org/document/9530573/Boolean functionsinteger linear programmingcryptographyoptimizationS-boxnonlinearity |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Miroslav M. Dimitrov |
spellingShingle |
Miroslav M. Dimitrov A Framework for Fine-Grained Nonlinearity Optimization of Boolean and Vectorial Boolean Functions IEEE Access Boolean functions integer linear programming cryptography optimization S-box nonlinearity |
author_facet |
Miroslav M. Dimitrov |
author_sort |
Miroslav M. Dimitrov |
title |
A Framework for Fine-Grained Nonlinearity Optimization of Boolean and Vectorial Boolean Functions |
title_short |
A Framework for Fine-Grained Nonlinearity Optimization of Boolean and Vectorial Boolean Functions |
title_full |
A Framework for Fine-Grained Nonlinearity Optimization of Boolean and Vectorial Boolean Functions |
title_fullStr |
A Framework for Fine-Grained Nonlinearity Optimization of Boolean and Vectorial Boolean Functions |
title_full_unstemmed |
A Framework for Fine-Grained Nonlinearity Optimization of Boolean and Vectorial Boolean Functions |
title_sort |
framework for fine-grained nonlinearity optimization of boolean and vectorial boolean functions |
publisher |
IEEE |
series |
IEEE Access |
issn |
2169-3536 |
publishDate |
2021-01-01 |
description |
Boolean functions and vectorial Boolean functions (S-boxes) are widely used cryptographic primitives for achieving cryptanalytic resistance of modern block or stream ciphers. In the aspect of information security, one of the most desirable characteristics a given S-box should possess is a high nonlinearity. In this paper, we project the nonlinearity optimization problem to the domain of binary integer programming. Then, we demonstrate how this interconnection could be successfully exploited by SAT solvers. The provided toolbox could serve in cases, where the designer’s goal is to increase (or intentionally decrease) the nonlinearity of a given S-box by applying as minimum changes as possible. For example, we demonstrate how the Skipjack S-box, developed by the U.S. National Security Agency (NSA), and the Kuznyechik S-box, developed by the Russian Federation’s standardization agency, could be optimized to a higher nonlinearity by tweaking, respectively, just 4 and 12 bits (out of 2048). In the end, we show that bijective (8,8) S-boxes, the eight coordinates of which possess the currently known optimal nonlinearity value of 116, do exist. |
topic |
Boolean functions integer linear programming cryptography optimization S-box nonlinearity |
url |
https://ieeexplore.ieee.org/document/9530573/ |
work_keys_str_mv |
AT miroslavmdimitrov aframeworkforfinegrainednonlinearityoptimizationofbooleanandvectorialbooleanfunctions AT miroslavmdimitrov frameworkforfinegrainednonlinearityoptimizationofbooleanandvectorialbooleanfunctions |
_version_ |
1717379537050796032 |