Tải bản đầy đủ (.doc) (88 trang)

Tìm hiểu nguyên nhân gây tổn thất dữ liệu và phương pháp bảo vệ thông tin trong chuyển giao hồ sơ y tế điện tử

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 (1.3 MB, 88 trang )

i

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

HỒ THỊ LÂM BÌNH

TÌM HIỂU NGUYÊN NHÂN GÂY TỔN THẤT
DỮ LIỆU VÀ PHƯƠNG PHÁP BẢO VỆ THÔNG TIN TRONG
CHUYỂN GIAO HỒ SƠ Y TẾ ĐIỆN TỬ

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

th¸i nguyªn - n¨m 2014

Số hóa bởi Trung tâm Học liệu

/>

ii

LỜI CAM ĐOAN
Những kết quả nghiên cứu được trình bày trong luận văn là hoàn toàn trung
thực, không vi phạm bất cứ điều gì trong luật sở hữu trí tuệ và pháp luật Việt Nam.
Nếu sai, tôi hoàn toàn chịu trách nhiệm trước pháp luật.
TÁC GIẢ LUẬN VĂN

Hồ Thị Lâm Bình

Số hóa bởi Trung tâm Học liệu


/>

3

LỜI CẢM ƠN
Đầu tiên, tôi xin gửi lời cảm ơn chân thành và sâu sắc nhất tới PGS.TS.
Trịnh Nhật Tiến đã định hướng và nhiệt tình hướng dẫn giúp đỡ tôi rất nhiều về
mặt chuyên môn, để tôi hoàn thành luận văn này.
Tôi xin gửi lời biết ơn đến các thầy, các cô đã giảng dạy và truyền đạt những
kinh nghiệm quý báu cho chúng tôi trong suốt hai năm học cao học tại trường Đại
học CNTT&TT - Đại học Thái Nguyên.
Tôi xin cảm ơn gia đình và các bạn học viên lớp CK11G - trường Đại học
CNTT&TT - Đại học Thái Nguyên những người đã luôn bên cạnh động viên, chia sẻ
và khích lệ tôi trong suốt thời gian học tập và làm luận văn tốt nghiệp.
Thái Nguyên, tháng 09 năm 2014
HỒ THỊ LÂM BÌNH

Số hóa bởi Trung tâm Học liệu

/>

4

MỤC LỤC
LỜI CAM ĐOAN ...................................................................................................... I
LỜI CẢM ƠN .........................................................................................................
III

MỤC


LỤC

............................................................................................................... IV DANH
MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT...................................... VII DANH MỤC CÁC
BẢNG .................................................................................. VIII DANH MỤC CÁC
HÌNH VẼ................................................................................ IX
MỞ
ĐẦU
.................................................................................................................... 1
CHƯƠNG 1. MỘT SỐ KHÁI NIỆM CƠ BẢN ......................................................... 4
1.1. TỔNG QUAN VỀ AN TOÀN THÔNG TIN ...................................................4
1.1.1. Khái niệm an toàn thông tin .................................................................... 4
1.1.2. Mục tiêu và nguyên tắc chung của an toàn thông tin..............................
4
1.1.3. Sự cần thiết của an toàn thông tin ...........................................................
5
1.2.

SỞ
TOÁN
...........................................................................................6

HỌC

1.2.1. Ước chung lớn nhất, bội chung nhỏ nhất ................................................
6
1.2.2. Quan hệ "đồng dư".................................................................................. 7
1.2.3. Số nguyên tố............................................................................................ 9
1.2.4. Phần tử nghịch đảo đối với phép nhân..................................................
11

1.2.5. Các phép tnh cơ bản trong không gian modulo ................................... 12
1.2.6. Độ phức tạp của thuật toán ...................................................................
12
1.3. CÁC HỆ MÃ HÓA...........................................................................................13
1.3.1. Khái niệm về mã hóa điện tử ................................................................ 13
1.3.2. Phân loại hệ mã hóa ............................................................................. 14
1.4.
CHỮ

.....................................................................................................17

SỐ


5

1.4.1. Tổng quan về chữ ký số ........................................................................ 17
1.4.2. Phân loại chữ ký số ............................................................................... 19
1.5. HÀM BĂM VÀ ĐẠI DIỆN TÀI LIỆU...........................................................20
1.5.1. Tổng quan về hàm băm ......................................................................... 20
1.5.2. Vấn đề đại diện tài liệu ......................................................................... 21
Số hóa bởi Trung tâm Học liệu

