1. Thông tin về giảng viên:
Họ và tên: Mai Anh Thơ
Chức danh, học hàm, học vị: Thạc sĩ
Thời gian, địa điểm làm việc: Khoa Công Nghệ Thông Tin, Đại Học Nông Lâm Tp.HCM
Địa chỉ liên hệ: Khu Phố 6, Phường Linh Trung, Quận Thủ Đức
Điện thoại, email: (0)8-37242623, tho@hcmuaf.edu.vn
Các hướng nghiên cứu chính: Hệ thống Thông tin, Lập trình ứng dụng web, Cơ sở dữ liệu, An toàn và bảo mật hệ thống
6 trang |
Chia sẻ: Mr Hưng | Lượt xem: 1008 | Lượt tải: 0
Nội dung tài liệu Đề cương môn học An toàn và bảo mật hệ thống, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TRƯỜNG ĐH NÔNG LÂM TPHCM CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA: CÔNG NGHỆ THÔNG TIN Độc lập - Tự do - Hạnh phúc
ĐỀ CƯƠNG MÔN HỌC
AN TOÀN VÀ BẢO MẬT HỆ THỐNG
1. Thông tin về giảng viên:
Họ và tên: Mai Anh Thơ
Chức danh, học hàm, học vị: Thạc sĩ
Thời gian, địa điểm làm việc: Khoa Công Nghệ Thông Tin, Đại Học Nông Lâm Tp.HCM
Địa chỉ liên hệ: Khu Phố 6, Phường Linh Trung, Quận Thủ Đức
Điện thoại, email: (0)8-37242623, tho@hcmuaf.edu.vn
Các hướng nghiên cứu chính: Hệ thống Thông tin, Lập trình ứng dụng web, Cơ sở dữ liệu, An toàn và bảo mật hệ thống
2. Thông tin chung về môn học
Tên môn học: An toàn và bảo mật hệ thống
Mã môn học: 214464
Số tín chỉ: 3
Môn học: Tự chọn
Các môn học tiên quyết: không
Các môn học trước: “Lập trình nâng cao”, “Mạng máy tính cơ bản”
Các yêu cầu đối với môn học (nếu có):
Giờ tín chỉ đối với các hoạt động:
+ Nghe giảng lý thuyết: 30 tiết
+ Thảo luận: 6 tiết bao gồm trong giờ lý thuyết
+ Thực hành, thực tập (ở PTN, nhà máy, studio, điền dã, thực tập...): Thực hành Phòng máy tính 30 tiết
+ Hoạt động theo nhóm: Đồ án tự làm 30 tiết
+ Tự học: 60 tiết về nhà
- Địa chỉ Khoa/ bộ môn phụ trách môn học: Bộ môn Hệ thống Thông tin, Khoa Công Nghệ Thông Tin, Đại học Nông Lâm Tp.HCM, Khu phố 6, Phường Linh Trung, Quận Thủ Đức
3. Mục tiêu của môn học
Kiến thức: cung cấp cho sinh viên những kiến thức cơ bản và cần thiết về: hệ thống mật mã đối xứng, hệ thống mật mã bất đối xứng, hàm băm mật mã, chữ ký điện tử, hệ thống chứng nhận khoá công cộng và một số quy trình bảo vệ thông tin
Kỹ năng: nâng cao kỹ năng lập trình bằng ngôn ngữ Java, sử dụng các gói thư viện JCA/JCE, JCE Taglib, sử dụng công cụ Borland Builder/Eclipse thông qua các bài tập thực hành.
Thái độ, chuyên cần: tìm tòi sáng tạo, độc lập tư duy có hiệu quả
4. Tóm tắt nội dung môn học
Môn học này nhằm giúp sinh viên nắm bắt những kiến thức cơ bản liên quan đến vấn đề an toàn và bảo mật các ứng dụng, đặc biệt là các ứng dụng web. Môn học cung cấp cho sinh viên những nội dung nền tảng nhất, quan trọng nhất mà người phát triển ứng dụng web cần quan tâm khi triển khai ứng dụng vào thực tiễn. Mỗi phương pháp bảo vệ dữ liệu đưa ra, sinh viên được minh họa rõ ràng thông qua ngôn ngữ lập trình Java, cho phép sinh viên đánh giá được ưu/nhược điểm của từng phương pháp và tình huống vận dụng.
5. Nội dung chi tiết môn học (tên các chương, mục, tiểu mục)
Phần 1: Tổng quan về mã hoá thông tin và ứng dụng (3LT)
Giới thiệu về mật mã học
Các vấn đề chính trong mật mã học
Lịch sử phát triển của mật mã học
Một số vấn đề chính trong bảo vệ thông tin và các giải pháp
Giới thiệu về hệ thống mã hoá
Phần 2: Các hệ thống mã hoá đối xứng (3LT/5TH)
Mã hoá đối xứng
Các phương pháp mã hoá truyền thống
Phương pháp mã hoá dịch chuyển
Phương pháp mã hoá thay thế
Phương pháp Affine
Phương pháp Vigenere
Phương pháp mã hoá Hill
Phương pháp mã hoá bằng hoán vị
Hiện thực thuật toán mã hoá đối xứng, thuật toán PBE trong Java
Xây dựng một ứng dụng cho phép chọn các thuật toán mã hoá đối xứng khác nhau để mã hoá và giải mã dữ liệu
Phần 3: Các chế độ hoạt động, các chiến lược padding (3LT – Thảo luận)
Các kiểu thao tác (Mode of Operation): ECB, CBC, PCBC, CFB, OFB, CTR
Các kiểu chèn bổ sung thông tin (Padding Scheme): Bit Padding, Byte Padding (PKCS5)
Phần 4: Các hệ thống mã hoá bất đối xứng (3LT/5TH)
Mã hoá bất đối xứng (Mã hoá khoá công cộng)
Phương pháp mã hoá RSA
Một số phương pháp tấn công RSA
So sánh giữa mã hoá đối xứng và mã hoá bất đối xứng
Hiện thực các thuật toán mã hoá bất đối xứng trong Java
Xây dựng một ứng dụng cho phép chọn các thuật toán mã hoá bất đối xứng khác nhau với các mode và padding khác nhau để mã hoá và giải mã dữ liệu
Tích hợp 2 ứng dụng để xây dựng toolkit: MyEncrypt và MyDecrypt
Phần 5: Hàm băm mật mã (3LT/3TH)
Hàm băm mật mã
Các tính chất của hàm băm mật mã
Phân loại hàm băm mật mã
Hàm băm MD5 và SHA
Hiện thực hàm băm mật mã trong Java: message digest, Password Authentication
Phần 6: Chữ ký điện tử (3LT/3TH)
Chữ ký điện tử, phân loại chữ ký điện tử
Phương pháp RSA
Phương pháp DSA
Hiện thực chữ ký điện tử trong Java
Phần 7: Hệ thống chứng nhận khoá công cộng (3LT/5TH)
Nhắc lại Chữ ký điện tử, phân tích hạn chế của chữ ký điện tử
Hệ thống chứng nhận khoá công cộng: tạo chứng nhận, kiểm tra chứng nhận
Tổ chức CA
Tìm hiểu chứng nhận dạng X509
Mô hình chứng thực trong CA phân cấp
Hiện thực Digital certificates dựa trên cấu trúc X509.
Keystores và công cụ KeyTool
Phần 8: Giới thiệu bộ thư viện JCE Taglib (3LT/9TH)
Giới thiệu bộ thư viện JCE Taglib
Các thẻ quan trọng cho phép triển khai các lý thuyết về mã hoá, hàm băm mật mã, chữ ký điện tử, chứng nhận khoá công cộng vào ứng dụng thương mại điện tử
Xây dựng ứng dụng web cho phép triển khai các lý thuyết cryptography đã tìm hiểu ở các chủ đề trên vào thực tiễn.
Phần 9: Một số vấn đề khác: Single Sign On, Trust Negotiation... (6LT – 3 Thảo luận)
Giới thiệu về Single Sign On (SSO)/
Các phương pháp triển khai SSO
Minh hoạ 1 phương pháp
Thảo luận: (3 tiết) thay đổi linh hoạt tùy theo học kỳ
6. Học liệu
Beginning Cryptography with Java, David Hook, Wrox Press (2005)
Professional Java Security, Jess Garms và Deniel Somerfiled, nhà xuất bản Wrox (2002)
Java Security Solutions, Rich Helton & Johennie Helton, Wiley Publishing (2002)
Java Cryptography, Jonathan B. Knudsen, O’reilly (1998)
Internet Cryptography, Richard E. Smith, Addison-Wesley (1997)
Applied Cryptography: Protocols, Algorithms, and Source Code in C, 2nd Edition, Bruce Schneier, John Wiley & Son, Inc (1995)
7. Hình thức tổ chức dạy học
. Lịch trình chung: (Ghi tổng số giờ cho mỗi cột)
Nội dung
Hình thức tổ chức dạy học môn học
Tổng
Lên lớp
Thực hành, thí nghiệm, thực tập giáo trình, rèn nghề,
Tự học, tự nghiên cứu
Lý thuyết
Bài tập
Thảo luận
Phần 1: Tổng quan về mã hoá thông tin và ứng dụng (3LT)
3 tiết
tiết
3tiết
Phần 2: Các hệ thống mã hoá đối xứng (3LT/5TH)
3
5
8
Phần 3: Các chế độ hoạt động, các chiến lược padding (3LT – Thảo luận)
3
3
Phần 4: Các hệ thống mã hoá bất đối xứng (3LT/5TH)
3
5
8
Phần 5: Hàm băm mật mã (3LT/3TH)
3
3
6
Phần 6: Chữ ký điện tử (3LT/3TH)
3
3
6
Phần 7: Hệ thống chứng nhận khoá công cộng (3LT/5TH)
3
5
8
Phần 8: Giới thiệu bộ thư viện JCE Taglib (3LT/9TH)
3
9
12
Phần 9: Một số vấn đề khác: Single Sign On, Trust Negotiation... (3LT – 3 Thảo luận)
3
3
6
8. Chính sách đối với môn học và các yêu cầu khác của giảng viên
Đây là một môn học Năm 4. Môn học này bao gồm 2 phần lý thuyết và thực hành riêng rẽ. Cụ thể như sau:
Giảng trên lớp (Lecture) bằng các slide
Giảng bằng slide bài giảng tiếng Việt. Sinh viên đọc giáo trình bằng tiếng Việt và tiếng Anh.
Trước khi đến lớp sinh viên đọc trước ở nhà chương sách giáo khoa liên quan trong đề cương.
Sinh viên sẽ đến lớp để xem và nghe giảng viên nhấn mạnh các khái niệm và các ý tưởng quan trọng hay khó của mỗi chương.
Sau buổi giảng, sinh viên làm các thí dụ đã cho trong giờ giảng và/hay trong sách để xem mình đã hiểu đầy đủ những khái niệm này chưa.
Làm các bài tập và câu hỏi trong sách (như đã cho trong đề cương) để kiểm tra xem mình đã hiểu chưa.
Nếu sinh viên có vấn đề với các bước 1-3 trên, sinh viên cần thảo luận với bạn bè hay mang chúng đến giờ thực hành để thảo luận.
Giờ thực hành
Thực hành trên máy qua các bài tập nhỏ và một số bài tập ôn sử dụng tất cả nội dung đã học
Sinh viên làm bài tập dưới sự hướng dẫn của trợ giảng.
Trước khi đến giờ thực hành sinh viên nên làm thử càng nhiều càng tốt các bài tập đã cho.
Trao đổi, thảo luận những khó khăn gặp phải những khi làm trước bài tập trong giờ thực hành
Sau khi hoàn thành các bài tập nhỏ, sinh viên cần thực hiện các đồ án môn học do giáo viên phân công theo nhóm
9. Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập môn học
Phân chia các mục tiêu cho từng hình thức kiểm tra - đánh giá
9.1. Kiểm tra – đánh giá thường xuyên: Ghi nhận từng cá nhân mỗi sinh viên trả lời đầy đủ, đạt hay không đạt rất nhiều câu hỏi do giảng viên trực tiếp đưa ra trong các giờ giảng trên lớp và ghi nhận từng sinh viên trong các giờ thực hành xem nắm bắt vấn đề và kỹ năng lập trình giỏi hay yếu.
9.2. Kiểm tra - đánh giá định kì: Bao gồm các phần sau (trọng số của từng phần do giảng viên đề xuất, chủ nhiệm bộ môn thông qua):
Tham gia học tập trên lớp (đi học đầy đủ, chuẩn bị bài tốt và tích cực thảo luận, ): 10%
Phần tự học, tự nghiên cứu (hoàn thành tốt nội dung, nhiệm vụ mà giảng viên giao cho cá nhân /tuần; bài tập nhóm /tháng; bài tập cá nhân/ học kì, ): Bản thu hoạch đồ án 60%
Hoạt động theo nhóm: Thuyết trình 10%
Kiểm tra - đánh giá cuối kì: 20%
9.3. Tiêu chí đánh giá các loại bài tập:
Sinh viên được chia thành từng nhóm để hoàn thành một đồ án riêng biệt cho mỗi nhóm.
Sinh viên cần phải phân chia công việc cụ thể cho các thành viên trong nhóm và kết nối các module thành một đồ án hoàn chỉnh, có bản báo cáo cho đồ án mà mình được giao. Dựa trên công việc hoàn tất, nhóm sinh viên phải cùng nhau làm một bài thuyết trình trước lớp và giảng viên phụ trách môn học.
Khi đánh giá đồ án các nhóm sinh viên đặc biệt quan tâm đến chất lượng lập trình, tính linh hoạt trong việc ứng dụng các lý thuyết đã học vào xây dựng các module của đồ án, phong cách viết báo cáo kỹ thuật rõ ràng, không sao chép và kỹ năng trình bày, giải thích các điểm nội dung kỹ thuật khi thuyết trình.
9.4. Lịch thi, kiểm tra (kể cả thi lại): Lần thi đầu tiên được tổ chức trong khoảng từ 2-3 tuần sau khi kết thúc môn học. Đối với các sinh viên không đạt kỳ thi lần 1 sẽ tiến hành thi lại lần hai trong khoảng 4 tuần sau khi có kết quả thi lần một. Các sinh viên không đạt hai lần thi sẽ phải học lại từ đầu môn học vào năm học sau.
Giảng viên Duyệt Chủ nhiệm bộ môn Thủ trưởng đơn vị đào tạo
(Ký tên) (Ký tên) (Ký tên)
Các file đính kèm theo tài liệu này:
- an_toan_bao_mat_he_thong_1741.doc