Opened 13 years ago

Closed 13 years ago

#681 closed enhancement (fixed)

[with patch] new MQ submodule for sage.crypto

Reported by: malb Owned by: was
Priority: major Milestone: sage-2.8.5
Component: algebraic geometry Keywords:
Cc: Merged in:
Authors: Reviewers:
Report Upstream: Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description

The attached patch implements a MPolynomialSystem, a MPolynomialSystemGenerator class, and as a generator for small scale AES variants.

MPolynomialSystem is supposed to model multivariate polynomial systems as they appear in e.g. algebraic cryptanalysis. The implemented design is as follows: There is a class MPolynomialSystem which models the actual polynomial system. This class contains a list of MPolynomialRoundSystems to model the rounds of a cipher to add some structure. MPolynomialSystem is furthermore specialised to MPolynomialSystem_gf2[e] classes which have additional features. E.g. systems over GF(2^e) can be projected down to GF(2) and systems over GF(2) may eventually contain rountines for ANF-CNF conversion.

Also there is a class called MPolynomialSystemGenerator which is meant as a base class for specific generators for polynomial systems like AES or the Courtois Toy Cipher (CTC).

The patch also contains a generator for polynomial systems for small scale AES variants (SR) over GF(2) and GF(2^e) as introduced in http://www.isg.rhul.ac.uk/~sean/smallAES-fse05.pdf .

Attachments (2)

mq.patch (85.6 KB) - added by malb 13 years ago.
mq-change_ring-bugfix.patch (2.0 KB) - added by malb 13 years ago.

Download all attachments as: .zip

Change History (5)

Changed 13 years ago by malb

comment:1 Changed 13 years ago by malb

Great, first bugfix already. See second attachment.

Changed 13 years ago by malb

comment:2 Changed 13 years ago by mhansen

  • Summary changed from new MQ submodule for sage.crypto [with patch] to [with patch] new MQ submodule for sage.crypto

comment:3 Changed 13 years ago by was

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.