/>

6

1.6. ẨN GIẤU TIN (Steganography) ....................................................................23
1.7. KẾT LUẬN CHƯƠNG....................................................................................24
CHƯƠNG 2. NGUYÊN NHÂN VÀ PHƯƠNG PHÁP BẢO VỆ THÔNG TIN TRONG CHUYỂN

GIAO HỒ SƠ Y TẾ ĐIỆN TỬ .............................................. 25
2.1. TỔNG QUAN VỀ Y TẾ ĐIỆN TỬ ................................................................25
2.1.1. Khái niệm về Y tế điện tử (E-Health) ................................................... 25
2.1.2. Các loại hình Y tế điện tử ..................................................................... 28
2.1.3. Các tính chất đặc trưng cho Y tế điện tử .............................................. 29
2.2. NGUYÊN NHÂN GÂY TỔN THẤT DỮ LIỆU ............................................31
2.2.1. Nguy cơ và hiểm họa đối với hệ thống thông tin.................................. 31
2.2.2. Rò rỉ thông tin từ máy chủ web ............................................................ 32
2.2.3. Xem trộm nội dung hồ sơ Y tế điện tử ................................................. 34
2.2.4. Sửa đổi trái phép nội dung hồ sơ Y tế điện tử ..................................... 35
2.2.5. Thay đổi hồ sơ gốc ................................................................................ 37
2.2.6. Thời gian truyền hồ sơ Y tế chậm và sự ách tắc trong trao đổi hồ sơ Y
tế ...................................................................................................................... 37
2.3. PHƯƠNG PHÁP BẢO VỆ THÔNG TIN......................................................37
2.3.1. Ngăn ngừa rò rỉ thông tin từ máy chủ web ...........................................
37
2.3.2. Phương pháp mã hóa dữ liệu ................................................................
39
2.3.3. Phương pháp ẩn giấu tin ....................................................................... 43
2.3.4. Phương pháp sử dụng thuật toán chữ ký số ..........................................
45
2.4. KẾT LUẬN CHƯƠNG....................................................................................50
CHƯƠNG 3. CHƯƠNG TRÌNH THỬ NGHIỆM DÙNG CHỮ KÝ SỐ ................ 51
3.1. THỰC TRẠNG ỨNG DỤNG CNTT TRONG HỆ THỐNG THÔNG TIN Y TẾ TẠI
TUYÊN QUANG...................................................................................51
3.2. GIẢI QUYẾT THỰC TRẠNG .......................................................................52
3.3. CÀI ĐẶT CHƯƠNG TRÌNH KÝ SỐ RSA ...................................................55
3.3.1. Cài đặt chức năng ký số ........................................................................ 55
3.3.2. Cài đặt chức năng xác thực chữ ký số ................................................. 55



7

Số hóa bởi Trung tâm Học liệu

/>

8

3.3.3. Cài đặt chức năng mã hóa .................................................................... 55
3.3.4. Cài đặt chức năng giải mã .................................................................... 55
3.4. CẤU HÌNH HỆ THỐNG .................................................................................55
3.4.1. Yêu cầu hệ thống................................................................................... 55
3.4.2. Yêu cầu chức năng ................................................................................ 55
3.4.3. Yêu cầu về kiến trúc hệ thống............................................................... 55
3.4.4. Yêu cầu giao diện.................................................................................. 56
3.4.5. Phân tch các tnh năng ......................................................................... 56
3.5. THIẾT KẾ HỆ THỐNG..................................................................................56
3.5.1. Xác định các tác nhân ........................................................................... 56
3.5.2. Biểu đồ trình tự ..................................................................................... 56
3.6. HƯỚNG DẪN SỬ DỤNG CHƯƠNG TRÌNH ..............................................58
3.6.1. Chức năng ký số RSA- Ký.................................................................... 58
3.6.2. Chức năng xác thực chữ ký số RSA ..................................................... 59
3.6.3. Chức năng mã hóa................................................................................. 59
3.6.4. Chức năng giải mã ................................................................................ 60
3.7. KẾT LUẬN CHƯƠNG....................................................................................61
KẾT LUẬN ..............................................................................................................
62
TÀI LIỆU THAM KHẢO ...................................................................................... 64
PHỤ LỤC .................................................................................................................

