Tải bản đầy đủ (.pdf) (19 trang)

Bài tập về cơ sở toán học trong An toàn và bảo mật thông tin Có lời giải

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (500.3 KB, 19 trang )

Bài tập có lời giải
An tồn và bảo mật thơng tin
Phần 1: Phép tốn số học theo Modulo
Câu 1: Tính
(11 * 19 + 1017) mod 7
= ((11 * 19 mod 7) + (1017 mod 7)) mod 7
= ((11 mod 7 * 19 mod 7) mod 7 + (10 mod 7)17) mod 7
= (( 4
*
5
) mod 7 + (3 mod 7)17) mod 7
= (6 + (((98) mod 7) * 3mod 7) mod 7)) mod 7
= (6 + ((28 mod 7) * 3 mod 7)) mod 7
= (6 + ((4*3) mod7)) mod 7
= (6 + 5) mod 7
= 11 mod 7
=4

Phần 2: Cộng và nhân theo Modulo
Bài tập 1: Cho a=87, b=94 thực hiện phép cộng (a+b) mod 7
Bài tập 2: Cho a=354, b=173 thực hiện phép cộng (a+b) mod 8
Bài tập 3: Cho a=87, b=6 thực hiện phép nhân (axb) mod 7
Bài tập 4: Cho a=354, b=5 thực hiện phép nhân (axb) mod 8

Bài Làm:
Bài tập 1: Cho a=87, b=94 thực hiện phép cộng (a+b) mod 7
• Chuyển đổi a=87, b=94 từ hệ cơ số 10 sang cơ số 7
o a = 153
o b = 163
• Thực hiện phép cộng:
o (3+3) mod 7 = 6 mod 7 được 0 dư 6


o (5+6) mod 7 = 11 mod 7 được 1 dư 4
o (1+1+1(nhớ)) mod 7 = 3 mod 7 được 0 dư 3
• Kết quả (a + b) mod 7 = 346
1


Bài tập 2: Cho a=354, b=173 thực hiện phép cộng (a+b) mod 8
• Chuyển đổi a=354, b=173 từ hệ cơ số 10 sang cơ số 8
o a = 542
o b = 255
• Thực hiện phép cộng:
o (2+5) mod 8 = 7 mod 8 được 0 dư 7
o (4+5) mod 8 = 9 mod 8 được 1 dư 1
o (5+2+1(nhớ)) mod 8 = 8 mod 8 được 1 dư 0
• Kết quả (a + b) mod 8 = 1017
Bài tập 3: Cho a=87, b=6 thực hiện phép nhân (axb) mod 7
• Chuyển đổi a=87, b=6 từ hệ cơ số 10 sang cơ số 7
o a = 153
o b=6
• Thực hiện phép nhân:
o (3x6) mod 7 = 18 mod 7 được 2 dư 4
o (5x6+2(nhớ)) mod 7 = 32 mod 7 được 4 dư 4
o (1x6+4(nhớ)) mod 7 = 10 mod 7 được 1 dư 4
• Kết quả (a x b) mod 7 = 1344
Bài tập 4: Cho a=354, b=5 thực hiện phép nhân (axb) mod 8
• Chuyển đổi a=354, b=5 từ hệ cơ số 10 sang cơ số 8
o a = 542
o b=5
• Thực hiện phép nhân:
o (2x5) mod 8 = 10 mod 8 được 1 dư 2

o (4x5+1(nhớ)) mod 8 = 21 mod 8 được 2 dư 5
o (5x5+2(nhớ)) mod 8 = 27 mod 8 được 3 dư 3
• Kết quả (a x b) mod 8 = 3352

2


Phần 3:
Thuật tốn Euclide tính ước chung nhỏ nhất GCD
Bài tập 1: Tìm GCD(973, 301).
Bài tập 2: Tìm GCD(1970, 1066).
Bài tập 3: Tìm GCD(4864, 3458).
Bài tập 4: Tìm GCD(42823, 6409).
Bài tập 5: Tìm GCD(91470, 51066).

