35 research outputs found
A CP-based Automatic Tool for Instantiating Truncated Differential Characteristics - Extended Version
An important criteria to assert the security of a cryptographic primitive is its resistance against differential cryptanalysis. For word-oriented primitives, a common technique to determine the number of rounds required to ensure the immunity against differential distinguishers is to consider truncated differential characteristics and to count the number of active S-boxes. Doing so allows one to provide an upper bound on the probability of the best differential characteristic with a reduced computational cost. However, in order to design very efficient primitives, it might be needed to evaluate the probability more accurately. This is usually done in a second step, during which one tries to instantiate truncated differential characteristics with actual values and computes its corresponding probability. This step is usually done either with ad-hoc algorithms or with CP, SAT or MILP models that are solved by generic solvers. In this paper, we present a generic tool for automatically generating these models to handle all word-oriented ciphers. Furthermore the running times to solve these models are very competitive
with all the previous dedicated approaches
Single step synthesis and organization of gold colloids assisted by copolymer templates
We report here an original single-step process for synthesis and
self-organization of gold colloids by simply incorporating gold salts into a
solution prepared with Polystyrene (PS) - Polymethylmethacrylate (PMMA)
copolymer, thiolated PS and Propylene Glycol Methyl Ether Acetate (PGMEA) as
solvent. The spin-coating and annealing of this solution allows then the
formation of PS domains. Depending on the polymer concentration of the
as-prepared solution, there can be either one or several gold nanoparticles
(NPs) per PS domains. For high concentration of gold nanoparticles in PS
domains, the coupling between plasmonic nanoparticles leads to the observation
of second peak in the optical extinction spectrum. Such collective effect could
be relevant for the development of optical strain sensors in the next future.Comment: 8 pages, 6 figure
Utilisation de solveurs génériques pour la cryptanalyse de chiffrements symétriques
Cryptography is a critical science for our connected societies. It involves the design, analysis and implementation of cipher algorithms. Analyzing ciphers is a mandatory step to ensure their security, but this task is often tedious. In symmetric cryptography, this analysis mainly focuses on finding distinguishers, properties that distinguish a ciphertext from a random message. Generic solvers are tools originally created to solve problems like planning or scheduling. They are regularly improved and have become good candidates to facilitate cryptanalysis. This thesis focuses on the analysis and design of symmetric ciphers with the help of generic solvers, in particular constraint programming (CP) solvers. We have explored several leads to improve cryptanalysis techniques and solvers. We modeled as a graph the search for distinguishers (specifically the search for superpoly in the Trivium cipher) and solved this problem more efficiently. We have studied the property of diffusion in generalized Feistel networks thus improving their design. Next, we proposed a tool to automatically generate CP models for differential cryptanalysis. Finally, we focused on CP solvers themselves by proposing a technique to generate explanations and thus improve their performance.La cryptographie est une science cruciale pour nos sociĂ©tĂ©s connectĂ©es. Elle implique la conception l'analyse et la mise en Ćuvre d'algorithmes de chiffrement. L'analyse des chiffrements est une Ă©tape obligatoire pour assurer leur sĂ©curitĂ©, mais cette tĂąche est souvent fastidieuse. En cryptographie symĂ©trique, cette analyse porte principalement sur la recherche de distingueurs, des propriĂ©tĂ©s qui distinguent un message chiffrĂ© d'un message alĂ©atoire. Les solveurs gĂ©nĂ©riques sont des outils crĂ©Ă©s Ă l'origine pour rĂ©soudre des problĂšmes comme la planification ou l'ordonnancement. Ils sont rĂ©guliĂšrement amĂ©liorĂ©s et sont devenus des bons candidats pour faciliter la cryptanalyse. Cette thĂšse s'intĂ©resse Ă l'analyse et la conception des chiffrements symĂ©triques avec l'aide des solveurs gĂ©nĂ©riques, notamment de programmation par contraintes (CP). Nous avons explorĂ© plusieurs pistes pour amĂ©liorer les techniques de cryptanalyse et les solveurs. Nous avons modĂ©lisĂ© sous forme de graphe la recherche de distingueurs (plus prĂ©cisĂ©ment la recherche de superpoly dans le chiffrement Trivium) et avons rĂ©solu ce problĂšme plus efficacement. Nous avons Ă©tudiĂ© la propriĂ©tĂ© de diffusion dans les rĂ©seaux de Feistel gĂ©nĂ©ralisĂ©s amĂ©liorant ainsi leur conception. Ensuite, nous avons proposĂ© un outil pour gĂ©nĂ©rer automatiquement des modĂšles CP utiles pour la cryptanalyse diffĂ©rentielle. Enfin, nous nous sommes intĂ©ressĂ©s aux solveurs CP eux-mĂȘmes en proposant une technique pour gĂ©nĂ©rer des explications et ainsi amĂ©liorer leurs performances
Utilisation de solveurs génériques pour la cryptanalyse de chiffrements symétriques
Cryptography is a critical science for our connected societies. It involves the design, analysis and implementation of cipher algorithms. Analyzing ciphers is a mandatory step to ensure their security, but this task is often tedious. In symmetric cryptography, this analysis mainly focuses on finding distinguishers, properties that distinguish a ciphertext from a random message. Generic solvers are tools originally created to solve problems like planning or scheduling. They are regularly improved and have become good candidates to facilitate cryptanalysis. This thesis focuses on the analysis and design of symmetric ciphers with the help of generic solvers, in particular constraint programming (CP) solvers. We have explored several leads to improve cryptanalysis techniques and solvers. We modeled as a graph the search for distinguishers (specifically the search for superpoly in the Trivium cipher) and solved this problem more efficiently. We have studied the property of diffusion in generalized Feistel networks thus improving their design. Next, we proposed a tool to automatically generate CP models for differential cryptanalysis. Finally, we focused on CP solvers themselves by proposing a technique to generate explanations and thus improve their performance.La cryptographie est une science cruciale pour nos sociĂ©tĂ©s connectĂ©es. Elle implique la conception l'analyse et la mise en Ćuvre d'algorithmes de chiffrement. L'analyse des chiffrements est une Ă©tape obligatoire pour assurer leur sĂ©curitĂ©, mais cette tĂąche est souvent fastidieuse. En cryptographie symĂ©trique, cette analyse porte principalement sur la recherche de distingueurs, des propriĂ©tĂ©s qui distinguent un message chiffrĂ© d'un message alĂ©atoire. Les solveurs gĂ©nĂ©riques sont des outils crĂ©Ă©s Ă l'origine pour rĂ©soudre des problĂšmes comme la planification ou l'ordonnancement. Ils sont rĂ©guliĂšrement amĂ©liorĂ©s et sont devenus des bons candidats pour faciliter la cryptanalyse. Cette thĂšse s'intĂ©resse Ă l'analyse et la conception des chiffrements symĂ©triques avec l'aide des solveurs gĂ©nĂ©riques, notamment de programmation par contraintes (CP). Nous avons explorĂ© plusieurs pistes pour amĂ©liorer les techniques de cryptanalyse et les solveurs. Nous avons modĂ©lisĂ© sous forme de graphe la recherche de distingueurs (plus prĂ©cisĂ©ment la recherche de superpoly dans le chiffrement Trivium) et avons rĂ©solu ce problĂšme plus efficacement. Nous avons Ă©tudiĂ© la propriĂ©tĂ© de diffusion dans les rĂ©seaux de Feistel gĂ©nĂ©ralisĂ©s amĂ©liorant ainsi leur conception. Ensuite, nous avons proposĂ© un outil pour gĂ©nĂ©rer automatiquement des modĂšles CP utiles pour la cryptanalyse diffĂ©rentielle. Enfin, nous nous sommes intĂ©ressĂ©s aux solveurs CP eux-mĂȘmes en proposant une technique pour gĂ©nĂ©rer des explications et ainsi amĂ©liorer leurs performances
Utilisation de solveurs génériques pour la cryptanalyse de chiffrements symétriques
Cryptography is a critical science for our connected societies. It involves the design, analysis and implementation of cipher algorithms. Analyzing ciphers is a mandatory step to ensure their security, but this task is often tedious. In symmetric cryptography, this analysis mainly focuses on finding distinguishers, properties that distinguish a ciphertext from a random message. Generic solvers are tools originally created to solve problems like planning or scheduling. They are regularly improved and have become good candidates to facilitate cryptanalysis. This thesis focuses on the analysis and design of symmetric ciphers with the help of generic solvers, in particular constraint programming (CP) solvers. We have explored several leads to improve cryptanalysis techniques and solvers. We modeled as a graph the search for distinguishers (specifically the search for superpoly in the Trivium cipher) and solved this problem more efficiently. We have studied the property of diffusion in generalized Feistel networks thus improving their design. Next, we proposed a tool to automatically generate CP models for differential cryptanalysis. Finally, we focused on CP solvers themselves by proposing a technique to generate explanations and thus improve their performance.La cryptographie est une science cruciale pour nos sociĂ©tĂ©s connectĂ©es. Elle implique la conception l'analyse et la mise en Ćuvre d'algorithmes de chiffrement. L'analyse des chiffrements est une Ă©tape obligatoire pour assurer leur sĂ©curitĂ©, mais cette tĂąche est souvent fastidieuse. En cryptographie symĂ©trique, cette analyse porte principalement sur la recherche de distingueurs, des propriĂ©tĂ©s qui distinguent un message chiffrĂ© d'un message alĂ©atoire. Les solveurs gĂ©nĂ©riques sont des outils crĂ©Ă©s Ă l'origine pour rĂ©soudre des problĂšmes comme la planification ou l'ordonnancement. Ils sont rĂ©guliĂšrement amĂ©liorĂ©s et sont devenus des bons candidats pour faciliter la cryptanalyse. Cette thĂšse s'intĂ©resse Ă l'analyse et la conception des chiffrements symĂ©triques avec l'aide des solveurs gĂ©nĂ©riques, notamment de programmation par contraintes (CP). Nous avons explorĂ© plusieurs pistes pour amĂ©liorer les techniques de cryptanalyse et les solveurs. Nous avons modĂ©lisĂ© sous forme de graphe la recherche de distingueurs (plus prĂ©cisĂ©ment la recherche de superpoly dans le chiffrement Trivium) et avons rĂ©solu ce problĂšme plus efficacement. Nous avons Ă©tudiĂ© la propriĂ©tĂ© de diffusion dans les rĂ©seaux de Feistel gĂ©nĂ©ralisĂ©s amĂ©liorant ainsi leur conception. Ensuite, nous avons proposĂ© un outil pour gĂ©nĂ©rer automatiquement des modĂšles CP utiles pour la cryptanalyse diffĂ©rentielle. Enfin, nous nous sommes intĂ©ressĂ©s aux solveurs CP eux-mĂȘmes en proposant une technique pour gĂ©nĂ©rer des explications et ainsi amĂ©liorer leurs performances
Utilisation de solveurs génériques pour la cryptanalyse de chiffrements symétriques
Cryptography is a critical science for our connected societies. It involves the design, analysis and implementation of cipher algorithms. Analyzing ciphers is a mandatory step to ensure their security, but this task is often tedious. In symmetric cryptography, this analysis mainly focuses on finding distinguishers, properties that distinguish a ciphertext from a random message. Generic solvers are tools originally created to solve problems like planning or scheduling. They are regularly improved and have become good candidates to facilitate cryptanalysis. This thesis focuses on the analysis and design of symmetric ciphers with the help of generic solvers, in particular constraint programming (CP) solvers. We have explored several leads to improve cryptanalysis techniques and solvers. We modeled as a graph the search for distinguishers (specifically the search for superpoly in the Trivium cipher) and solved this problem more efficiently. We have studied the property of diffusion in generalized Feistel networks thus improving their design. Next, we proposed a tool to automatically generate CP models for differential cryptanalysis. Finally, we focused on CP solvers themselves by proposing a technique to generate explanations and thus improve their performance.La cryptographie est une science cruciale pour nos sociĂ©tĂ©s connectĂ©es. Elle implique la conception l'analyse et la mise en Ćuvre d'algorithmes de chiffrement. L'analyse des chiffrements est une Ă©tape obligatoire pour assurer leur sĂ©curitĂ©, mais cette tĂąche est souvent fastidieuse. En cryptographie symĂ©trique, cette analyse porte principalement sur la recherche de distingueurs, des propriĂ©tĂ©s qui distinguent un message chiffrĂ© d'un message alĂ©atoire. Les solveurs gĂ©nĂ©riques sont des outils crĂ©Ă©s Ă l'origine pour rĂ©soudre des problĂšmes comme la planification ou l'ordonnancement. Ils sont rĂ©guliĂšrement amĂ©liorĂ©s et sont devenus des bons candidats pour faciliter la cryptanalyse. Cette thĂšse s'intĂ©resse Ă l'analyse et la conception des chiffrements symĂ©triques avec l'aide des solveurs gĂ©nĂ©riques, notamment de programmation par contraintes (CP). Nous avons explorĂ© plusieurs pistes pour amĂ©liorer les techniques de cryptanalyse et les solveurs. Nous avons modĂ©lisĂ© sous forme de graphe la recherche de distingueurs (plus prĂ©cisĂ©ment la recherche de superpoly dans le chiffrement Trivium) et avons rĂ©solu ce problĂšme plus efficacement. Nous avons Ă©tudiĂ© la propriĂ©tĂ© de diffusion dans les rĂ©seaux de Feistel gĂ©nĂ©ralisĂ©s amĂ©liorant ainsi leur conception. Ensuite, nous avons proposĂ© un outil pour gĂ©nĂ©rer automatiquement des modĂšles CP utiles pour la cryptanalyse diffĂ©rentielle. Enfin, nous nous sommes intĂ©ressĂ©s aux solveurs CP eux-mĂȘmes en proposant une technique pour gĂ©nĂ©rer des explications et ainsi amĂ©liorer leurs performances
Optimization of vertical Au nanorods self-assembly onto elastomeric substrates for plasmonic strain sensors: a numerical study
International audienc
Conflict analysis in CP solving: Explanation generation from constraint decomposition
International audienceThe interest of Conflit-Driven Clause Learning (CDCL) [7] in SAT solving is well established. An adaptation of CDCL to Constraint Programming have been introduced in [14,15]. However, for the algorithm to run on global constraints, there is still a need to specify for each of them the explanation rules. This is a huge obstacle on its standardisation in off-the-shelf solvers. In this paper, we propose a method to automatically generate explanation rules from any constraint decomposition
Conflict Analysis in CP Solving: Explanation Generation from Constraint Decomposition
No abstract available
Diffusion totale dans le schéma de Feistel généralisé
International audienceLa cryptographie tient un rĂŽle central dans nos sociĂ©tĂ©s actuelles.Elle consiste Ă protĂ©ger des messages en les chiffrant, la qualitĂ© d'un algorithme de chiffrement se juge sur son efficacitĂ© (rapiditĂ© Ă chiffrer/dĂ©chiffrer un message) et sa rĂ©sistance aux attaques connues.Notre Ă©tude porte sur la cryptographie symĂ©trique, oĂč la mĂȘme clĂ© sert pour le chiffrement et le dĂ©chiffrement, et en particulier sur le schĂ©ma de Feistel gĂ©nĂ©ralisĂ©.Il s'agit d'un schĂ©ma de chiffrement symĂ©trique par bloc oĂč une fonction dite de tour est appliquĂ©e sur le message et la clĂ©, Ă plusieurs reprises ou tours. Un tour du schĂ©ma de Feistel est sĂ©parĂ© en deux Ă©tapes: d'abordchaque paire de blocs mĂ©lange le contenu de ses deux blocs Ă l'aide d'un XOR bit Ă bit,puis une permutation est appliquĂ©e entre tous les blocs.La robustesse de ce schĂ©ma est directement liĂ©e Ă sa diffusion c'est-Ă -dire, au fait que chaque blocsoit dĂ©pendant de tous les autres aprĂšs plusieurs applications de la fonction de tour.Le problĂšme consiste Ă trouver la permutation P qui diffuse totalement tous les blocs en le moins de tours possible.Les travaux prĂ©cĂ©dents ont principalement explorĂ© le cas spĂ©cifique appelĂ© pair-impair, oĂč la permutation envoie les blocs pairs sur les blocs impairs et inversement. Afin d'Ă©tudier l'existence de solutions optimales n'ayant pas cette structure, nous prĂ©sentons ici des pistes de modĂ©lisation en programmation par contraintes pour rĂ©soudre ce problĂšme