65


9

Số hóa bởi Trung tâm Học liệu

/>

vii

DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
ATTT

An toàn thông tin BHYT

Bảo hiểm y tế BMTT

Bảo mật

thông tin
CA

Certificate Authority

Chứng thực chữ ký số

EMR

(Electronic Medical Record)


Hồ sơ y tế điện tử DNS

Domain Name System
Encryption Standard

Hệ thống tên miền DES

Data

Mã hóa dữ liệu
(Mã hóa khóa bí mật)

DSS

(Digital Signature Standard)

Chuẩn chữ ký số

MD

Message Digest

Mã hóa dữ liệu hoặc
(tóm tắt thông điệp), hàm băm

PKI

Public Key Infrastructure


Mã khóa công khai trên mạng
riêng ảo

Public key

Khoá công khai

Private key

Khoá bí mật RSA

Rivest Shamir Adleman

Mã hóa dữ liệu
(Mã hóa khóa công khai)

SHA

Secure Hash Algorithm

Thuật giải băm an toàn

SSL

Secure Socket Layer

Giao thức bảo mật

XML


Extensible Markup Language Ngôn ngữ đánh dấu mở rộng

YTĐT

Số hóa bởi Trung tâm Học liệu

Y tế điện tử

/>

8

DANH MỤC CÁC BẢNG

Bảng 1.1

Thuật toán Euclide tìm ước chung lớn nhất

Bảng 1.2

Tìm phần tử nghịch đảo của 3 trong Z7

Bảng 2.1

So sánh giấu thông tin mật và giấu thông tin thủy vân

Bảng 2.2

Bảng liên kết sự khác nhau cơ bản giữa giấu thông tin
trong ảnh đen trắng và ảnh màu


Số hóa bởi Trung tâm Học liệu

/>

9

DANH MỤC CÁC HÌNH VẼ
Hình 1.1

Quá trình thực hiện cơ chế mã hóa

Hình 1.2

Quá trình thực hiện mã hóa khóa công khai

Hình 2.1

Mô hình áp dụng cho bệnh viện thông minh
Vị trí của máy chủ web trong hạ tầng CNTT của các tổ chức, doanh

Hình 2.2

nghiệp

Hình 2.3. Sơ đồ chức năng của hệ mã hóa RSA
Hình 2.4

Sơ đồ biểu diễn thuật toán mã hóa


Hình 2.5

Lược đồ chung cho quá trình giấu tin

Hình 2.6

Tạo thông báo có ký bằng chữ ký số

Hình 3.1

Quá trình mã hóa và ký

Hình 3.2

Quá trình giải mã và xác thực

Hình 3.3

Load và mã hóa thông điệp

Hình 3.4

Ký thông điệp

Hình 3.5

Xác thực ký

Hình 3.6


Mã hóa thông điệp

Hình 3.7

Giao diện chức năng ký số

Hình 3.8

Giao diện Xác thực chữ ký số trên văn bản

Hình 3.9

Giao diện Mã hóa văn bản

Hình 3.10 Giao diện Giải mã văn bản

Số hóa bởi Trung tâm Học liệu

/>

1

MỞ ĐẦU
1. Lý do chọn đề tài
Nguy cơ mất an toàn thông tin do nhiều nguyên nhân, đối tượng tấn công
đa dạng… Thiệt hại từ những vụ tấn công mạng là rất lớn, đặc biệt là những thông
tin thuộc lĩnh vực kinh tế, an ninh, y tế… Do đó, việc xây dựng hàng rào kỹ thuật để
ngăn chặn những truy cập trái phép trở thành nhu cầu cấp bách trong các hoạt
động truyền thông. Vì vậy các thông tin truyền đi phải đảm bảo tnh chính xác,
không bị sửa đổi và rất nhiều trường hợp cần được đảm bảo tnh bảo mật thông