Bài giải
Bài tập 1: Tìm GCD(973, 301).
973 = 3*301 + 70
301 = 4*70 + 21
70 = 3*21 + 7
21 = 3*7 + 0

GCD(973, 301) = GCD(301, 70)
GCD(301, 70) = GCD(70, 21)
GCD(70, 21) = GCD(21, 7)
GCD(21, 7) = GCD(7, 0) = 7

Vậy GCD(973, 301) = 7
Bài tập 2: Tìm GCD(1970, 1066).
1970= 1*1066 + 904

1066= 1*904 + 162
904 = 5*162 + 94
162 = 1*94 + 68
94 = 1*68 + 26
68 = 2*26 + 16
26 = 1*16 + 10
16 = 1*10 + 6
10 = 1*6 + 4
6 = 1*4 + 2
4 = 2*2 + 0

GCD(1970, 1066) = GCD(1066, 904)
GCD(1066, 904) = GCD(904, 162)
GCD(904, 162) = GCD(162, 94)
GCD(162, 94) = GCD(94, 68)
GCD(94, 68) = GCD(68, 26)
GCD(68, 26) = GCD(26, 16)
GCD(26, 16) = GCD(16, 10)
GCD(16, 10) = GCD(10, 6)
GCD(10, 6) = GCD(6, 4)
GCD(6, 4) = GCD(4, 2)
GCD(4, 2) = GCD(2, 0) = 2

Vậy GCD(1970, 1066) = 2

3


Bài tập 3: Tìm GCD(4864, 3458)
4864= 1*3458+ 1406

3458= 2*1406+ 646
1406= 2*646+ 114
646= 5*114+ 76
114= 1*76+ 38
76= 2*38+ 0
Vậy GCD(4864, 3458) = 38

GCD(4864, 3458) = GCD(3458, 1406)
GCD(3458, 1406) = GCD(1406, 646)
GCD(1406, 646) = GCD(646, 114)
GCD(646, 114) = GCD(114, 76)
GCD(114, 76) = GCD(76, 38)
GCD(76, 38) = GCD(38, 0) = 38

Bài tập 4: Tìm GCD(42823, 6409).
42823= 6*6409+ 4369
6409= 1*4369+ 2040
4369= 2*2040+ 289
2040= 7*289+ 17
289= 17*17+ 0
Vậy GCD(42823, 6409) = 17

GCD(42823, 6409) = GCD(6409, 4369)
GCD(6409, 4369) = GCD(4369, 2040)
GCD(4369, 2040) = GCD(2040, 289)
GCD(2040, 289) = GCD(289, 17)
GCD(289, 17) = GCD(17, 0) = 17

Bài tập 5: Tìm GCD(91470, 51066).
91470= 1*51066+ 40404

51066= 1*40404+ 10662
40404= 3*10662+ 8418
10662= 1*8418+ 2244
8418= 3*2244+ 1686
2244= 1*1686+ 558
1686= 3*558+ 12
558= 46*12 + 6
12 = 2*6 + 0
Vậy GCD(91470, 51066) = 6

GCD(91470, 51066) = GCD(51066, 40404)
GCD(51066, 40404) = GCD(40404, 10662)
GCD(40404, 10662) = GCD(10662, 8418)
GCD(10662, 8418) = GCD(8418, 2244)
GCD(8418, 2244) = GCD(2244, 1686)
GCD(2244, 558) = GCD(1686, 558)
GCD(1686, 558) = GCD(558, 12)
GCD(558, 12) = GCD(12, 6)
GCD(12, 6) = GCD(6, 0) = 6

4


Phần 4:
Thuật tốn Euclide mở rộng tính GCD
và x, y thoả mãn ax + by = GCD(a,b)
Bài tập 1: Cho a=973, b=301. Tìm x,y và GCD(a,b) thoản mãn ax + by = GCD(a,b)
Bài tập 2: Cho a=1970, b=1066. Tìm x,y và GCD(a,b) thoản mãn ax + by =
GCD(a,b)
Bài tập 3: Cho a=42823, b=6409. Tìm x,y và GCD(a,b) thoản mãn ax + by =

