A Practice to Enhance Sequential Team Work in Mathematical Topics

Javier Rodrigo Hitos 
 Susana Merchán Rubira

Abstract

This paper presents the work performed by the authors with the objective of carrying out a practical experience with the students of the second course of Computer Engineering degree in the computer room. In this experience, firstly, the students are divided into groups. Due to the construction of the exercise, each group of students needed the results of the previous group to do its part of the work. In this way, the practical session improves the ability of the students to work by teams in a sequenced way. Since team working is one of the main abilities that Engineering Companies value in their workers, this didactic experience could be an interesting opportunity to enhance this skill in future engineers.

The practice is framed in the field of Discrete Mathematics. It consists in encoding and decoding a message by applying the RSA algorithm by means of Mathematica (the math software of the Wolfram team). The algorithm was developed in the theoretical sessions within the topic dedicated to the Number Theory as an example of the real life application of classical concepts that are studied in this field, such as the prime numbers, the modular arithmetic and the Euler theorem. Therefore, besides its didactical importance, the practice also provides resources for the students to implement this application.

Development

We create the prime numbers p and q from m=1532 (number to encode):

NextPrime[10000]

NextPrime[%]

We find n:

10007 %

We find phi(n):

(10007-1)(10009-1)

We find e (for the public key):

FactorInteger[%]

We can choose e as the first prime number no included in the factorization of phi(n): e=5. Now we find d (for the private key):

PowerMod[5,-1,100140048]

We encode:

PowerMod[1532,5,100160063]

We decode:

PowerMod[%,60084029,100160063]