tin và cần được xác thực đúng người gửi, người nhận. Xuất phát từ thực tế, nhiều
biện pháp về an toàn thông tin ra đời.
Luận văn “Tìm hiểu nguyên nhân gây tổn thất dữ liệu và phương pháp bảo
vệ thông tin trong chuyển giao hồ sơ y tế điện tử” được nghiên cứu và thực hiện
trên các vấn đề cuộc sống đòi hỏi việc trao đổi thông tin hàng ngày giữa các tổ
chức và cá nhân mà yêu cầu là an toàn và bảo mật thông tin được đề ra, kèm
theo là demo thử nghiệm ứng dụng chữ ký số RSA.
2. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu
Nghiên cứu các giải pháp mã hóa để bảo mật thông tin, những phương
pháp, kỹ thuật tạo các chữ ký số trên tài liệu, văn bản điện tử để xác thực nguồn
gốc tài liệu hay văn bản người gửi.
Các hệ mật mã khóa công khai (trong đó hệ mã RSA được sử dụng là đối
tượng nghiên cứu chính của đề tài) nhằm phát hiện các phép xử lý toán học cần tối
ưu, ngoài ra từ hệ mã đưa ra phương pháp mã hóa tệp văn bản để bảo vệ thông
tin. Từ kết quả thu được bước đầu đề tài đưa ra một cách xây dựng thử nghiệm
vào chữ ký số áp dụng được các kết quả tối ưu.
Luận văn sẽ tập trung nghiên cứu và làm rõ hơn về ý tưởng, cơ sở toán học,
thuật toán và độ phức tạp của mã hóa nói chung và của hệ mã hóa công khai nói
riêng.


2

Phạm vi nghiên cứu
Luận văn được nghiên cứu dựa trên:
1) Học hỏi, xin ý kiến của thầy hướng dẫn và các đồng nghiệp.
2) Nghiên cứu các tài liệu chuyên môn liên quan bằng tiếng Việt, tiếng Anh,
tìm kiếm thông tin trên Internet.
3) Tìm hiểu và quan sát thực tiễn.

4) Thử nghiệm chương trình.
3. Những nội dung nghiên cứu chính
Ngoài phần mở đầu và kết luận, kết cấu của luận văn gồm 3 chương. Bao
gồm các nội dung cụ thể sau:
Chương 1 đã tìm hiểu những vấn đề mang tnh cơ sở toán học, cơ sở
khoa học nền tảng cho việc bảo mật và xác thực thông tin. Khái niệm về mã hóa,
chữ ký số, một số sơ đồ chữ ký hiện đang được sử dụng phổ biến, hàm băm, ẩn
giấu tin, … Chương 2 trình bày khái niệm về y tế điện tử, các loại hình, tnh chất,
lợi ích
khi ứng dụng công nghệ thông tin trong y tế điện tử; một số nguyên nhân (có
thể)
gây tổn thất dữ liệu trong mạng lưới y tế và cách giải quyết trong chuyển giao hồ
sơ y tế điện tử; thuật toán và ví dụ minh họa khi sử dụng phương pháp mã hóa dữ
liệu (DES, RSA); phương pháp ẩn giấu tin (ẩn giấu tin bí mật và thủy vân số),
phương pháp sử dụng thuật toán chữ ký số (RSA, chữ ký không thể phủ định) để
đưa ra một trong số cách giải quyết gây tổn thất dữ liệu trong y tế điện tử.
Chương 3 là thử nghiệm chương trình đối với một trong số các bài toán giải
quyết vấn đề về chữ ký số RSA trong chuyển giao hồ sơ y tế điện tử.
4. Các ký hiệu dùng trong luận văn
P

Là tập hữu hạn các văn bản có thể

A

Là tập hữu hạn các chữ ký có thể K

Là tập hữu hạn các khóa có thể
S


Là tập các thuật toán ký


3

V

Là tập các thuật toán kiểm thử

C

Là tập hữu hạn các bản mã có thể E

Là tập hợp các hàm mã hóa có thể D
Là tập các hàm giải mã có thể
ek

Thuật toán mã hóa

dk

Thuật toán giải mã

Gcd

Ước chung lớn nhất

Lcm

Bội chung nhỏ nhất


Sigk

Thuật toán ký

Verk

Thuật toán kiểm tra chữ ký


4

Chương 1.

MỘT SỐ KHÁI NIỆM CƠ BẢN