GCD(a,b)
Bài tập 4: Cho a=91470, b=51066. Tìm x,y và GCD(a,b) thoản mãn ax + by =
GCD(a,b)

Bài làm:
Bài tập 1: Cho a=973, b=301. Tìm x,y và GCD(a,b) thoản mãn ax + by = GCD(a,b)
Bước
0
1
2
3
4

q

r
3
4
3
3

70
21
7
0

x
1
-4
13

-43

y
-3
13
-42
139

a
973
301
70
21
7

Bước 1:
• a = 973 chia b = 301 được q=3, r=70
• x = x2 – q*x1 = 1-3*0 = 1
• y = y2 – q*y1 = 0-3*1=-3
• a = b = 301, b = r = 70
• x2 = x1 = 0, x1 = x = 1
• y2 = y1 = 1, y1 = y = -3
Bước 2:
• a = 301 chia b = 70 được q=4, r=21
• x = x2 – q*x1 = 0-4*1 = -4
• y = y2 – q*y1 = 1-4*-3=13
• a = b = 70, b = r = 21
• x2 = x1 = 1, x1 = x = -4
• y2 = y1 = -3, y1 = y = 13
5


b
301
70
21
7
0

x2
1
0
1
-4
13

x1

y2

y1

0
1
-4
13
-43

0
1
-3

13
-42

1
-3
13
-42
139


Bước 3:
• a = 70 chia b = 21 được q=3, r=7
• x = x2 – q*x1 = 1-3*-4 = 13
• y = y2 – q*y1 = -3-3*13=-42
• a = b = 21, b = r = 7
• x2 = x1 = -4, x1 = x = 13
• y2 = y1 = 13, y1 = y = -42
Bước 4:
• a = 21 chia b = 7 được q=3, r=0
• x = x2 – q*x1 = -4-3*13 = -43
• y = y2 – q*y1 = 13-3*-42=139
• a = b = 7, b = r = 0
• x2 = x1 = 13, x1 = x = -43
• y2 = y1 = -42, y1 = y = -139
Do b = 0, Thuật toán kết thúc: a = 7 = d =gcd(973,301); x = x2 = 13, y = y2 = -42
Bài tập 2: Cho
GCD(a,b)
Bước
q
0

1
1
2
1
3
5
4
1
5
1
6
2
7
1
8
1
9
1
10
1
11
2

a=1970, b=1066. Tìm x,y và GCD(a,b) thoản mãn ax + by =
r
904
162
94
68
26

16
10
6
4
2
0

x
1
-1
6
-7
13
-33
46
-79
125
-204
533

y
-1
2
-11
13
-24
61
-85
146
-231

377
-985

a
b
1970 1066
1066 904
904 162
162
94
94
68
68
26
26
16
16
10
10
6
6
4
4
2
2
0

Bước 1:
• a = 1970 chia b = 1066 được q=1, r=904
• x = x2 – q*x1 = 1-1*0 = 1

• y = y2 – q*y1 = 0-1*1=-1
• a = b = 1066, b = r = 904
6

x2

x1

y2

y1

1
0
1
-1
6
-7
13
-33
46
-79
125
-204

0
1
-1
6
-7

13
-33
46
-79
125
-204
533

0
1
-1
2
-11
13
-24
61
-85
146
-231
377

1
-1
2
-11
13
-24
61
-85
146

-231
377
-985


• x2 = x1 = 0, x1 = x = 1
• y2 = y1 = 1, y1 = y = -1
Bước 2:
• a = 1066 chia b = 904 được q=1, r=162
• x = x2 – q*x1 = 0-1*1 = -1
• y = y2 – q*y1 = 1-1*-1=2
• a = b = 904, b = r = 162
• x2 = x1 = 1, x1 = x = -1
• y2 = y1 = -1, y1 = y = 2
Bước 3,4,5,6,7,8,9,10,11 tương tự ta có:
• a chia b được q dư r
• x = x2 – q*x1
• y = y2 – q*y1
• a = b, b = r
• x2 = x1, x1 = x
• y2 = y1, y1 = y
Do b = 0, Thuật toán kết thúc: a = 2 = d =gcd(1970, 1066); x = x2 = -204, y = y2 =
377
Bài tập 3: Cho a=42823, b=6409. Tìm x,y và GCD(a,b) thoản mãn ax + by =
GCD(a,b)
Bước
0
1
2
3

