Optimized Modulo Addition with Expandable Security for Stream Ciphers

2018 Research Internship Project


Faculty Name

Reza Sedaghat

Project Title

Optimized Modulo Addition with Expandable Security for Stream Ciphers

Project Description

The study on polynomial attack identified algebraic immunity, an important property for Boolean functions, used as a metric in cryptosystems. Using good algebraic immunity, resistance against polynomial attacks can be achieved, e.g. using linearization. However, algebraic immunity has been deemed to be insufficient and the Describing Degree, which is the minimum algebraic degree can be entirely defined by equations of that minimum degree, has been developed. Although the complexity can vary depending on the specific method used, it can be generalized by employing complexity estimation with Gaussian Elimination. Algebraic Cryptanalysis involves polynomial attack and can be summarized in three steps. The first step is a system of multivariate polynomial equations that relate the input bits of the initial state and output bits of the keystream. There are methods for finding "localized" equations. The primary step is a pre-computation; the attacker must compute these equations before attacking a keystream. Also, the computation must be performed only once and the same equations can be utilized to resolve multiple keystreams. The second and final steps are performed after some keystreams have been observed. The observed keystream bits are substituted into the algebraic equations (from the first step) to obtain a system of algebraic equations in the bits of initial state. The final step is to solve these algebraic equations to determine initial state, which is possible if the equations are of low degree in the bits of initial state and a sufficient number of equations can be obtained from the observed keystream.

Student Responsibility

The research assistant will review relevant academic material concerning Modulo Addition structure which includes Input Expansion, Modulo Addition, and Output Compaction to develop a working knowledge of the project's core material. The assistant will investigate and implement relevant hardware and software (e.g. scikit in Python). The assistant will work with graduate students in the OPR Lab (http://www.ee.ryerson.ca/opr) and participate in regular meetings to report on research progress, difficulties, and insights. The assistant will prepare detailed, regular reports and a schedule. The main objectives/goals are: - Design evaluation of existing components such as Input Expansion, Modulo Addition, and Output Compaction - Case Study for Two types of Stream Ciphers encryption schemes - Design implantation of a stream cipher using combiner with memory e.g. SNOW 2.0. - Simulation and Analysis.

Specific Requirements

Strong programming skills (CPS125, COE318, COE538), strong understanding of algorithms and digital logic (COE328, COE428). Knowledge of Security Stream Cipher is an asset, but not necessary.

Reseach Internship Application

Reza Sedaghat : Optimized Modulo Addition with Expandable Security for Stream Ciphers | Monday March 26th 2018 04:06 PM