1.1. TỔNG QUAN VỀ AN TOÀN THÔNG TIN
1.1.1. Khái niệm an toàn thông tin
An toàn nghĩa là thông tin được bảo vệ, các hệ thống và những dịch vụ có
khả năng chống lại những tai hoạ, lỗi và sự tác động không mong đợi, các thay đổi
tác động đến độ an toàn của hệ thống là nhỏ nhất.
Hệ thống có một trong các đặc điểm sau được gọi là không an toàn: Thông
tin bị rò rỉ (thông tin trong hệ thống bị người không được quyền truy cập tìm
cách lấy và sử dụng), thông tin bị xáo trộn (bị thay thế hoặc sửa đổi sai lệch nội
dung).
1.1.2. Mục tiêu và nguyên tắc chung của an toàn thông tin
Các mục tiêu của an toàn thông tin:
- Tính bảo mật: Tài sản của hệ thống chỉ được truy cập bởi những người có
thẩm quyền, các loại truy cập gồm có: đọc (reading), xem (viewing), in ấn
(printing), sử dụng chương trình hoặc hiểu biết về sự tồn tại của một đối

tượng trong một tổ chức. Tính bí mật có thể được bảo vệ nhờ việc kiểm soát truy
cập (theo nhiều kiểu khác nhau). Kiểm soát truy cập chỉ có thể được thực hiện
với các hệ thống phần cứng vật lý, còn đối với các dữ liệu công cộng thì thường
phương pháp hiệu quả là các phương pháp mật mã học, mã hóa dữ liệu, thủy phân
số ...
- Tính toàn vẹn dữ liệu: tài sản của hệ thống chỉ được thay đổi bởi những
người có thẩm quyền.
- Tính sẵn dùng: tài sản luôn sẵn sàng được sử dụng bởi những người có
thẩm quyền.
- Tính xác thực: quá trình xác nhận đặc điểm nhận biết của người dùng qua
đó quyết định quyền truy nhập CSDL và khả năng thực hiện các giao dịch của
người đó. Việc xác thực thường qua tên truy nhập và mật khẩu hay các
phương pháp phức tạp hơn như chứng thực số.
Nguyên tắc của an toàn bảo mật thông tin:


5

- Việc thẩm định về bảo mật phải là khó và cần tnh tới tất cả các tình huống,
khả năng tấn công có thể được thực hiện.


6

- Tài sản được bảo vệ cho tới khi hết giá trị sử dụng hoặc hết ý nghĩa bảo mật.
1.1.3. Sự cần thiết của an toàn thông tin
Người ta nhận được một bản tin trên mạng, thì lấy gì đảm bảo rằng nó là
của đối tác đã gửi cho họ. Khi nhận được tờ Sec điện tử hay tiền điện tử trên
mạng, thì có cách nào xác nhận rằng nó là của đối tác đã thanh toán cho ta. Tiền đó
là thật hay tiền giả?

Thông thường người gửi văn bản quan trọng phải ký phía dưới. Nhưng khi
truyền tin trên mạng, văn bản hay giấy thanh toán có thể bị trộm cắp và phía dưới
có thể dán một chữ ký khác. Tóm lại với hình thức ký như cũ, chữ ký rất dễ bị giả
mạo.
Để giải quyết tình hình trên và đảm bảo cho nhu cầu giữ bí mật thông tin
liên lạc cũng như đảm bảo an toàn dữ liệu, từ lâu con người đã phát minh ra
một số công cụ hết sức hiệu quả như:
Mã hóa được hiểu là thay đổi hình dạng thông tin gốc, khiến người khác
khó nhận ra, tức là giấu đi ý nghĩa của thông tin gốc. Mã hóa là một công cụ mạnh,
và có lịch sử lâu đời, đã có nhiều kết quả nghiên cứu thành công và có ứng
dụng rất lớn trong việc đảm bảo an toàn thông tin liên lạc.
Chữ kí số (digital signature) là đoạn dữ liệu ngắn đính kèm với văn bản gốc
thực tác giả (người kí văn bản) của văn bản và giúp người nhận kiểm tra tính nội
dung văn bản gốc.
Thủy vân (watermarking) là một ứng dụng đã có từ lâu đời để bảo vệ bản
quyền cho các cuốn sách. Tuy nhiên, thủy vân số (digital watermarking) lại là một
lĩnh vực mới, đang nhận được nhiều sự quan tâm cũng như nghiên cứu của
chuyên gia trên thế giới. Sử dụng thủy vân số có thể thay đổi và tác động vào
chất lượng của tài liệu số như ý muốn, đồng thời với đó là thủy vân số có thể gắn
liền với tài liệu, đảm bảo tài liệu được bảo vệ bản quyền cho tới khi bị hủy hoại.
Hàm băm (hash function) là hàm có nhiệm vụ “lọc” (băm) tài liệu (bản tin)
và cho kết quả là một giá trị “băm”có kích thước cố định, còn gọi là “đại diện
tài liệu” hay “đại diện bản tin”, “đại diện thông điệp đệm”. Nhờ đó ta có thể đảm
bảo tài liệu được vẹn toàn trên đường truyền.