4
5

q

r
6
1
2
7
17

4369
2040
289
17
0

x
1
-1
3
-22
377

y
-6
7
-20
147

-2519

a

b

42823

6409

6409
4369
2040
289
17

4369
2040
289
17
0

Bước 1:
• a = 42823 chia b = 6409 được q=6, r=4369
• x = x2 – q*x1 = 1-6*0 = 1
• y = y2 – q*y1 = 0-6*1=-6
• a = b = 6409, b = r = 4369
• x2 = x1 = 0, x1 = x = 1
• y2 = y1 = 1, y1 = y = -6
Bước 2:

• a = 6409 chia b = 4369 được q=1, r=2040
• x = x2 – q*x1 = 0-1*1 = -1
7

x2
1
0
1
-1
3
-22

x1
0
1
-1
3
-22
377

y2
0
1
-6
7
-20
147

y1
1

-6
7
-20
147
-2519


• y = y2 – q*y1 = 1-1*-6=7
• a = b = 4369, b = r = 2040
• x2 = x1 = 1, x1 = x = -1
• y2 = y1 = -6, y1 = y = 7
Bước 3:
• a = 4369 chia b = 2040 được q=2, r=289
• x = x2 – q*x1 = 1-2*-1 = 3
• y = y2 – q*y1 = -6-2*7=-20
• a = b = 2040, b = r = 289
• x2 = x1 = -1, x1 = x = 3
• y2 = y1 = 7, y1 = y = -20
Bước 4:
• a = 2040 chia b = 289 được q=7, r=17
• x = x2 – q*x1 = -1-7*3 = -22
• y = y2 – q*y1 = 7-7*-20=147
• a = b = 289, b = r = 17
• x2 = x1 = 3, x1 = x = -22
• y2 = y1 = -20, y1 = y = 147
Bước 5:
• a = 289 chia b = 17 được q=17, r=0
• x = x2 – q*x1 = 3-17*-22 = 377
• y = y2 – q*y1 = -20-17*147=-2519
• a = b = 17, b = r = 0

• x2 = x1 = -22, x1 = x = 377
• y2 = y1 = 147, y1 = y = -2519
Do b = 0, Thuật toán kết thúc: a = 17 = d =gcd(42823, 6409); x = x2 = -22, y = y2 =
147

8


Bài tập 4: Cho a=91470, b=51066. Tìm x,y và GCD(a,b) thoản mãn ax + by =
GCD(a,b)
Bước q
r
x
y
0
1
1 40404
1
-1
2
1 10662
-1
2
3
3 8418
4
-7
4
1 2244
-5

9
5
3 1686
19
-34
6
1
558
-24
43
7
3
12
91
-163
8
46
6 -4210
7541
9
2
0 8511 -15245

a
b
x2
x1
y2
y1
91470 51066

1
0
0
1
51066 40404
0
1
1
-1
40404 10662
1
-1
-1
2
10662 8418
-1
4
2
-7
8418 2244
4
-5
-7
9
2244 1686
-5
19
9
-34
1686

558
19
-24
-34
43
558
12
-24
91
43
-163
12
6
91 -4210 -163
7541
6
0 -4210 8511 7541 -15245

Bước 1:
• a = 91470 chia b = 51066 được q=1, r=40404
• x = x2 – q*x1 = 1-1*0 = 1
• y = y2 – q*y1 = 0-1*1=-1
• a = b = 51066, b = r = 40404
• x2 = x1 = 0, x1 = x = 1
• y2 = y1 = 1, y1 = y = -1
Bước 2:
• a = 51066 chia b = 40404 được q=1, r=10662
• x = x2 – q*x1 = 0-1*1 = -1
• y = y2 – q*y1 = 1-1*-1=2
• a = b = 40404, b = r = 10662

