Course RSA

Math Enrichment Course
RSA Codes
Level A
Heleen Tims
June 2005
Introduction
Math Enrichment Courses at Maartens College
What is Math Enrichment?
The goal of the Math Enrichment courses is to stimulate students’ enthusiasm for
mathematics, both for the weaker and brighter mathematics students. The courses are
generally related to practical applications of mathematics and they illustrate how math
is part of everyday life. Topics vary from codes to optical illusions to fractals to logic
to the four-colour problem, etc. In this way we hope to inspire students and convince
them that mathematics is a subject to be enjoyed and on top of that, that it has many
practical uses. Especially for weaker students, an excursion into some areas of
mathematics that they are not aware of can be stimulating, more so than doing another
course on the fractions, for instance, that they do not understand. By experiencing
success in another area of mathematics, the student can become more motivated and
possibly more confident to tackle those areas with which he/she has difficulties.
Set-up at Maartens College
The Math Enrichment courses are part of the Small Groups Subjects (SGS)
programme. Each student in the first two years of the bi-lingual classes (TTO1-2) or
in the first three years of the International School (MYP1-3) takes part in this
programme. The student is required to take one course per term (3 terms in the year,
approximately 12 weeks per term). Of the three courses taken in a year, the student
must choose one Math Enrichment course, one IT course and one from Drama,
Debate or Current Events. The lessons are given to groups of 12 to 15 students who
come from different classes and streams.
The Math Enrichment programme connects closely to the way mathematics is taught
in the curriculum of the TTO and IS, where students receive regular opportunities for
doing mathematical investigations and projects.
Student Reactions
A great majority of students is surprised to find out that ‘this is also math’. In the
course of time, the math Enrichment courses have become firmly embedded into the
SGS programme. Generally students are enthusiastic about the courses. It has
occurred that students’ mathematical confidence has grown by finding out that there
are mathematical topics he/she is able to do. Next to that, the extra challenge for real
wiz-kids, for instance in the RSA course, has been greatly appreciated by both
students and parents.
How to use these course descriptions
The Math Enrichment courses were developed from material on internet,
mathematical books and sometimes magazines or newspapers. The description given
is a framework that has been developed over the years for a series of about ten lessons
for each course. In the booklets made for each course, the description is included
together with material that has been used in the course. The descriptions leave plenty
of room for flexibility, where you can delete some topics and add others. They are
meant as a basic platform from which you can develop the course further. It is work in
progress.
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
2
Heleen Tims
Course descriptions have been made for the following courses:
Level A:
• Computers and Binary Codes
• Cryptography
• Fractals
• Infinity
• Networks
• RSA Codes (probably the most challenging course)
• Topology
Level B
• Fibonacci numbers
• Fractals
• History of Codes
• Logic
• Map Colouring
Level C
• Islamic Art
• Tessellations
A Personal Note as Conclusion
I have enjoyed developing these courses and they have often brought mathematics to
life for me as well as for the students. In that sense also, I was sometimes on one level
with the students when I was trying to find my way in the development of a new
course. I have found that students appreciate this type of interaction; there is a certain
type of excitement that disappears when I give the course more often (even if the
quality of the course does improve with time).
Each course always ends with a student evaluation of themselves and how they did in
the course and an evaluation of the course itself. I have had many valuable ideas from
students on how to improve the courses.
I hope that working with this material will bring you as much satisfaction as it has
brought me. Good luck!
Heleen Tims
Math teacher
Maartens College
Postbus 6105
9702 HC Groningen
tel: 050-5340084 / 5375200
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
3
Heleen Tims
RSA (level A* - only for real whiz kids)
(Note: this course should preferably be given in one of the longer terms as 10 lessons is
actually too short for it)
Lesson 1
• What is ME?
o Relates Math to the world outside
o Topics you do not cover in your normal Math lessons
o Fun!
• Materials
o Binder with section + plastic portfolios or
o Notebook + folder for copies
• Assessment
o Most important is class participation + curiosity
o Also homework (sometimes, a bit) and sometimes a quiz to check your
understanding.
o Certificates at end of (IS) term (show)
•
What is RSA
o Code made by Ronald Rivest, Adi Shamir and Leonard Adleman and is the
basis for many codes we use in daily life like pincodes and many other security
codes for bank transfers. Also e-mail encryption is based on RSA.
o Special is that RSA works with two keys instead of one. Think of having a
treasure chest where the key that locks the chest cannot open it again. Another
key is needed to open the chest. And the key that locks the chest tells you
nothing about what the key to open the chest should look like.
o The two keys in RSA are:
• Public key: this is the locking key. You use it to encode your message.
Everyone is allowed to know it, because you cannot decode (unlock) the
coded message with this key.
• Private key: this is the unlocking key only known to the maker of the
code. This makes the system very safe, as no-one else needs to know the
unlocking key!
o There is a lot of mathematics (number theory) we will go through before we get
to the point where we can make an RSA code. We will first need to study prime
numbers, modular arithmetic and the Euclidean algorithm.
o
•
Prime numbers
o Definitions
Divisor = whole number factor of a number
Prime number = a number that has only 1 and itself as divisors
o For making RSA codes we need to find very big prime numbers. Prime
numbers being used at this time (by banks) are between 200 and 300
digits. The RSA code is based on a number that is the product of two of
these big prime numbers. The trick is that it is almost impossible to find
the two prime numbers from the big number. If these two numbers can be
found, then the code can be broken. (See newspaper article about how one
of these numbers was broken down into two primes using 10 years of
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
4
Heleen Tims
o
o
o
o
computer time). Clearly bigger and bigger prime numbers need to be
found in order to stay ahead of the hackers!
Sieve of Eratosthenes (240 BC) is the oldest method for finding primes.
Hand out list of numbers from 1 to 100. Circle 2. It is the first prime. Then
cross out all multiples of 2. Take the next number that is not crossed out. It
is 3. Circle it and cross out all multiples of 3. Etc. The prime numbers
should be left over at the end of this exercise:
2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,73,79,83,89,97
This is not very helpful if we want to find very big primes. Notice that
distance between prime numbers grows bigger and bigger. Discuss why.
How can we find out if a big number is prime?
Each number has a unique prime factorisation. For example:
• 10 = 2 x 5
• 200 = 2 x 2 x 2 x 5 x 5 = 23⋅52
• Can you find the prime factorisation of 11,544?
11,544
2
5,772
2
2,886
2
1,443
3
481
13
37
3
So 11,544 = 2 ⋅3⋅13⋅37
How far do you have to search for prime factors to show that a
number is prime? Discuss ideas.
Theorem: If the number n has no prime factors below n , then n
is prime. Proof: Say there is a factor bigger than n which is a
prime number. Then it has to be multiplied by a prime number
smaller than n in order to get n. But we have already found out
that this number does not exist.
Homework: find out whether 127, 2047 and 653 are prime numbers
Lesson 2
• Check and discuss homework
o 127: 127 is a bit more than 11. Try the factors 2,3,5,7,11. None fit, so
127 is prime
o 2047: 2047 is a bit more than 45. Try the factors 2,3,5,7,11,13,17,19,23,
29,31,37,41. It is divisible by 23. 2047 = 23 x 89
o 653: Try 2,3,5,7,11,13,17,19,23. None fit so 653 is prime.
• There are many ways in which mathematicians looked for primes by using
formulas. One of the most well known group of primes are the Mersenne primes.
Mersenne was a French monk (1588-1648). He stated that all 2n-1 would be prime
when n = 2,3,5,7,13,17,19,31,67,127 or 257. He was not right for all these
numbers, but his name became attached to these kind of prime numbers. Let’s
check:
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
5
Heleen Tims
22 – 1 = 3 is prime
23 – 1 = 7 is prime
27 – 1 = 127 is prime
211 – 1 = 2047 is not prime, see homework
213 – 1
have al been proven prime
217 – 1
19
2 –1
•
•
•
•
Hand out list of Mersenne primes and discuss. Notice the dates. Big gap until
1950’s. Why? Invention of calculators.
Largest Mersenne prime is 26972593 – 1. It has more than 2 million digits.
GIMPS: internet search for Mersenne primes. You can join by allowing your
computer to be used by calculating software when it is idle. There is a reward
for ‘finding’ the next large prime number. See
http://www.utm.edu/research/primes/notes/6972593/
Homework: look up the site and see who the last winner was, what does he do
and how much did he win?
Lesson 3
• Discuss site investigated for homework.
Modular Arithmetic
1. Think of a clock with 12 digits on it. If it is now 12 o’clock
a. What time will it be six hours from now? (6 o’clock)
b. What time will it be thirteen hours from now? (1 o’clock)
c. What time will it be twenty hours from now? (8 o’clock)
d. What time will it be 124 hours from now? (4 o’clock)
e. Can you give a general rule for finding the time after a certain number of
hours? (divide by 12, answer is the remainder)
2. If your clock had only six hours on it, and you start at 6 o’clock, answer the same
questions as for the 12-hour clock in question 1.
Explanation:
Modular Arithmetic is sometimes also called ‘clock arithmetic’.
The modulus stands for the number of hours that are shown on the clock.
In question 1 c we would write: 20 mod 12 ≡ 8
You read this as “Twenty in modulus twelve is equivalent to eight.”
This means that twenty hours further is the same as 8 hours further if you
have a clock with 12 hours on it.
3. Write your answers in question 2 in modular arithmetic form, like in the
explanation above.
4. Can you find the answer to the following problems?
a. 14 mod 3 ≡
b. 17 mod 14 ≡
c. 1000 mod 7 ≡
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
6
Heleen Tims
General Rule:
To find ‘ a mod m ’ you divide the number a by the number m and you calculate
the remainder.
Example: To find 16 mod 5 , you divide 16 by 5. The remainder is 1.
So: 16 mod 5 ≡ 1
5. If 17 mod m ≡ 5 , what positive whole numbers could be filled in for m? (Is there
only one possibility, or are there more?) – answer: 6 and 12
6. Take the following two calculations:
17 mod 4 ≡ 1
22 mod 4 ≡ 2
a. Calculate 17 + 22 in mod 4. What do you notice?
b. Calculate 17 × 22 in mod 4. What do you notice?
Properties
Question 6 shows an example of a general property in Modular Arithmetic.
a mod m ≡ b
Then ( a + c ) mod m ≡ b + d and ac mod m ≡ bd
If
c mod m ≡ d
This is a very useful property, because now you do not have to add or multiply
the big numbers a and c, but you can use the small ones b and d.
For example: You want to find 123 × 257 × 425 in modulus 7. If you multiply
these numbers out, you will get a very big number. So, before multiplying, you
first find the modulus:
123 mod 7 ≡ 4
257 mod 7 ≡ 5
425 mod 7 ≡ 5
Now you can multiply these:
(123 × 257 × 425) mod 7 ≡ ( 4 × 5 × 5) mod 7 ≡ 100 mod 7 ≡ 2
This method will become very useful when you work with multiplications that do
not fit on your calculator any more!
7. Using the method above, solve the following problems:
a. Find 120 × 39 × 364 in modulus 5
b. Find 6002 × 7142 × 4751 in modulus 6
Finish the last two problems for homework (There is also a worksheet that can be
used if you want to let students do this independently)
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
7
Heleen Tims
Lesson 4
• In working with RSA codes, we need to find the modulus of a very large number
with an exponent.
• First (review) some basic ideas about exponents:
o a n a m = a n + m (Why? x 2 x 3 = ( x ⋅ x )( x ⋅ x ⋅ x ) = x 5 )
o ( a n ) m = a nm (Why? ( x 2 ) 3 = ( x ⋅ x )( x ⋅ x )( x ⋅ x ) = x 6 )
• New rule: When e is a positive integer and a mod m = b , then a e mod m = b e .
This comes directly from the multiplication rule we already have.
• To find the modulus of a number with an exponent, we use the Method of
Squaring. Example: We want to find 213 in modulus 33. (We could do this one by
hand because 213 is not so big, but we want to demonstrate the method in a simple
case). We start with the base number 2 and find its equivalent in modulus 33:
2 mod 33 ≡ 2
Then we square the first number and find its equivalent in modulus 33:
2 2 mod 33 ≡ 4
Then continue squaring until the next number is higher than 213:
2 4 mod 33 ≡ 16
2 8 mod 33 ≡ 25
The next number will be 216 which is bigger than 213.
Now we can calculate 213 mod 33 in the following way:
213 mod 33 ≡ ( 2 8 ⋅ 2 4 ⋅ 2) mod 33 ≡ ( 25 × 16 × 2) mod 33 ≡ 800 mod 33 ≡ 8
•
Assignment: Calculate 2103 mod143 by using the method of squaring
Lesson 5
• Check and discuss homework:
2 mod143 ≡ 2
2 2 mod143 ≡ 4
2 4 mod143 ≡ 16
2 8 mod143 ≡ 113
216 mod143 ≡ 1132 mod143 ≡ 42
2 32 mod143 ≡ 42 2 mod143 ≡ 48
2 64 mod143 ≡ 48 2 mod143 ≡ 16
2103 mod143 ≡ ( 2 64 ⋅ 2 32 ⋅ 2 4 ⋅ 2 2 ⋅ 2) mod143 ≡ (16 × 48 × 16 × 4 × 2) mod143 ≡ 63
Note: As the numbers become bigger, will not fit on the calculator anymore, that
is why you have to use the method of squaring: you will always have a number
smaller than 143 to square.
• Next (and last) step before we can start making RSA codes is solving an equation
in modular arithmetic. To do that we need:
• Euclidean algorithm = a way of finding the greatest common divisor (GCD) of
two numbers.
• For instance: GCD of 10 and 12 is 2. We write: (10, 12) = 2
• The algorithm is as follows:
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
8
Heleen Tims
•
•
•
Divide the larger number by the smaller number and calculate the
remainder. In the example above: 12 ÷ 10 = 1 rem 2
Divide the number you divided by, by the remainder and calculate the
new remainder: 10 ÷ 2 = 5 rem 0
If you continue, the last non-zero remainder will be the GCD. In this
case that is 2.
Try (252, 198)
252 ÷ 198 = 1 rem 54
198 ÷ 54 = 3 rem 36
54 ÷ 36 = 1 rem 18
36 ÷ 18 =
2 rem 0
So the GCD of 252 and 198 is 18.
Using the Euclidean Algorithm, you can also write the GCD as a combination
of your original two numbers (which is what we will need to solve the
modular equations).
o In the example above, we to find the number m and n so that
18 = 252m + 198n
o To do that we rewrite our lines for the Euclidean algorithm in a
different order, putting the remainders on the left in the equations:
54 = 252 − 1 ⋅ 198
36 = 198 – 3 ⋅ 54
18 = 54 – 1 ⋅ 36
o Now we can substitute upwards through this set of equations to find
the numbers m and n
18 = 54 – 1 ⋅ 36
= 54 – (198 – 3 ⋅ 54)
= 54 – 198 + 3 ⋅ 54
= 4 ⋅ 54 – 198
= 4(252 − 1 ⋅ 198) – 198
= 4 ⋅ 252 – 5 ⋅ 198
So m = 4 and n = –5
Homework: Use the Euclidean algorithm to find the GCD of 23 and 56
Lesson 6
• Check homework:
56 ÷ 23 = 2 rem 10
23 ÷ 10 = 2 rem 3
10 ÷ 3 = 3 rem 1
3 ÷ 1 = 3 rem 0
So the GCD is one
• We want to solve the equation 23x mod 56 ≡ 1. This means that 23x ÷ 56 must
give a remainder of one. We know from the homework that 1 is the GCD of 23
and 56. We also know that we can write the GCD as a combination of the two
original numbers, so 1 = 23m + 56n. This means that if we divide 23m by 56, it
will go –n times and leave a remainder of 1. So m is exactly the same as the
number x that we are looking for.
• Try finding m when 1 = 23m + 56n
Solution:
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
9
Heleen Tims
•
•
10 = 56 – 2 ⋅ 23
3 = 23 – 2 ⋅ 10
1 = 10 – 3 ⋅ 3
So:
1 = 10 – 3 ⋅ 3
= 10 – 3(23 – 2 ⋅ 10)
= 10 – 3 ⋅ 23 + 6 ⋅ 10
= 7 ⋅ 10 – 3 ⋅ 23
= 7 (56 – 2 ⋅ 23) – 3 ⋅ 23
= 7 ⋅ 56 – 17 ⋅ 23
This means that m = – 17
When we solve 23x mod 56 ≡ 1, we would like to find a positive value for x. We
know that (23 × −17) mod 56 ≡ 1. We also know that as long as we add multiples
of 56, the remainder when dividing by 56 will remain the same. This means that:
23( −17 + 56) mod 56 ≡ 1. Thus 23 ⋅ 39 mod 56 ≡ 1 and x = 39.
Homework: Solve 7M mod 120 ≡ 1
Lesson 7
Check the homework and go over the problem together.
Solve (7, 120) using the Euclidean Algorithm:
120 ÷7 = 17 rem 1
7 ÷ 1 = 7 rem 0
So GCD is 1
1 = 120 – 17 ⋅ 7
So: 7(–17) mod 120 ≡ 1 or 7(103) mod 120 ≡ 1 and M = 103
Now we can start making RSA codes!
Using the RSA codes worksheet go through a first example:
Part I: Making the Code
1. Take as prime numbers p = 11 and q = 13
2. (p – 1)(q – 1) = 120
3. Take N = 7 (other numbers are possible here)
4. Solve 7M mod 120 ≡ 1. We have already done that and found that M = 103
5. Public numbers are R = 143 and M = 103. Our secret code is N = 7.
Part II: Coding the message using the public code
1. Since R = 143, the code transmitted must be less than that. That means we are
restricted to two digits (otherwise we could get 3 digit numbers bigger than
143). So only one letter can be transmitted to code at one time. Let’s take the
letter C = 02
2. We have to find 2103 mod143 ≡ y . We have already calculated this when we
did the method of squaring. We came out to y = 63.
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
10
Heleen Tims
Part III: Decoding the message using the private code
1. We now have to find y N mod143 in order to find our original letter (the
number 02, again). Let’s see if it works:
We have to find 637 mod143 . We will use the method of squaring:
63 mod 143 ≡ 63
632 mod 143 ≡ 3969 mod 143 ≡ 108
634 mod 143 ≡ 1082 mod 143 ≡ 11664 mod 143 ≡ 81
637 mod 143 ≡ (634 ⋅ 632 ⋅ 63) mod 143 ≡ (81 ⋅ 108 ⋅ 63) mod 143 ≡ 2
So it works!!
Homework:
• Think about how you could break this code if you know only the public codes R
and M.
• Code and decode the letter T using the same system
Lesson 8
Check and discuss homework: How can you break the code? You need to factorise
143 into its two prime factors p and q.
T = 19
Coding:
19103 mod143 ≡ (19 64 ⋅ 19 32 ⋅ 19 4 ⋅ 19) mod143 ≡ ( 48 ⋅ 42 ⋅ 48 ⋅ 75 ⋅ 19) mod143 ≡ 72
Decoding:
72 7 mod143 ≡ (72 4 ⋅ 72 2 ⋅ 72) mod143 ≡ (9 ⋅ 36 ⋅ 72) mod143 ≡ 19
Again it works!
We will now try making a code with a bit bigger prime numbers.
Part I: Making the Code
1. We take p = 137 and q = 607. Then pq = 83159
2. (p – 1)(q – 1) = 82416
3. We will use N = 95.
Use the Euclidean Algorithm to show that (95, 82416) = 1
82416 ÷ 95 = 867rem51
95 ÷ 51 = 1rem 44
51 ÷ 44 = 1rem 2
7 ÷ 2 = 3rem1
2 ÷ 1 = 2rem0
4. 95M mod 82416 ≡ 1
Students will try to finish this for homework.
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
11
Heleen Tims
Lesson 9
Check and discuss homework
Use the inverse statements from the Euclidean Algorithm and substitute:
1 = 7 − 3⋅ 2
1 = 1 − 3( 44 − 6 ⋅ 7)
1 = 19 ⋅ 7 − 3 ⋅ 44
1 = 19(51 − 1 ⋅ 44) − 3 ⋅ 44
1 = 19 ⋅ 51 − 22 ⋅ 44
1 = 19 ⋅ 51 − 22(95 − 1 ⋅ 51)
1 = 41 ⋅ 51 − 22 ⋅ 95
1 = 41(82416 − 867 ⋅ 95) − 22 ⋅ 95
1 = 41 ⋅ 82416 − 35569 ⋅ 95
So M = –35569 or M = –35569 + 82416 = 46847
In the coming time, students will work in groups on coding and decoding CO and DE
using the new code (public codes R = 83159 and M = 46847; private code N = 95).
Depending upon the lessons left, students can make a poster presentation of their
work on this code – each student takes a part that he/she will explain in the poster
series.
Lessons 10 and on (if possible)
Working out of the codes:
CO = 0214
Coding: 214 46847 mod 83159 ≡ y
214 mod 83159 ≡ 214
214 2 mod 83159 ≡ 45796
214 4 mod 83159 ≡ 3636
2148 mod 83159 ≡ 3636 2 mod 83159 ≡ 81374
21416 mod 83159 ≡ 26183
214 32 mod 83159 ≡ 69852
214 64 mod 83159 ≡ 30738
214128 mod 83159 ≡ 55245
214 256 mod 83159 ≡ 74725
214 512 mod 83159 ≡ 31411
2141024 mod 83159 ≡ 52545
214 2048 mod 83159 ≡ 15066
214 4096 mod 83159 ≡ 43445
214 8192 mod 83159 ≡ 8202
21416384 mod 83159 ≡ 80332
214 32768 mod 83159 ≡ 8665
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
12
Heleen Tims
214
46847
Converting to modulus 83159
= 214 32768 ⋅ 2148192 ⋅ 214 4096 ⋅ 2141024 ⋅ 214512 ⋅ 214128 ⋅ 214 64 ⋅ 214 32 ⋅ 21416 ⋅ 2148 ⋅ 214 4 ⋅ 214 2 ⋅ 214
214 46847 mod 83159 ≡
(8665 ⋅ 8202 ⋅ 43445 ⋅ 52545 ⋅ 31411 ⋅ 55245 ⋅ 30738 ⋅ 69852 ⋅ 26183 ⋅ 81374 ⋅ 3636 ⋅ 45796 ⋅ 214) mod 83159 ≡
( 52544 ⋅ 19816 ⋅ 21842 ⋅ 28555 ⋅ 81862 ⋅ 29938 ⋅ 214 ) mod 83159 ≡
(61224 ⋅ 5810 ⋅ 5667 ⋅ 214) mod 83159 ≡
( 40397 ⋅ 48512) mod 83159 ≡ 14270
Converting back to the original:
14270 95 mod 83159 ≡ x
14270 mod 83159 ≡ 14270
14270 2 mod 83159 ≡ 59668
14270 4 mod 83159 ≡ 67116
142708 mod 83159 ≡ 744
1427016 mod 83159 ≡ 54582
14270 32 mod 83159 ≡ 23549
1427064 mod 83159 ≡ 51189
14270 95 mod 83159 ≡ (14270 64 ⋅ 1427016 ⋅ 142708 ⋅ 14270 4 ⋅ 14270 2 ⋅ 14270) mod 83159
≡ (51189 ⋅ 54582 ⋅ 744 ⋅ 67116 ⋅ 59668 ⋅ 14270) mod 83159
≡ ( 21916 ⋅ 38904 ⋅ 80518) mod 83159
≡ (73996 ⋅ 80518) mod 83159
≡ 214
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
13
Heleen Tims
DE=304
Coding: 304 46847 mod 83159 ≡ y
304 mod 83159 ≡ 304
304 2 mod 83159 ≡ 9257
304 4 mod 83159 ≡ 38279
304 8 mod 83159 ≡ 20261
30416 mod 83159 ≡ 35297
304 32 mod 83159 ≡ 73230
304 64 mod 83159 ≡ 41626
304128 mod 83159 ≡ 22952
304 256 mod 83159 ≡ 65198
304 512 mod 83159 ≡ 23760
3041024 mod 83159 ≡ 54308
304 2048 mod 83159 ≡ 41770
304 4096 mod 83159 ≡ 57080
3048192 mod 83159 ≡ 39939
30416384 mod 83159 ≡ 50942
304 32768 mod 83159 ≡ 27610
304 46847 = 304 32768 ⋅ 304 8192 ⋅ 304 4096 ⋅ 3041024 ⋅ 304 512 ⋅ 304128 ⋅ 304 64 ⋅ 304 32 ⋅ 30416 ⋅ 304 8 ⋅ 304 4 ⋅ 304 2 ⋅ 304
304 46847 mod 83159 ≡
(69881 ⋅ 29985 ⋅ 51272 ⋅ 69360 ⋅ 63036 ⋅ 80453 ⋅ 27610) mod 83159 ≡
( 24462 ⋅ 14444 ⋅ 66852 ⋅ 27610) mod 83159 ≡
(69696 ⋅ 69715) mod 83159 ≡ 42588
Decoding: 4258895 mod 83159 ≡ x
42588 mod 83159 ≡ 42588
425882 mod 83159 ≡ 39954
425884 mod 83159 ≡ 1952
425888 mod 83159 ≡ 68149
4258816 mod 83159 ≡ 22369
4258832 mod 83159 ≡ 4458
4258864 mod 83159 ≡ 81922
4258895 mod 83159 ≡ ( 4258864 ⋅ 4258816 ⋅ 425888 ⋅ 42588 4 ⋅ 42588 2 ⋅ 42588) mod 83159
≡ ( 44653 ⋅ 55607 ⋅ 21494) mod 83159
≡ (57949 ⋅ 21494) mod 83159
≡ 304
_____________________________________________________________________
Maartens College Math Enrichment
RSA Codes (Level A)
June 2005
14
Heleen Tims