7

1.2. CƠ SỞ TOÁN HỌC
1.2.1. Ước chung lớn nhất, bội chung nhỏ nhất

1.2.1.1. Ước số, bội số [3]
Cho hai số nguyên a, b b 0 . Nếu có một số nguyên q sao cho a b * q,
ta nói rằng a chia hết cho b , kí hiệu a \ b . Ta nói b là ước của a và a là bội của b .
Ví dụ:
Cho a = 6, b = 2, ta có 6 = 2*3, ký hiệu 2\6. Ở đây 2 là ước của 6 và 6 là bội của 2.
Cho các số nguyên a, b ≠ 0, tồn tại cặp số nguyên (q, r) (0 ≤ r≤ /b/) duy nhất
sao cho a = b*q + r. Khi đó q gọi là thương nguyên, r gọi là số dư của phép chia a
cho b. Nếu r = 0 thì ta có phép chia hết.
Ví dụ: Cho a = 13, b = 5, ta có 12 = 5*2 + 3. Ở đây thương q=2, số dư là r = 3.
1.2.1.2. Ước chung lớn nhất, bội chung nhỏ nhất
- Số nguyên d được gọi là ước chung của các số nguyên a , a ,..., a , nếu
1
2
n

là ước của tất cả các số đó.
- Số nguyên m được gọi là bội chung của các số nguyên

a1, a2 ,..., an , nếu

là bội của tất cả các số đó.



- Một ước chung d >0 của tất cả các số nguyên a1, a2 ,...,

trong đó mọi

an
ước chung của a1, a2 ,...,


đều là ước của d , thì d được gọi là ước chung lớn nhất

an
(UCLN)

của

a1, a2 ,..., an .



hiệu

d

gcd(a1 , a2, ..., a )
n

hay

d UCLN a1 , a2 ,..., an . Nếu gcd(a1, a2 ,..., an ) .
- Nếu gcd(a1 , a2 ,..., an
cùng nhau.

1

thì các số a1, a2 ,...,

)


- Một bội chung m

được gọi là nguyên tố

an
0 của các số nguyên a1, a2 ,..., an , trong đó mọi
bội

chung của a1, a2 ,..., an , đều là bội của m thì m được gọi là bội chung nhỏ
nhất
(BCNN) của a1, a2 ,..., an . Ký

hiệu

m lcm(a1,
)

2

,..., an

hay


8

m BCNN ( a1, a2 ,..., an ) .



Ví dụ: Cho a=20, b=25, gcd (20,25)=5, lcm (20,25)=100.
Hai số 20 và 13 là số nguyên tố cùng nhau, vì gcd (20, 13) = 1.
Ví dụ: a = 30, b = 18; gcd(30,18) = gcd(18,12) = gcd(12,6) = gcd(6,0) = 6
a

b

r

a = b*q + r

30

18

12

30 = 18*1 +12

18

12

6

18 = 12*1+ 6

12

6


0

12 = 6*2 + 0

Bảng 1.1 Thuật toán Euclide tìm ước chung lớn nhất

Ký hiệu :

Zn = {0, 1, 2, … , n-1} là tập các số nguyên không âm < n.
Z

*

n=

{e Zn , e là nguyên tố cùng nhau với n}. Tức là e # 0.

1.2.2. Quan hệ "đồng dư"
1.2.2.1. Khái niệm
Cho các số nguyên a, b, m (m>0). Ta nói rằng a và b đồng dư với nhau theo
modul m nếu chia a và b cho m, ta nhận được cùng một số dư.
Ký hiệu a

b ( mod m)

Ví dụ:
17

5 ( mod 3) vì chia 17 và 5 cho 3 được cùng số dư là 2


1.2.2.2. Các tính chất của quan hệ đồng dư
1/ Quan hệ đồng dư là qua hệ tương đương Z
Với mọi số nguyên dương m ta có
a