• x2 = x1 = 1, x1 = x = -1
• y2 = y1 = -1, y1 = y = 2
Bước 3,4,5,6,7,8,9,10,11 tương tự ta có:
• a chia b được q dư r
• x = x2 – q*x1
• y = y2 – q*y1
• a = b, b = r
• x2 = x1, x1 = x
• y2 = y1, y1 = y
Do b = 0, Thuật toán kết thúc: a = 6 = d =gcd(91470, 51066); x = x2 = -4210, y =
y2 = 7541
9


Phần 5:
Dùng thuật tốn Euclide mở rộng tính nghịch đảo vành Zn
Bài tập 1: Tính r1-1 mod r0 với r0=101, r1=25
Bài tập 2: Tính r1-1 mod r0 với r0=11, r1=60
Bài tập 3: Tính r1-1 mod r0 với r0=1024, r1=173
Bài tập 4: Tính r1-1 mod r0 với r0=323, r1=299
Bài tập 5: Tính r1-1 mod r0 với r0=460, r1=3
Bài Làm:
Bài tập 1: Tính r1-1 mod r0 với r0=101, r1=25
Bước
ri
qi+1
ri+1
0
101
4

25
1
25
25
1
2

ri+2

si
1
0

ti
1
0
1

0
1
-4

❖ Bước 0: ri = r0 = 101, ri+1= r1 = 25, r0 chia r1 được q1 = 4, dư r2=1, s0=1, t0=0
❖ Bước 1: r1 = 25, r2 = 1, r1 chia r2 được q2 = 25, dư r3=0, s1=0, t1=1
❖ Bước 2: s2=1, t2=-4
Ta Thấy 101 * 1 + 25 * -4 = GCD(101,25) = 1 => s=1, t=-4
Vậy 25-1 mod 101 = (-4) mod 101 = (-4 + 101) = 97
Bài tập 2: Tính r1-1 mod r0 với r0=11, r1=60
Bước
ri

qi+1
ri+1
ri+2
si
0
11
0
60
11
1
1
60
5
11
5
0
2
11
2
5
1
1
3
5
5
1
0
-5
4
11







ti
0
1
0
1
-2

Bước 0: ri = r0 = 11, ri+1= r1 = 60, r0 chia r1 được q1 = 0, dư r2=11, s0=1, t0=0
Bước 1: r1 = 60, r2 = 11, r1 chia r2 được q2 = 5, dư r3=5, s1=0, t1=1
Bước 2: r2 = 11, r3 = 5, r2 chia r3 được q3 = 2, dư r4=5, s2=1, t2=0
Bước 3: r3 = 60, r4 = 11, r3 chia r4 được q4 = 5, dư r5=5, s3=-5, t3=1
Bước 4: s4=11, t4=-2

Ta Thấy 11 * 11 + 60 * -2 = GCD(11,60) = 1 => s=11, t=-2
Vậy 60-1 mod 11 = (-2) mod 11 = -2 + 11 = 9
10


Bài tập 3: Tính r1-1 mod r0 với r0=1024, r1=173
Bước
ri
qi+1
ri+1
ri+2

0
1024
5
173
159
1
173
1
159
14
2
159
11
14
5
3
14
2
5
4
4
5
1
4
1
5
4
4
1
0

6








si
1
0
1
-1
12
-25
37

ti
0
1
-5
6
-71
148
-219

Bước 0: ri = r0 = 1024, ri+1= r1 = 173, r0 chia r1 được q1 = 5, dư r2=159, s0=1, t0=0
Bước 1: r1 = 173, r2 = 159, r1 chia r2 được q2 = 1, dư r3=14, s1=0, t1=1
Bước 2: r2 = 159, r3 = 14, r2 chia r3 được q3 = 11, dư r4=5, s2=1, t2=-5

Bước 3: r3 = 14, r4 = 5, r3 chia r4 được q4 = 2, dư r5=4, s3=-1, t3=6
Bước 4: r4 = 5, r5 = 4, r4 chia r5 được q5 = 1, dư r6=1, s4=12, t4=-71
Bước 5: r5 = 4, r6 = 1, r5 chia r6 được q6 = 4, dư r7=0, s5=-25, t5=148
Bước 6: s5=37, t5=-219

