#6164: [with patch, needs work] Phan's Mini-AES for educational purposes
--------------------------+-------------------------------------------------
 Reporter:  mvngu         |       Owner:  somebody                   
     Type:  enhancement   |      Status:  new                        
 Priority:  major         |   Milestone:  sage-4.0.1                 
Component:  cryptography  |    Keywords:  Mini-AES, AES, cryptography
--------------------------+-------------------------------------------------

Comment(by mvngu):

 Replying to [comment:2 malb]:
 > Hi, how does the MiniAES compare to the small scale AES variants already
 in Sage?
 [[BR]]
 As you know, Mini-AES was designed as a very small scale variant of the
 AES. It can be used to teach crypto to computer science students who don't
 have the necessary maths background to understand finite fields and
 (basic) abstract algebra. Ideally, such students should have taken at
 least two courses in basic calculus, and at least two courses in
 programming. As I see it, Mini-AES and the implementation contained in the
 patch require "minimum" maths background for crypto students to work
 through the processes of encryption and decryption. As noted in the paper
 [[BR]][[BR]]
 C. Cid, S. Murphy, and M. Robshaw. Small scale variants of the AES. In
 Proceedings of Fast Software Encryption 2005. LNCS 3557, Springer Verlag,
 2005.
 [[BR]][[BR]]
 Mini-AES and the simplified AES variant by Musa, Schaefer, and Wedig have
 been designed for teaching purposes. On the other hand, the small scale
 variants of the AES by Cid, Murphy, and Robshaw have been designed as a
 framework for cryptanalysis and comparing different cryptanalytic
 techniques that can be brought to bear on the AES or its small scale
 variants. As I see it, the small scale variants of Cid et al. require far
 more advanced maths to describe and use. To be fair, the simplified
 variant by Musa et al. also requires far too much advanced maths than is
 suitable for someone who requires a basic understanding of how AES works.
 [[BR]][[BR]]
 What I want to do with the patch is to implement a variant of the AES that
 fits in with Neal Koblitz's idea of Kid Krypto, where one should not
 require too much advanced maths to describe the working of a cryptosystem.
 Each method of the class {{{MiniAES}}} is designed so that a student can
 follow through the whole processes of encryption and decryption, one step
 at a time. But the class also has a callable that a student can use to
 perform encryption or decryption in one step.
 [[BR]][[BR]]
 > I guess, they should at least re-use the same building blocks. e.g.
 there is an S-Box class which might be worth using, some of the functions
 might do the same etc.
 [[BR]]
 Yes. You got me there. I see what I can do to re-use the building blocks
 in {{{sage/crypto/mq/sr.py}}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6164#comment:3>
Sage <http://sagemath.org/>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to