a ( mod m) với mọi a

a

b ( mod m) thì b a ( mod m); ( Tính chất đối xứng)

a

b ( mod m) và b

Z; ( Tính chất phản xạ)

c ( mod m) thì a

c ( mod m); ( Tính chất bắc cầu)

2/ Tổng hay hiệu các đồng dư
(a + b)( mod n)

[( a mod n) + ( b mod n ] ( mod n)

(a - b) (mod n)

[(a mod n) – (b mod n)] (mod n)


3/ Tích các đồng dư
( a*b)( mod n)

[( a mod n) * ( b mod n) ] (mod n)


1.2.2.3. Hệ quả
+ Có thể cộng hoặc trừ cùng một số vào hai vế của một đồng dư thức.
+ Có thể chuyển vế các số hạng của đồng dư thức bằng cách đổi dấu các số
hạng đó.
+ Có thể cộng vào một vế của đồng dư thức một bội của modulo
a

b (mod m)

a + km

b (mod m) với mọi k Z

+ Có thể nhân hai vế của một đồng dư thức cùng với một số:
a

b (mod m)

ac

bc (mod m) với mọi c Z

+ Có thể nâng lũy thừa bậc nguyên không âm cho 2 vế của một đồng dư thức

a

b ( mod m)

a

n

n

b (mod m) với mọi n Z

+

+ Có thể chia 2 vế đồng dư thức cho một ước chung nguyên tố với
modulo c\a, c\b, (c,m)=1, a

b (mod m)

a/c

b/c (mod m).

+ Có thể nhân 2 vế đồng dư thức và modulo cùng với một số nguyên dương:
Nếu a

b (mod m), c>0

ac bc (mod mc)


+ Có thể chia 2 vế đồng dư thức và modulo cho cùng một số nguyên dương
là ước chung của chúng:
Nếu c/(a, b, m)

a/c b/c (mod m/c)

+a

b (mod m )

a

b (mod k ) với k\ m

+a

b (mod m)

gcd(a, m) = gcd(b,m)

Các lớp thặng dư
- Quan hệ “đồng dư” theo modulo m trên tập Z (tập các số nguyên) là một
quan hệ tương đương (vì có tnh chất phản xạ, đối xứng, bắc cầu), do đó nó tạo ra
trên tập Z một phân hoặc chỉ gồm các lớp tương đương khi và chỉ khi chúng có
cùng một số dư khi chia cho m.
- Mỗi lớp tương đương đại diện bởi một số duy nhất Zm = { 0, 1, 2, …, m-1}
là số dư khi chia các số trong lớp cho m, ký hiệu một lớp được đại diện bởi số a là
[a] m. Như vậy [a] m = [b] m

a


b (mod m)

Vì vậy ta có thể đồng nhất Zm với tập các lớp tương đương theo modulo m.


- Zm = {0, 1, 2,…,m-1} được gọi là tập các thặng dư đầy đủ theo modulo m.
Mọi số nguyên bất kỳ đều có thể tìm được trong Zm một số đồng dư với mình theo
modulo m.
1.2.3. Số nguyên tố
1.2.3.1. Khái niệm
Số nguyên tố là số tự nhiên lớn hơn 1 và chỉ có hai ước là 1 và chính nó.
Ví dụ: Các số 2, 3, 5, 7, 11, 13, 17, 19, 31, 37 là số nguyên tố.
1.2.3.2. Một số định lý về số nguyên tố
1). Định lý về số nguyên dương >1
Mọi số nguyên dương n > 1 đều có thể biểu diễn được duy nhất dưới dạng

n

Pn 1 nP2 Pk n trong đó: k, n (i = 1, 2, 3, …, k) là các số tự nhiên, Pi là các số
...
1

k

2

nguyên tố, từng đôi một khác nhau.
2) Định lý Mersence
k


Cho p= 2 – 1, nếu p là số nguyên tố thì k phải là số nguyên tố.

3) Hàm Euler

Cho số nguyên dương a, số lượng các số nguyên dương bé hơn n và nguyên

tố cùng nhau với n được ký hiệu

( p) và gọi là hàm Euler.
( p)

Nhận xét: Nếu p là số nguyên tố, thì

p 1

