Cac thuat toan ve co so GIAO THỨC MẬT MÃ GIÁO VIÊN HƯỚNG DẪN TS TRẦN ĐỨC KHÁNH HỌC VIÊN THỰC HIỆN 1 Vũ Tuấn 2 Vũ Thị Uyên 3 Dương Phú Thuần 4 Vũ Tuấn Minh 5 Phạm Anh Tuấn Nhóm 3 20136 Giao thức mật mã Tài liệu tham khảo 30 Bài giảng Mật mã và ứng dụng TS Trần Đức Khánh, ĐH Bách Khoa Hà Nội Crytography and Network Security Principles and Practices, Fourth Edition William Stallings Security Crytographic Principles, Algorithms and Protocols Man Young Rhee Giao thức mật mã NỘI DUNG Nhóm 3 20136.
Trang 1GIAO THỨC MẬT MÃ
GIÁO VIÊN HƯỚNG DẪN: TS TRẦN ĐỨC KHÁNH
HỌC VIÊN THỰC HIỆN: 1 Vũ Tuấn
2 Vũ Thị Uyên
3 Dương Phú Thuần
4 Vũ Tuấn Minh
5 Phạm Anh Tuấn
Trang 2Tài liệu tham khảo
Bài giảng Mật mã và ứng dụng
TS Trần Đức Khánh, ĐH Bách Khoa Hà Nội
Crytography and Network Security Principles and
Practices, Fourth Edition
Trang 3NỘI DUNG
Trang 41 Tổng quan về SSL
Trang 61.1 Lịch sử phát triển của SSL
Giao thức SSL ban đầu được phát triển bởi
Netscape Ngày nay Visa, MasterCard, American Express cũng như nhiều công ty giải pháp tài chính hàng đầu khác trên thế giới đã và đang ứng dụng SSL trong thương mại điện tử.
Các phiên bản của SSL: (có ba phiên bản)
SSL 1.0: được sử dụng nội bộ chỉ bởi Netscape
Communications
SSL 2.0: được kết nhập vào Netscape Communications 1.0
đến 2.x
SSL 3.0: Netscape Communications đã phản ứng lại sự
thách thức PCT của Microsoft bằng cách giới thiệu SSL 3.0 vốn giải quyết các vấn đề trong SSL 2.0 và thêm một số tính
Trang 71.2 Cơ bản về SSL
SSL (Secure Sockets Layer) là giao thức an ninh thông tin
mạng được sử dụng rộng rãi nhất hiện nay nhằm mã hóa và cung cấp một kênh an toàn giữa các máy tính trên Internet hoặc mạng nội bộ SSL thường được sử dụng khi một trình duyệt web cần kết nối bảo mật đến một máy chủ web
Giao thức SSL đã được sử dụng rộng rãi trên World Wide Web
trong việc xác thực và mã hoá thông tin giữa client và server Tổ chức IETF (Internet Engineering Task Force) đã chuẩn hoá SSL
và đặt lại tên là TLS (Transport Layer Security) Tuy nhiên SSL
là thuật ngữ được sử dụng rộng rãi hơn
Giao thức SSL hoạt động bên trên TCP/IP và bên dưới các giao
thức ứng dụng tầng cao hơn như là HTTP (Hyper Text Transport Protocol), IMAP ( Internet Messaging Access Protocol) và FTP (File Transport Protocol)
Trang 81.2 Cơ bản về SSL
Để đảm bảo tính bảo mật thông tin trên internet hay bất kì mạng TCP/IP nào thì SSL ra đời kết hợp với những yếu tố sau để thiết lập giao dịch an toàn:
Xác thực: đảm bảo tính xác thực của trang mà bạn sẽ làm việc ở đầu kia của kết nối Cũng như vậy, các trang Web cũng cần phải kiểm tra tính xác thực của người sử dụng
Mã hoá: đảm bảo thông tin không thể bị truy cập bởi đối tượng thứ ba Để loại trừ việc nghe trộm những thông tin “ nhạy cảm” khi
nó được truyền qua Internet, dữ liệu phải được mã hoá để không thể bị đọc được bởi những người khác ngoài người gửi và người nhận
Toàn vẹn dữ liệu: đảm bảo thông tin không bị sai lệch và nó phải thể hiện chính xác thông tin gốc gửi đến
Trang 92 Kiến trúc của SSL
Trang 102.1 Các thuật toán mã hóa dùng trong SSL
Các thuật toán mã hoá (cryptographic algorithm -cipher) là các
hàm để mã hoá và giải mã thông tin
Giao thức SSL hỗ trợ rất nhiều các thuật toán mã hoá, sử dụng
trong quá trình xác thực server và client, truyền tải các certificates
và thiết lập các khoá của từng phiên giao dịch
Một số thuật toán SSL sử dụng:
DES (Data Encryption Standard)
DSA (Digital Signature Algorithm):
MD5 (Message Digest algorithm):
RSA: là thuật toán mã hoá công khai dùng cho cả quá trình xác thực và mã
hoá dữ liệu được Rivest, Shamir, and Adleman phát triển.
RSA key exchange: là thuật toán trao đổi khoá dùng trong SSL dựa trên thuật
toán RSA.
RC2 and RC4:
SHA-1 (Secure Hash Algorithm):
Trang 112.2 Kiến trúc của SSL
SSL được thiết kế để dùng TCP cung cấp 1 dịch vụ bảo mật đầu
cuối-đến-đầu cuối đáng tin cậy SSL không phải là một giao thức đơn mà là 2 lớp giao thức
Chồng giao thức SSL
Trang 122.2 Kiến trúc của SSL
- Theo hình này, SSL ám chỉ một lớp (bảo mật) trung gian giữa lớp vận chuyển (Transport Layer) và lớp ứng dụng (Application Layer) SSL được xếp lớp lên trên một dịch vụ vận chuyển định hướng kết nối và đáng tin cậy, chẳng hạn như được cung cấp bởi TCP
Trang 143 Các giao thức dùng trong SSL
Trang 153.1 Giao thức SSL Record
SSL Record Protocol cung cấp 2 dịch vụ cho kết nối
SSL:
Confidentiality (tính cẩn mật): Handshake Protocol định
nghĩa 1 khóa bí mật được chia sẻ, khóa này được sử dụng cho mã hóa quy ước các dữ liệu SSL
Message integrity (tính toàn vẹn thông điệp): Handshake
Protocol cũng định nghĩa 1 khóa bí mật được chia sẻ, khóa này được sử dụng để hình thành MAC (mã xác thực message)
Trang 163.1 Giao thức SSL Record
Hình sau chỉ ra toàn bộ hoạt động của SSL Record Protocol
Trang 173.2 Giao thức SSL Change Cipher Spec
Giao thức SSL Change Cipher Spec là giao thức đơn giản nhất
trong ba giao thức đặc trưng của SSL mà sử dụng giao thức SSL Record
Giao thức này bao gồm một message đơn 1 byte giá trị là 1
Mục đích chính của message này là sinh ra trạng thái tiếp theo
để gán vào trạng thái hiện tại, và trạng thái hiện tại cập nhật lại
bộ mã hóa để sử dụng trên kết nối này
Trang 183.3 Giao thức SSL Alert
Giao thức SSL Alert được dùng để truyền cảnh báo liên kết SSL
với đầu cuối bên kia.Như với những ứng dụng khác sử dụng SSL, alert messages được nén và mã hóa, được chỉ định bởi trạng thái hiện tại
Trang 193.3 Giao thức SSL Alert
Một số cảnh báo nguy hiểm:
unexpected_message:message không thích hợp
bad_record_mac: MAC không chính xác
decompression_failure: việc giải nén nhận input không thích
hợp(ví dụ như không thể giải nén hoặc giải nén lớn hơn độ dài tối đa cho phép)
handshake_failure: bên gửi không thể thương lượng một bộ
chấp nhận được của các thông số bảo mật được đưa ra từ những lựa chọn có sẵn
Trang 203.4 Giao thức SSL Handshake
Giao thức này cho phép server và client chứng thực với nhau và
thương lượng cơ chế mã hóa , thuật toán MAC và khóa mật mã được sử dụng để bảo vệ dữ liệu được gửi trong SSL record
Giao thức SSL Handshake thường được sử dụng trước khi dữ
liệu của ứng dụng được truyền đi
Trang 214 Tấn công SSL
Các phương pháp tấn công SSL dựa trên kỹ thuật tấn
công Man in the middle (MITM)
Trang 224.1 Tấn công Diffie Hellman MITM
Trong quá trình bắt tay, nếu Client và Server quyết định sử
dụng thuật toán trao đổi khóa Anonymous Diffie Hellman thì sẽ xảy ra sự trao đổi các tham số (g,p, ga mod p, gb mod p) của thuật toán như sau:
Không có bất kỳ sự xác thực nào Do đó attacker có thể lợi
Trang 234.1 Tấn công Diffie Hellman MITM
Lúc này attaker sẽ dùng 2 khóa, 1 khóa giao dịch với Client và
khóa còn lại giao dịch với Server.Cả Client và Server đều không nhận thấy có sự thay đổi bất thường
Trang 244.2 Tấn công SSL Sniff và SSL Strip MITM
Trang 255 Ứng dụng của SSL
Trang 265.1 Các ứng dụng phổ biến của SSL
Sau đây là một số port phổ biến của những ứng dụng
đi kèm SSL được IANA (Internet Assigned Numbers Authority) công nhận :
Trang 275.2 Ứng dụng SSL trên Webserver
Trang 285.2 Ứng dụng SSL trên Webserver
Có nhiều loại Web Server khác nhau, nhưng chủ yếu trên thị
trường chỉ thường sử dụng Apache và IIS (Internet Information Server của Microsoft)
Trang 31Kết luận
Tuy đến nay vẫn còn tồn tại một số lỗ hổng có thể bị khai thác
nhưng SSL vẫn là giao thức bảo mật cao nhất mà chưa một giao thức bảo mật nào có thể thay thế vai trò của nó
Nó phổ biến đến mức nếu thấy tên một giao thức có hậu tố “s”
thì người ta biết ngay giao thức ứng dụng đó được kết hợp kèm với SSL
Với sự phát triển nhanh chóng của công nghệ đã mang lại
nhiều tiện ích cho người dùng nhưng đồng thời cũng đặt ramột nhu cầu hết sức cấp thiết về sự an toàn và bảo mật Và SSL chính là giải pháp tốt nhất hiện nay đáp ứng những nhu cầu đó
và nó được coi như là “lá chắn cuối cùng” trong bảo mật thương mại điện tử