Ta Thấy 1024 * 37 + 173 * -219 = GCD(1024,173) = 1 => s=37, t=-219
Vậy 173-1 mod 1024 = (-219) mod 1024 = -219 + 1024 = 805
Bài tập 4: Tính r1-1 mod r0 với r0=323, r1=299
Bước
ri
qi+1
ri+1
0
323
1
299
1
299
12
24
2
24
2
11
3
11
5
2
4
2

2
1
5







ri+2
24
11
2
1
0

si

ti

1
0
1
-12
25
-137

0
1

-1
13
-27
148

Bước 0: ri = r0 = 323, ri+1= r1 = 299, r0 chia r1 được q1 = 1, dư r2=24, s0=1, t0=0
Bước 1: r1 = 299, r2 = 24, r1 chia r2 được q2 = 12, dư r3=11, s1=0, t1=1
Bước 2: r2 = 24, r3 = 11, r2 chia r3 được q3 = 2, dư r4=2, s2=1, t2=-1
Bước 3: r3 = 11, r4 = 2, r3 chia r4 được q4 = 5, dư r5=1, s3=-12, t3=13
Bước 4: r4 = 2, r5 = 1, r4 chia r5 được q5 = 2, dư r6=0, s4=25, t4=-27
Bước 5: s5=-137, t5=148

Ta Thấy 323 * -137 + 299 * 148 = GCD(323,299) = 1 => s=-137, t=148
11


Bài tập 5: Tính r1-1 mod r0 với r0=460, r1=3
Bước
ri
qi+1
ri+1
0
460
153
3
1
3
3
1
2


ri+2

si
1
0

ti
1
0
1

0
1
-153

❖ Bước 0: ri = r0 = 460, ri+1= r1 = 3, r0 chia r1 được q1 = 153, dư r2=1, s0=1, t0=0
❖ Bước 1: r1 = 3, r2 = 1, r1 chia r2 được q2 = 3, dư r3=0, s1=0, t1=1
❖ Bước 2: s2=1, t2=-153
Ta Thấy 460 * 1 + 3 * -153 = GCD(460,3) = 1 => s=1, t=-153

12


Phần 6:
Bình phương và nhân xk mod n
Bài tập 1: Tính xk mod n, với x = 7, k =560, n=561
Bài tập 2: Tính 1435 mod 11
Bài tập 3: Tính 31130 mod 23
Bài tập 1: Tính 7560 mod 561

• x = 7, k =560, n=561
• k = 560 = 10001100002
• p = 1, Ta có bảng:
b[i]
p=p*p
p=p(mod 561) p = p * x p =p(mod 561)
2
1
1 =1
1
7
7
2
0
7 =49
49
49
2
0
49 =2401
157
157
2
0
157 =24649
526
526
2
1
526 =276676

103
721
160
2
1
160 =25600
355
2485
241
2
0
241 =58081
298
298
2
0
298 =88804
166
166
2
0
166 =27556
67
67
2
0
67 =4489
1
1
Vậy 7560 mod 561 = 1

Bài tập 2: Tính 1435 mod 11
• x = 14, k =35, n=11
• k = 35 = 1000112
• p = 1, Ta có bảng:
b[i] p=p*p p=p(mod 11) p = p * x p = (mod 11)
1
1
1
14
3
0
9
9
9
0
81
4
4
0
16
5
5
1
25
3
42
9
1
81
4

56
1
35
Vậy 14 mod 11 = 1
13


Bài tập 3: Tính 31130 mod 23
• x = 31, k =130, n=23
• k = 130 = 100000102
• p = 1, Ta có bảng:
b[i] p=p*p p=p(mod 23) p = p * x p = (mod 23)
1
1
1
31
8
0
64
18
18
0
324
2
2
0
4
4
4
0