Ví dụ: Tập các số nguyên không âm nhỏ hơn 7 là Z7 = { 0, 1, 2, 3, 4, 5, 6}
Do 7 là số nguyên tố, nên tập các số nguyên dương nhỏ hơn 7 và nguyên
tố cùng nhau với 7 là Z7* ={ 1, 2, 3, 4, 5, 6}. Khi đó | Z| = ( p)

p 1 =7 – 1 = 6

Định lý về hàm Euler
Nếu

(n)

n




( p). (q)

tch

của

hai

số

nguyên

tố

p,

q

thì

( p 1)(q 1)

Một số phương pháp kiểm tra tính nguyên tố
Kiểm tra tnh nguyên tố của một số nguyên dương là bài toán nảy sinh
trong nhiều ứng dụng, đặc biệt là trong lý thuyết mật mã.


- Phương pháp cổ điển
Ý tưởng:

Kiểm tra tính nguyên tố của một số nguyên dương n theo định nghĩa:
+ Thử lần lượt tìm các ước của n, từ 2 đến n/2
+ Nếu không tìm được ước nào thì kết luận n là số nguyên tố.
Thuật toán
KT:= 0;
For i:= 1 to sqrt (n) do
If ( n mod i) = 0 then
Begin
KT:= 1; Break;
End;
If KT = 1 Then Writeln („ n không nguyên tố‟)
Else Writeln („ n Nguyên tố‟);
- Phương pháp xác suất
Trên cơ sở các định lý về số nguyên tố, hiện nay có các phương pháp “Xác
suất” để kiểm tra tnh nguyên tố của một số nguyên dương n.
Ví dụ: phương pháp Solovay – Strassen, Miller – Rabin
1.2.3.3. Định lý Euler
Nếu gcd( a, m) = 1 thì a

(m)

1(mod )mm

Trường hợp m là số nguyên tó, ta có định lý Ferma.
Ví dụ: m = 10,
Ta có 7

4

(m)=


(2).

1( mod 10), 9

4

(5)=1*4=4

1( mod 10), 21

4

1( mod 10)

Hệ quả 1
a

Nếu gcd (c, m)=1 và a b ( mod (m)) với a,b là các số tự nhiên thì c =
a
b
c (mod m) và suy ra c
c a mod ( m )(mod m).
Chứng minh:

a b(mod
c

a


cb

(m))

k (m)

cb(c

a

nên
(m) k

)

b

b k (m), k

Z

c (mod
m) , theo định lý Euler.





vậy



Nhận xét: Hệ quả trên giúp giảm nhẹ việc tnh toán đồng dư của lũy thừa
bậc cao. Ví dụ Ta thấy
Do đó 2

1004

(15) =

(5).

(3) = 4*2 =8 và 1004

4 (mod 8)

4

(mod 15) = 2 (mod 15) = 16 (mod 15) = 1.

Hệ quả 2
Nếu các số nguyên e, d thỏa mãn e.d
e d

nguyên tố cùng nhau với m, ta có (c )

1 (mod

(m), thì với mọi số c

c (mod m)


Chứng minh: Đặt a= e.d và b=1, từ hệ quả 1 ta có hệ quả 2
Hệ quả này đóng vai trò then chốt trong việc thiết lập các hệ mã sau này ví dụ: RSA
1.2.4. Phần tử nghịch đảo đối với phép nhân
Định nghĩa
Zn sao cho a.
b
-1
nghịch đảo của a trong Zn và ký hiệu a .
Cho a

Zn, nếu tồn tại b

1(mod ) , ta nói b là phần tử

Một phần tử nghịch đảo, gọi là khả nghịch.
Input: a

Zn , n

Output: Phần tử nghịch đảo của a
Procedure Invert ( a,n);
Begin
g0:= n; g1:= a; u0:= 1; u1:= 0; v0:= 0; v1:= 1; i:= 1;
While gi
Begin

0 do
y:= gi-1 div gi ; gi+1:= gi-1 – y. gi;
ui+1:= ui-1 – y. ui; vi+1:= vi-1 – y. vi; i:= i+1;


end;
t:= vi-1;
-1

-1

if t > 0 then a := t else a := t+n;
end;
Ví dụ: Tìm phần tử nghịch đảo của 3 trong Z7. Tức là phải giải phương trình
3.x

1 (mod 7), x sẽ là phần tử nghịch đảo của 3.


×