debai2011
TRANSCRIPT
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 1/17
THỰC HÀNH MÔN HỌC AN TOÀNDỮ LIỆU
Phần 1. CƠ SỞ TOÁN HỌC
Bài tập 1.1
Trình bày phương pháp Soloway - Stracel kiểm tra số nguyên tố lớn:
- Thuật toán Soloway - Stracel.
- Ví dụ minh hoạ.
- Chứng minh tính đúng đắn của thuật toán.
- Viết chương trình kiểm tra số nguyên tố lớn theo Phương pháp này.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
Bài tập 1.2
Trình bày phương pháp Agrawal - Kayal kiểm tra số nguyên tố lớn:
- Thuật toán Agrawal - Kayal.
- Ví dụ minh hoạ.
- Chứng minh tính đúng đắn của thuật toán.
- Viết chương trình kiểm tra số nguyên tố lớn theo Phương pháp này.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
Bài tập 1.3
Trình bày phương pháp Misene kiểm tra số nguyên tố lớn:
- Thuật toán Misene.
- Ví dụ minh hoạ.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 2/17
- Chứng minh tính đúng đắn của thuật toán.
- Viết chương trình kiểm tra số nguyên tố lớn theo Phương pháp này.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
Bài tập 1.4
Trình bày các phương pháp khác kiểm tra số nguyên tố lớn
(Ngoài PP Soloway – Stracel, Agrawal – Kayal, Misene).
Ví dụ Phương pháp “Sàng”, …
- Thuật toán.
- Ví dụ minh hoạ.
- Chứng minh tính đúng đắn của thuật toán.
- Viết chương trình kiểm tra số nguyên tố lớn theo Phương pháp này.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
Bài tập 1.5
Trình bày một số phương pháp tìm phần tử nguyên thuỷ (phần tử sinh)
trong nhóm Cyclic. Mỗi phương pháp trình bày:
- Thuật toán tìm phần tử nguyên thuỷ.
- Ví dụ minh hoạ.
- Viết chương trình tìm phần tử nguyên thuỷ.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 3/17
Tìm nhiều phương pháp khác nhau xác định phần tử nguyên thuỷ.
Bài tập 1.6
Trình bày một số phương pháp phân tích số nguyên thành tích các thừa số nguyên tố.
Mỗi phương pháp trình bày:
- Thuật toán phân tích.
- Ví dụ minh hoạ.
- Viết chương trình phân tích.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
Tìm nhiều phương pháp phân tích khác nhau.
Bài tập 1.7
Trình bày một số phương pháp giải Bài toán Logarit rời rạc.
Mỗi phương pháp trình bày:
- Thuật toán.
- Ví dụ minh hoạ.
- Viết chương trình.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
Tìm nhiều phương pháp khác nhau.
Bài tập 1.8
Trình bày một số phương pháp giải Bài toán Tính số mũ to (theo modulo).
Mỗi phương pháp trình bày:
- Thuật toán.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 4/17
- Ví dụ minh hoạ.
- Viết chương trình.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
Tìm nhiều phương pháp khác nhau.
Bài tập 1.9
Trình bày một số phương pháp giải Bài toán Tính phần tử nghịch đảo (theo modulo).
Mỗi phương pháp trình bày:
- Thuật toán.
- Ví dụ minh hoạ.
- Viết chương trình.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150.
Tìm nhiều phương pháp khác nhau.
Phần 2. MÃ HÓA DỮ LIỆU
Bài tập 2.1
Lập trình bày bằng ngôn ngữ C thực hiện mã hóa 1 dòng chữ không có dấu
bằng Hệ mã hoá chuẩn DES.
Chú thích: phối hợp với Bài tập 2.2 để có chương trình hoàn chỉnh gồm 2 phần:
Lập mã và Giải mã.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 5/17
Bài tập 2.2 Lập trình bày bằng ngôn ngữ C thực hiện giải mã 1 dòng chữ không có dấu
bằng Hệ mã hoá chuẩn DES.
Chú thích: phối hợp với Bài tập 2.1 để có chương trình hoàn chỉnh gồm 2 phần:
Lập mã và Giải mã.
Bài tập 2.3
Lập trình bày bằng ngôn ngữ C thực hiện mã hóa 1 dòng chữ Việt (có dấu)
bằng Hệ mã hoá chuẩn DES.
Chú thích: phối hợp với Bài tập 2.4 để có chương trình hoàn chỉnh gồm 2 phần:
Lập mã và Giải mã.
Bài tập 2.4 Lập trình bày bằng ngôn ngữ PASCAL thực hiện giải mã 1 dòng chữ Việt (có dấu)
bằng Hệ mã hoá chuẩn DES.
Chú thích: phối hợp với Bài tập 2. 3 để có chương trình hoàn chỉnh gồm 2 phần:
Lập mã và Giải mã.
Bài tập 2.5
Cho ví dụ minh họa thực hiện mã hóa 1 dòng chữ không có dấu
bằng Hệ mã hoá chuẩn DES: Diễn giải và cho kết quả từng bước mã hóa.
Chú thích: phối hợp với Bài tập 2.6 để có ví dụ hoàn chỉnh gồm 2 phần:
Lập mã và Giải mã.
Bài tập 2.6 Cho ví dụ minh họa thực hiện giải mã 1 dòng chữ không có dấu
bằng Hệ mã hoá chuẩn DES: Diễn giải và cho kết quả từng giải mã.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 6/17
Chú thích: phối hợp với Bài tập 2.5 để có ví dụ hoàn chỉnh gồm 2 phần:
Lập mã và Giải mã.
Bài tập 2.7 Trình bày quá trình giải mã bản mã 64 bit thành bản rõ 64 bit.
theo Hệ mã hoá chuẩn DES.
Chứng minh rằng với đầu vào là bản mã 64 bit, theo sơ đồ giải mã như vậy,
sẽ thực sự nhận được bản rõ 64 bit.
Bài tập 2.8
Trình bày qui tắc tạo ra các bảng trong Hệ mã hoá chuẩn DES, ví dụ:
IP, IP – 1, E, PC – 1, PC – 2, S1, S2, …, S8,…
Bài tập 2.9 Trình bày các cách dùng Hệ mã hoá chuẩn DES.
Với mỗi cách dùng hãy lập chương trình và cho một ví dụ minh họa.
Bài tập 2.10 Trình bày về tính bảo mật và phương pháp thám mã Hệ mã hoá chuẩn DES.
Với mỗi phương pháp thám mã hãy cho một ví dụ minh họa.
Bài tập 2.11 Trình bày việc sử dụng Chương trình mã hoá chuẩn DES trong SSL.
Bài tập 2.12
Trình bày việc sử dụng Chương trình mã hoá chuẩn DES trong TLS.
Bài tập 2.13
Lập trình bày bằng ngôn ngữ C thực hiện mã hóa 1 số lớn (dạng hệ 2, hệ 10, hệ 16).
sau đó giải mã bằng Hệ mã hoá RSA.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 7/17
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150.
Bài tập 2.14 Trình bày việc sử dụng Chương trình mã hoá RSA trong SSL.
Bài tập 2.15 Trình bày việc sử dụng Chương trình mã hoá RSA trong TLS.
Bài tập 2.16
Lập trình bày bằng ngôn ngữ C thực hiện mã hóa 1 số lớn (dạng hệ 2, hệ 10, hệ 16).
sau đó giải mã bằng Hệ mã hoá Elgamal.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150.
Bài tập 2.17 Trình bày việc sử dụng Chương trình mã hoá Elgamal trong SSL.
Bài tập 2.18 Trình bày việc sử dụng Chương trình mã hoá Elgamal trong TLS.
Bài tập 2.21 Lập trình thực hiện Hệ mã hoá Dịch chuyển.
Bài tập 2.22 Lập trình thực hiện Hệ mã hoá Thay thế.
Bài tập 2.23 Lập trình thực hiện Hệ mã hoá Hoán vị.
Bài tập 2.24 Lập trình thực hiện Hệ mã hoá Affine.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 8/17
Bài tập 2.25 Lập trình thực hiện Hệ mã hoá Vigenere.
Bài tập 2.26 Lập trình thực hiện Hệ mã hoá Hill.
Phần 3. CHỮ KÝ SỐ
Bài tập 3.1
Lập trình bày bằng ngôn ngữ C thực hiện Ký số trên 1 số lớn (dạng hệ 2, hệ 10, hệ 16).
sau đó Kiểm tra chữ ký theo sơ đồ ký RSA.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150.
Bài tập 3.2 Trình bày việc sử dụng Chương trình ký số RSA trong SSL.
Bài tập 3.3 Trình bày việc sử dụng Chương trình ký số RSA trong TLS.
Bài tập 3.4
Lập trình bày bằng ngôn ngữ C thực hiện Ký số trên 1 số lớn (dạng hệ 2, hệ 10, hệ 16).
sau đó Kiểm tra chữ ký theo sơ đồ ký Elgamal.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150
.
Bài tập 3.5 Trình bày việc sử dụng Chương trình ký số Elgamal trong SSL.
Bài tập 3.6
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 9/17
Trình bày việc sử dụng Chương trình ký số Elgamal trong TLS.
Bài tập 3.7
Lập trình bày bằng ngôn ngữ C thực hiện Ký số trên 1 số lớn (dạng hệ 2, hệ 10, hệ 16).
sau đó Kiểm tra chữ ký theo sơ đồ ký DSS.
Chú ý:
Chương trình ở 2 mức: Tính toán với các số nhỏ, Tính toán với các số lớn cỡ > 10150.
Bài tập 3.8 Trình bày việc sử dụng Chương trình ký số DSS trong SSL.
Bài tập 3.9
Trình bày việc sử dụng Chương trình ký số DSS trong TLS.
Phần 4. HÀM BĂN VÀ ĐẠI DIỆN THÔNG ĐIỆP
Bài tập 4.1
Trình bày vấn đề Tạo đại diện Thông điệp (Digest), Hàm băm (Hash Function):
- Khái niệm đại diện của Thông điệp, Hàm băm, ý nghĩa của vấn đề.
- Các tính chất của Hàm băm.
- Trình bày ý tưởng chính của một số Hàm băm hiện nay.
- Cho ví dụ minh hoạ.
Bài tập 4.2
Trình bày Hàm băm MD5:
- Thuật toán băm MD5.
- Các đặc điểm đặc trưng của Thuật toán băm MD5.
- Ví dụ bằng số minh hoạ Thuật toán băm MD5.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 10/17
- Viết chương trình thực hiện theo Thuật toán băm MD5.
Bài tập 4.3
Trình bày Hàm băm SHA1:
- Thuật toán băm SHA1.
- Các đặc điểm đặc trưng của Thuật toán băm SHA1.
- Ví dụ bằng số minh hoạ Thuật toán băm SHA1.
- Viết chương trình thực hiện theo Thuật toán băm SHA1.
Bài tập 4.4
Lập trình bày bằng ngôn ngữ C thực hiện tính giá trị hàm băm dòng MD trên 1 xâu ký tự.
Chú ý:
Chương trình gồm 2 phần chính: Tạo thông điệp đệm M, tính giá trị hàm băm trên M.
Bài tập 4.5 Trình bày việc sử dụng Chương trình tính giá trị hàm băm dòng MD trong SSL.
Bài tập 4.6 Trình bày việc sử dụng Chương trình tính giá trị hàm băm dòng MD trong TLS.
Bài tập 4.7
Lập trình bày bằng ngôn ngữ C thực hiện tính giá trị hàm băm dòng SHA trên 1 xâu ký tự.
Chú ý:
Chương trình gồm 2 phần chính: Tạo thông điệp đệm M, tính giá trị hàm băm trên M.
Bài tập 4.8
Trình bày việc sử dụng Chương trình tính giá trị hàm băm dòng SHA trong SSL.
Bài tập 4.9 Trình bày việc sử dụng Chương trình tính giá trị hàm băm dòng SHA trong TLS.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 11/17
Phần 5. GIẤU TIN, THỦY VÂN, NÉN TIN
Bài tập 5.1
Trình bày phương pháp Giấu tin:
- Khái niệm giấu tin. Ứng dụng của Giấu tin.
- Một số phương pháp Giấu tin.
Bài tập 5.2
Lập trình ngôn ngữ C thực hiện Giấu tin bằng phương pháp sử dụng tính chẵn lẻ của tổng số bit1.
Bài tập 5.3
Lập trình ngôn ngữ C thực hiện Giấu tin bằng phương pháp giấu vào bit ít quan trọng LSB.
Bài tập 5.4
Lập trình ngôn ngữ C thực hiện Giấu tin bằng phương pháp M.Y.Wu - J.H.Lee
Bài tập 5.5
Trình bày phương pháp Thủy vân số :
- Khái niệm Thủy vân số. Ứng dụng của Thủy vân số.
- Một số phương pháp Thủy vân số.
Bài tập 5.6
Trình bày phương pháp Nén tin:
- Khái niệm Nén tin. Ứng dụng của Nén tin.
- Một số phương pháp Nén tin.
Phần 6 . QUẢN LÝ KHÓA MẬT MÃ
Bài tập 6.1
Trình bày vấn đề Phân phối khoá (Key Distribution):
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 12/17
- Khái niệm Phân phối khoá.
- Trình bày ý tưởng chính của một số sơ đồ Phân phối khoá hiện nay.
- Cho ví dụ minh hoạ.
Bài tập 6.2
Lập trình ngôn ngữ C thực hiện Phân phối khoá theo Sơ đồ BLOM với k=1.
- Sơ đồ BLOM với k=1.
- Các đặc điểm đặc trưng của Sơ đồ BLOM với k=1.
- Ví dụ bằng số minh hoạ việc Phân phối khoá theo Sơ đồ BLOM với k=1.
- Viết chương trình thực hiện theo sơ đồ này.
- Sơ đồ BLOM với k tuỳ ý.
Bài tập 6.3
Trình bày việc sử dụng Chương trình Phân phối khoá theo Sơ đồ BLOM với k=1
trong công nghệ mã nguồn mở.
Bài tập 6.4
Lập trình ngôn ngữ C thực hiện Phân phối khoá theo Sơ đồ Diffie - Hellman.
- Sơ đồ Diffie - Hellman.
- Các đặc điểm đặc trưng của Sơ đồ Diffie - Hellman.
- Ví dụ bằng số minh hoạ việc Phân phối khoá theo Sơ đồ Diffie - Hellman.
- Viết chương trình thực hiện theo sơ đồ này.
Bài tập 6.5
Trình bày việc sử dụng Chương trình Phân phối khoá theo Sơ đồ Diffie - Hellman
trong công nghệ mã nguồn mở.
Bài tập 6.6
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 13/17
Lập trình ngôn ngữ C thực hiện Phân phối khoá theo Sơ đồ Kerberos.
- Sơ đồ Kerberos.
- Các đặc điểm đặc trưng của Sơ đồ Kerberos.
- Ví dụ bằng số minh hoạ việc Phân phối khoá theo Sơ đồ Kerberos.
- Viết chương trình thực hiện theo sơ đồ này.
Bài tập 6.7
Trình bày việc sử dụng Chương trình Phân phối khoá theo Sơ đồ Kerberos
trong công nghệ mã nguồn mở.
Bài tập 6.8
Trình bày vấn đề Thoả thuận khoá (Key Agreement) (Trao đổi khóa: Key Exchange):
- Khái niệm Thoả thuận khoá.
- Trình bày ý tưởng chính một số của một số Giao thức Thoả thuận khoá hiện nay.
- Cho ví dụ minh hoạ.
Bài tập 6.9
Lập trình ngôn ngữ C thực hiện Thoả thuận khoá theo Sơ đồ Diffie – Hellman:
- Giao thức Diffie - Hellman .
- Các đặc điểm đặc trưng của giao thức Diffie - Hellman.
- Ví dụ bằng số minh hoạ việc Thoả thuận khoá theo giao thức Diffie - Hellman.
- Viết chương trình thực hiện theo giao thức này.
Bài tập 6.10
Trình bày việc sử dụng Chương trình Thoả thuận khoá theo giao thức Diffie - Hellman
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 14/17
trong công nghệ mã nguồn mở.
Bài tập 6.11
Lập trình ngôn ngữ C thực hiện Thoả thuận khoá theo Sơ đồ “Trạm tới Trạm”:
- Giao thức “Trạm tới Tram” (Station - To - Station).
- Các đặc điểm đặc trưng của giao thức “Trạm tới Tram”.
- Ví dụ bằng số minh hoạ việc Thoả thuận khoá theo giao thức “Trạm tới Tram”.
- Viết chương trình thực hiện theo giao thức này.
Bài tập 6.12
Trình bày việc sử dụng Chương trình Thoả thuận khoá theo giao thức “Trạm tới Tram”
trong công nghệ mã nguồn mở.
Bài tập 6.13
Lập trình ngôn ngữ C thực hiện Thoả thuận khoá theo Sơ đồ MTI:
- Giao thức MTI (Matsumoto – Takashima – Imai).
- Các đặc điểm đặc trưng của giao thức MTI.
- Ví dụ bằng số minh hoạ việc Thoả thuận khoá theo giao thức MTI.
- Viết chương trình thực hiện theo giao thức này.
Bài tập 6.14
Trình bày việc sử dụng Chương trình Thoả thuận khoá theo giao thức MTI
trong công nghệ mã nguồn mở.
Bài tập 6.15
Lập trình ngôn ngữ C thực hiện Thoả thuận khoá theo Sơ đồ Girault:
- Giao thức Girault (Trao đổi khoá không cần chứng chỉ).
- Các đặc điểm đặc trưng của giao thức Girault.
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 15/17
- Ví dụ bằng số minh hoạ việc Thoả thuận khoá theo giao thức Girault.
- Viết chương trình thực hiện theo giao thức này.
Bài tập 6.16
Trình bày vấn đề Chia sẻ bí mật (Secret Sharing):
- Khái niệm Chia sẻ bí mật.
- Trình bày ý tưởng chính của một số Sơ đồ Chia sẻ bí mật hiện nay.
- Cho ví dụ minh hoạ.
Bài tập 6.17
Trình bày Sơ đồ Chia sẻ bí mật Shamir (Secret Sharing Scheme):
- Sơ đồ Chia sẻ bí mật Shamir.
- Các đặc điểm đặc trưng của Sơ đồ Chia sẻ bí mật Shamir.
- Ví dụ bằng số minh hoạ việc Chia sẻ bí mật theo Sơ đồ Shamir.
- Viết chương trình thực hiện theo Sơ đồ này.
Bài tập 6.18
Trình bày việc sử dụng Chương trình Chia sẻ bí mật Shamir trong công nghệ mã nguồn mở.
Bài tập 6.19
Trình bày Sơ đồ Chia sẻ bí mật theo Mạch Đơn điệu (Monotone Circuit):
- Sơ đồ Chia sẻ bí mật theo Mạch Đơn điệu.
- Các đặc điểm đặc trưng của Sơ đồ Chia sẻ bí mật theo Mạch Đơn điệu.
- Ví dụ bằng số minh hoạ việc Chia sẻ bí mật theo theo Mạch Đơn điệu.
- Viết chương trình thực hiện theo Sơ đồ này.
Bài tập 6.20
Trình bày việc sử dụng Chương trình Chia sẻ bí mật theo Mạch Đơn điệu
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 16/17
trong công nghệ mã nguồn mở.
Phần 7 . THÁM MÃ
Bài tập 7.1
Trình bày tổng quan các Phương pháp “thám mã”:
Mỗi phương pháp trình bày:
- Phương pháp thám mã: Xác định bản rõ, Xác định khóa mật.
- Ví dụ minh hoạ.
- Viết chương trình.
Bài tậ p 7.2
Trình bày các Phương pháp “thám mã” với mỗi Hệ mật mã cổ điển.
Mỗi phương pháp trình bày:
- Phương pháp thám mã.
- Ví dụ minh hoạ.
- Viết chương trình.
Bài tập 7.3
Trình bày các Phương pháp “thám mã” với mỗi Hệ mật mã hiện đại .
Mỗi phương pháp trình bày:
- Phương pháp thám mã.
- Ví dụ minh hoạ.
- Viết chương trình.
Bài tập 7.4
Trình bày một số khả năng “giả mạo chữ ký” với mỗi sơ đồ chữ ký số .
5/11/2018 debai2011 - slidepdf.com
http://slidepdf.com/reader/full/debai2011 17/17
Với mỗi sơ đồ chữ ký số hãy trình bày:
- Khả năng “giả mạo chữ ký”.
- Ví dụ minh hoạ.
- Viết chương trình.
Phần 2: An toàn Cơ sở dữ liệu (CSDL).
1. Trình bày tóm tắt về các loại Kiểm soát An ninh (Security Controls).
(Mục 1.4. : 3 loại kiểm soát).
2. Trình bày tóm tắt về 2 Chính sách An ninh (Security Policy).
(Mục 2.1. : Discretinonary Policy, Mandatory Policy. Trang 39, 40, 41,…).
3. Trình bày tóm tắt về các Mô hình An ninh (Security Models).
Access matrix, Take-Grant, Action-entity,…
(Chương 2 : Bảng 2.1, Trang 39, 40, 41,…).
Tài liệu:
1. Phan Đình Diệu. Lý thuyết mật mã và An toàn thông tin.
2. Trịnh Nhật Tiến. Giáo trình An toàn dữ liệu
3. G. J. Simmons. J. L. Massey.
Contemporary Cryptology: The Science of Information Integrity. 1992.
4. Douglas R. Stinson: Cryptography. 1995.
5. Bruce Schneier. Applied Cryptography. 1996.
6. Jalal Feghhi, Jalil Feghhi, Peter Williams. Digital Certificates.
Applied Internet Security. 1999.
7. Silvana et all: Data Base Security. 1994.