16
16
16
0
256
3
3
1
9
9
279
3
0
9
9
9
Vậy 31130 mod 23 = 9
Bài tập 4: Tính 71130 mod 23
• x = 71, k =130, n=23
• k = 130 = 100000102
• p = 1, Ta có bảng:
b[i] p=p*p p=p(mod n) p = p * x p = (mod n)
1
1
1
71
2
0
4
4

4
0
16
16
16
0
256
3
3
0
9
9
9
0
81
12
12
1
144
6
426
12
0
144
6
6
Vậy 71130 mod 23 = 6

14



Phần 7:
Định lý Ferma nhỏ - Phi Ơle
Dùng định lý Ferma và định lý ơle tính các biểu thức sau:
Bài 1: 616 mod 17
Bài 2: 1516 mod 17
Bài 3: 95100 mod 101
Bài 4: 74 mod 10
Bài 5: 95 mod 10
Bài 6: 1012 mod 21
Bài 7: 9190 mod 100
Bài làm:
Bài 1: 616 mod 17
Ta thấy 616 = 617-1 và 17 là số nguyên tố, GCD(6,17) = 1
Nên ta có:
616 mod 17 = 617-1 mod 17 ≡ 1 mod 17 = 1 (Theo định lý ferma nhỏ)
=>Vậy 616 mod 17 = 1
Bài 2: 1516 mod 17
Ta thấy 1516 = 1517-1 và 17 là số nguyên tố, GCD(15,17) = 1
Nên ta có:
1516 mod 17 = 1517-1 mod 17 ≡ 1 mod 17 = 1 (Theo định lý ferma nhỏ)
=>Vậy 1516 mod 17 = 1
Bài 3: 95100 mod 101
Ta thấy 95100 = 95101-1 và 101 là số nguyên tố, GCD(95,101) = 1
Nên ta có:
95100 mod 101 = 95101-1 mod 101 ≡ 1 mod 101 = 1 (Theo định lý ferma nhỏ)
=>Vậy 95100 mod 101 = 1
Bài 4: 74 mod 10
Ta thấy Ф(10) = Ф(2*5) = Ф(2)* Ф(5) (TC2) = (2-1)*(5-1) (TC1)= 4
=> 74 mod 10 = 7Ф(10) mod 10 ≡ 1 mod 10 (Định lý ơle) = 1 (mod 10)

=> Vậy 74 mod 10 = 1 (mod 10)
Bài 5: 95 mod 10
Ta có:
95 mod 10 = (94 *9) mod 10 = (94 mod 10 * 9 mod 10) mod 10
15


Do: Ф(10) = Ф(2*5) = Ф(2)* Ф(5) (TC2) = (2-1)*(5-1) (TC1)= 4
=> 95 mod 10 = (94 *9) mod 10 = (94 mod 10 * 9 mod 10) mod 10
= (9Ф(10) mod 10 * 9 mod 10) mod 10
=(
1
*
9 ) mod 10
=9
=> Vậy 95 mod 10 = 9
Bài 6: 1012 mod 21
Ta thấy Ф(21) = Ф(3*7) = Ф(3)* Ф(7) (TC2) = (3-1)*(7-1) (TC1)= 2*6 = 12
=> 1012 mod 21 = 10Ф(21) mod 21 ≡ 1 mod 21 (Định lý ơle) = 1 (mod 21)
=> Vậy 1012 mod 21 = 1
Bài 7: 9190 mod 100
Do Ф(100) = 40
=> 9190 mod 100 = (9180) * 9110 mod 100 = 9110 mod 100 = (912)5 mod 100 = 1

16


Phần 8:
Định lý phần dư Trung Hoa
Sử dụng định lý phần dư Trung Hoa tính giá trị biểu thức sau:

Bài 1: 2530 mod (7*8)
Bài 2: 70254 mod (11*13)
Bài 3: 60-1 mod (11*13)
Bài 4: ((21100 + 33-1) * 4551) mod (7*9*11)
Bài 5: ((19125 + 2551) * 4721/37) mod (9*11*13)
Bài làm:
Bài 1: 2530 mod (7*8)
A = 2530, M = 7*8
➢ Bước 1: M = 7*8 = m1 * m2 (m1 = 7, m2 = 8)
➢ Bước 2: Tính:
o M1 = M/m1 = (7*8)/7 = 8
o M1 = M/m1 = (7*8)/8 = 7
➢ Bước 3:
o a1 = A mod m1 = 2530 mod 7 = 3
o a2 = A mod m2 = 2530 mod 8 = 2
➢ Bước 4:
o c1 = M1 * (M1-1 mod m1) = 8*(8-1 mod 7) = 8*(1-1 mod 7) = 8
o c2 = M2 * (M2-1 mod m2) = 7*(7-1 mod 8) = 7*7 = 49
➢ Bước 5: A = (a1*c1 + a2*c2) mod (7*8) = (3*8 + 2*49) mod 56 = 10 (mod 56)
Vậy 2530 mod (7*8) = 10
Bài 2: 70254 mod (11*13)
➢ Bước 1: A = 70254, M = (11*13) = 143, m1=11, m2=13
➢ Bước 2:
o M1 = M/m1 = (11*13) /11=13
o M2 = M/m1 = (11*13) /13=11
➢ Bước 3:
o a1 = A mod m1 = 70254 mod 11 = 8
o a2 = A mod m2 = 70254 mod 13 = 2
➢ Bước 4:
o c1 = M1 * (M1-1 mod m1) = 13*(13-1 mod 11) = 13*(2-1 mod 11) = 13*6

= 78
o c2 = M2 * (M2-1 mod m2) = 11*(11-1 mod 13) = 11*6 = 66
17


➢ Bước 5: A = (a1*c1 + a2*c2) mod 143 = (8*78+ 2*66) mod 143 = 41 (mod
143)
Vậy 70254 mod (11*13) = 41
Bài 3: 60-1 mod (11*13)
➢ Bước 1: A = 60-1, M = (11*13)=143, m1=11, m2=13
➢ Bước 2:
o M1 = M/m1 = 143/11 = 13
o M2 = M/m2 = 143/13 = 11
➢ Bước 3:
o a1= A mod m1 = 60-1 mod 11 = 5-1 mod 11 = 9
o a2= A mod m2 = 60-1 mod 13 = 8-1 mod 13 = 5
➢ Bước 4:
o c1 = M1 * (M1-1 mod m1) = 13*(13-1 mod 11) = 13*(2-1 mod 11) = 13*6
= 78
o c2 = M2 * (M2-1 mod m2) = 11*(11-1 mod 13) = 11 * 6 = 66
➢ Bước 5: A = (a1*c1 + a2*c2) mod 143 = (9*78+ 5*66) mod 143 = 31 (mod
143)
Vậy 60-1 mod (11*13) = 31
Bài 4: ((21100 + 33-1) * 4551) mod (7*9*11)
➢ Bước 1: A = ((21100 + 33-1) * 4551), M = (7*9*11), m1=7, m2=9, m3=11
➢ Bước 2:
o M1 = M/m1 = (7*9*11)/7 = 99
o M2 = M/m2 = (7*9*11)/9 = 77
o M3 = M/m3 = (7*9*11)/11 = 63
➢ Bước 3:

o a1= A mod m1 = ((21100 + 33-1) * 4551) mod 7 = 6
o a2= A mod m2 = ((21100 + 33-1) * 4551) mod 9 = 0
o a2= A mod m2 = ((21100 + 33-1) * 4551) mod 11 = 8
➢ Bước 4:
o c1 = M1 * (M1-1 mod m1) = 99*(99-1 mod 7)

Bài 5: ((19125 + 2551) * 4721/37) mod (9*11*13)
Tự làm

18


Bài kiểm tra thường xuyên số 1
Bài tập 1: Tính 173-1 mod 1024 trên nghịch đảo vành Zn.
Bài tập 2: Tính 71130 mod 23
Bài tập 3: Tính 60-1 mod (11*13) theo công thức phần dư Trung Hoa
Bài tập 4: Dùng định lý Ferma và định lý ơle tính: 9190 mod 100

19



×