Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 14 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
14
Dung lượng
345,88 KB
Nội dung
Đồ án Viết chương trình stream audio, video Client Server, mã hóa trước truyền” LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com MỤC LỤC Lời nói đầu I.Các giao thức hỗ trợ liên lạc internet 1.Giao thức TCP/IP 1.1.Giới thiệu chung 1.2.Mơ hình TCP/IP 1.3.Địa IP 1.4.Giao thức Internet IP (Internet Protocol) Giao thức RTP/RTCP II.Lập trình Java 11 1.Mã hóa với Java 11 2.Chương trình stream audio 12 Tài liệu tham khảo: 13 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Lời nói đầu Internet hệ thống thơng tin tồn cầu gồm nhiều mạng máy tính liên kết với Bao gồm hàng ngàn mạng máy tính nhỏ doanh nghiệp, viện nghiên cứu trường đại học, người dùng cá nhân, phủ toàn cầu Mạng Internet mang lại nhiều tiện ích hữu dụng cho người sử dụng, tiện ích phổ thơng Internet hệ thống thư điện tử (email), trò chuyện trực tuyến (chat), giải trí trực tuyến, máy truy tìm liệu (search engine), dịch vụ thương mại chuyển ngân, dịch vụ y tế giáo dục chữa bệnh từ xa tổ chức lớp học ảo Như vậy, mạng internet mang lại nhiều lời ích lợi ích thơng qua nó, người dùng xem, nghe video, audio thời gian thực Với mục đích tìm hiểu cách truyền video, audio thời gian thực mơ hình Client/Server, em thực đồ án “Viết chương trình stream audio, video Client Server, mã hóa trước truyền” Từ em xác định yêu cầu thực đồ án: + Tìm hiểu giao thức RTP/RTCP + Lập trình mạng với Java + Mã hóa với Java Cơng cụ thực chương trình Java Nội dung đồ án chia thành phần: + Các giao thức hỗ trợ liên lạc internet + Lập trình java Với đồ án này, em làm quen với ngôn ngữ java với hạn chế thời gian nên đồ án thực chưa tốt, cịn nhiều thiếu sót Và với đồ án này, em xin gửi lời cảm ơn đến cô Bành Thị Quỳnh Mai giúp đỡ em thực đồ án LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com I.Các giao thức hỗ trợ liên lạc internet 1.Giao thức TCP/IP 1.1.Giới thiệu chung Giao thức TCP/IP phát triển từ mạng ARPANET Internet dùng giao thức mạng vận chuyển mạng Internet TCP (Transmission Control Protocol) giao thức thuộc tầng vận chuyển IP (Internet Protocol) giao thức thuộc tầng mạng mơ hình OSI Họ giao thức TCP/IP giao thức sử dụng rộng rãi để liên kết máy tính mạng Hiện máy tính hầu hết mạng sử dụng giao thức TCP/IP để liên kết với thông qua nhiều hệ thống mạng với kỹ thuật khác Giao thức TCP/IP thực chất họ giao thức cho phép hệ thống mạng làm việc với thông qua việc cung cấp phương tiện truyền thông liên mạng Các đặc điểm TCP/IP: - Độc lập với kiến trúc mạng: TCP/IP sử dụng kiến trúc Ethernet, Token Ring, mạng cục (LAN) mạng diện rộng (WAN) - Chuẩn giao thức mở: TCP/IP thực phần cứng hay hệ điều hành Do đó, TCP/IP tập giao thức lý tưởng để kết hợp phần cứng phần mềm khác - Sơ đồ địa tồn cầu: máy tính mạng TCP/IP có địa xác định Mỗi gói liệu gửi mạng TCP/IP có header gồm địa máy đích địa máy nguồn - Khung Client-Server: TCP/IP khung cho ứng dụng client-server mạnh hoạt động mạng cục mạng diện rộng - Chuẩn giao thức ứng dụng: TCP/IP không cung cấp cho người lập trình phương thức truyền liệu mạng ứng dụng mà cung cấp nhiều giao thức mức ứng dụng (những giao thức thực chức thường dùng e-mail, truyền nhận file) 1.2.Mô hình TCP/IP Mơ hình TCP/IP tổ chức thành lớp sau: lớp ứng dụng (Application), lớp giao vận (Transport), lớp mạng (Internet) lớp network access Lớp Application: Ở lớp cao nhất, chương trình ứng dụng giao tiếp với giao thức lớp Transport để truyền nhận liệu Chương trình ứng dụng truyền liệu dạng yêu cầu đến lớp Transport để xử lý trước chuyển xuống lớp Internet để tìm đường phân phối Lớp Application bao gồm ứng dụng mạng Lớp Transport: LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cung cấp giao tiếp từ chương trình ứng dụng đến chương trình ứng dụng khác Giao tiếp gọi đầu cuối- tới- đầu cuối (end-to-end) Lớp Transport đảm bảo thông tin đến mà không bị lỗi theo trật tự Để làm điều này, máy nhận phải gửi ACK báo nhận đủ thông tin hay chưa, chưa máy phát phải truyền lại datagram Phần mềm lớp Transport chia thông tin thành gói (packet), gói có chứa trường (fields): địa nguồn, địa đích, checksum, Thơng tin sau chia thành gói chuyển xuống lớp thấp để tiếp tục xử lý gửi tới máy thu Máy thu dựa vào nội dung trường để định nhận, kiểm tra tính đắn việc truyền phục hồi lại thông tin Các dịch vụ lớp Transport là: TCP, UDP Khái niệm kết nối phiên (session) mơ hình OSI so sánh với chế socket TCP/IP Socket TCP/IP điểm cuối (end-point) trình liên lạc, tạo địa máy tính cổng xác định máy tính Lớp Internet: Lớp Internet điều khiển gói từ máy đến máy khác theo đường thích hợp Lớp Internet kiểm sốt gói liệu đến, kiểm tra xem có phải chúng gửi đến máy hay khơng Nếu đúng, lớp Internet loại bỏ header datagram đưa lên cho lớp Transport xử lý Nếu không, máy bỏ qua gửi tiếp gói tin theo đường thích hợp để đến đích Lớp Network access: TCP/IP không định nghĩa việc kết nối vật lý mà dùng chuẩn sẵn có cung cấp IEEE (như RS232, Ethernet hay giao diện khác việc truyền liệu) Khi packet liệu gửi đi, đến lớp Transport gắn thêm transport header Kế lớp Internet thêm internet header Cuối lớp gắn thêm header Khi nhận gói liệu, trình diễn ngược lại 1.3.Địa IP Mỗi máy tính mạng IP có địa xác định gọi địa IP tạo số 32 bit Địa IP chứa đủ thông tin để xác định mạng máy tính mạng Vì địa IP máy tính khơng phải xác định máy tính mà cịn phải xác định mạng mà máy tính nối vào nên địa IP chia thành phần ID mạng (net ID) phần ID host (host ID) Việc phân chia không giống cho tất địa IP mà lớp địa định bit dành cho net ID bit dành cho host ID Có lớp địa IP: lớp A, B, C dùng cho mục đích chung, lớp D E dùng cho mục đích đặc biệt tương lai Một địa IP theo khuôn dạng sau: Clas s ID Ne Hos t ID t ID - Lớp A có Class ID bit cao 0; bit net ID, 24 bit lại host ID LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Lớp B có Class ID bit cao 0, 14 bit net ID, 16 bit cuối host ID - Lớp C có Class ID bit cao 1, 1, 0; 21 bit Net ID; bit cuối Host ID 1.4.Giao thức Internet IP (Internet Protocol) IP tiếp nhận datagram từ giao diện mạng (network interface) từ giao thức lớp cao hơn, sau định tuyến, gửi gói liệu xuống giao diện mạng gửi lên giao thức cấp cao Trên host, xem IP bao gồm hai phần, phần kiểm sốt gói liệu đến phần kiểm sốt việc gửi gói liệu Phương thức hoạt động IP: - Hàng nhập chung, định tuyến chung: Quá trình IP dùng hàng nhập chung cho tất datagrams mà kiểm soát, chúng đến từ giao diện mạng hay từ giao thức lớp cao IP lấy datagrams khỏi hàng nhập xử lý chúng mà không cần biết chúng đến từ đâu Hàng nhập chung đem lại đơn giản thuật toán - IP hoạt động trình độc lập - Giao diện nội (local host interface): Để tránh việc phân phát gói tin nội trình đặc biệt, IP thực giao thức mạng giả cho nội máy Giao diện có cấu trúc giao diện mạng khác xử lý phần mềm giao thức nội thay mạng vật lý Việc thực local host interface đặt vấn đề cách thức chọn xử lý gói Các datagrams đến từ giao diện mạng đặt hàng chờ tương ứng giao diện Hệ thống có nhiều cách lựa chọn để xử lý ưu tiên cho datagram trước Nếu IP ưu tiên cho datagrams đến từ network interface, lúc datagrams local host interface có số ưu tiên thấp chúng xử lý hàng chờ network interface trống Ngược lại datagrams local host interface ưu tiên chúng xử lý trước Việc thực đơn hai phương pháp khơng có hiệu tối ưu Trong thực tế, người ta dùng phương pháp có tên round-robin, nghĩa datagram đến trước xử lý trước nguồn gốc chúng từ network interface hay từ local host interface Một tất hàng nhập IP trống, trình IP bị chặn Quá trình khơi phục tiếp tục thực thi có datagram đến - Để kiểm tra sửa lỗi, IP dùng tổng kiểm tra (checksum) Số tổng kiểm tra đặt header số 16 bit - Khi địa đích datagram dạng quảng bá (broadcast) tất máy mạng nhận datagram IP thực địa quảng bá: broadcast cho mạng nội với địa toàn 1, broadcast xác định (lớp A, B, C) với phần địa host toàn 1, broadcast cho mạng - Trước gửi datagram phải chuyển đổi byte thứ tự sang dạng chuẩn mạng Khi nhận datagram cần thực trình chuyển đổi ngược lại User Datagram Protocol (UDP) Giao thức UDP chế hướng phi kết nối (connectionless oriented) Nó cho phép chương trình máy gửi liệu đến chương trình máy khác nhận trả lời Việc thực thông qua UDP port điểm đầu điểm cuối trình LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com thông tin Khái niệm cổng (port) UDP hiểu sau: máy trao đổi liệu với thơng qua địa q trình cần phải có số nhận dạng tiến hành trao đổi thơng tin Vì máy thời điểm có nhiều q trình tồn tại, giá trị port đưa để có phân biệt q trình UDP dựa vào giá trị port để gửi gói (packet) thơng tin đến địa q trình Vì vậy, chương trình muốn tham gia vào trình thơng tin phải xác định giá trị port cho Các trình sử dụng port giao tiếp thực theo hai cách Cách liên kết trực tiếp cho phép trình nối kết trực tiếp với tiến hành trao đổi liệu Một cách khác mơ hình client/server cho phép q trình thực nhiều liên kết qua gửi nhận liệu với nhiều trình khác lúc Khi trình muốn trao đổi liệu với trình khác theo phương thức trực tiếp hai trình phải xác định giá trị cổng Sau q trình tiến hành xác định giá trị cổng địa IP trình Sau định xong việc trao đổi liệu bắt đầu diễn Cịn với mơ hình client/server (khách/chủ) server phải xác định cổng chờ liệu từ cổng Các q trình client gọi đến cổng để tiến hành trình truyền nhận liệu Khi UDP nhận datagram tiến hành việc phân phát theo port tương ứng Có hai cách để thực thi Cách thứ dựa vào địa cổng đích, với cách chương trình nhận liệu từ tất trình khác gửi đến Cách thứ hai tiến hành việc phân phát dựa địa nguồn địa đích, với cách q trình nhận liệu từ địa chi xác định Mỗi cách có ưu điểm nhược điểm tuỳ theo thời điểm hoạt động hệ thống Vì thực hiện, hai cách sử dụng Transmission Control Protocol (TCP) TCP giao thức phức tạp giao thức mạng Nó bao gồm chế liên kết trực tiếp, gửi nhận liệu tin cậy có tính điều khiển TCP dùng chế time out (đếm thời gian) retransmission(truyền lại) để bảo đảm tính tin cậy việc truyền liệu Ngồi ra, TCP cung cấp chế kiểm tra có tượng trễ, trùng lặp hay mát trình truyền nhận liệu TCP thực thơng qua q trình Q trình thứ kiểm sốt datagram truyền đến, q trình thứ hai chịu trách nhiệm datagram truyền đi, q trình cịn lại xử lý tượng trễ truyền lại timeout Trên lý thuyết q trình có liên kết hoạt động để tăng tính hiệu thực thi TCP dùng số trình tự để đánh số cho datagram trước truyền số dùng để xác định thứ tự frame nhận giúp xác định tượng trễ, trùng lặp hay mát q trình truyền nhận Các q trình thơng tin với dùng TCP sử dụng port để tiến hành giao tiếp Khác với UDP, trước giao tiếp trình phải tiến hành liên kết với Sau đường truyền thiết lập việc gửi nhận liệu bắt đầu diễn Cơ chế liên kết TCP giúp trình truyền nhận diễn tin cậy Các trình thơng tin với thường sử dụng mơ hình client/server LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Giao thức RTP/RTCP Giao thức RTP (Realtime Transport Protocol) cung cấp chức giao vận phù hợp cho ứng dụng truyền liệu mang đặc tính thời gian thực thoại truyền hình tương tác Những dịch vụ RTP bao gồm trường thị loại tải trọng (payload identification), đánh số thứ tự gói, điền tem thời gian Thông thường ứng dụng chạy giao thức RTP bên giao thức UDP để sử dụng dịch vụ ghép kênh (multiplexing) kiểm tra tổng (checksum) dịch vụ này; hai giao thức RTP UDP tạo nên phần chức giao thức tầng giao vận Tuy nhiên RTP sử dụng với giao thức khác tầng mạng tầng giao vận bên miễn giao thức cung cấp dịch vụ mà RTP đòi hỏi Giao thức RTP hỗ trợ việc truyền liệu tới nhiều đích sử dụng phân bố liệu multicast khả tầng mạng hoạt động bên cung cấp Một điều cần lưu ý thân RTP không cung cấp chế đảm bảo việc phân phát kịp thời liệu tới trạm mà dựa dịch vụ tầng thấp để thực điều RTP không đảm bảo việc truyền gói theo thứ tự Tuy nhiên số thứ tự RTP header cho phép bên thu xây dựng lại thứ tự gói bên phát Đi với RTP giao thức RTCP (Realtime Transport Control Protocol) có dịch vụ giám sát chất lượng dịch vụ thu thập thông tin người tham gia vào phiên truyền RTP tiến hành Khn dạng gói RTP Tiêu đề giao thức RTP bao gồm phần tiêu đề cố định thường có gói RTP phần tiêu đề mở rộng phục vụ cho mục đích định 1/Phần ti đề cố định Tiêu đề cố định miêu tả hình vẽ trên: LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com V=2 P X CC M PT 16 31 sequence number timestamp synchronization source identifier (SSRC) contributing source list (CSRC) Tiêu đề cố định gói RTP 12 octets (byte) phần tiêu đề có gói RTP octets lại thường mixer thêm vào gói gói mixer chuyển tiếp đến đích Version(V): bit Trường version RTP Giá trị trường Padding (P): bit Nếu bit padding lập, gói liệu có vài octets thêm vào cuối gói liệu Octets cuối phần thêm vào kích thước phần thêm vào (tính theo byte) Những octets thông tin Chúng thêm vào để đáp ứng yêu cầu sau: Phục vụ cho vài thuật tốn mã hố thơng tin cần kích thước gói cố định Dùng để cách ly gói RTP trường hợp nhiều gói thông tin mang đơn vị liệu giao thức tầng Extension (X): bit Nếu bit X lập, theo sau phần tiêu đề cố định tiêu đề mở rộng Marker (M): bit Tuỳ trường hợp cụ thể mà bít mang ý nghĩa khác ý nghĩa profile kèm Payload Type (PT): bits Trường loại tải trọng mang gói Các mã sử dụng trường ứng với loại tải trọng quy định profile kèm Sequence Number: 16 bits Mang số thứ tự gói RTP Số thứ tự tăng lên sau gói RTP gửi Trường sử dụng để bên thu phát gói khơi phục lại trình tự gói Giá trị khởi đầu trường ngẫu nhiên Timestamp (tem thời gian): 32 bits Tem thời gian phản ánh thời điểm lấy mẫu octets gói RTP Thời điểm phải lấy từ đồng hồ tăng đặn tuyến tính theo thời gian phép việc LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com đồng tính tốn độ jitter Bước tăng đồng hồ phải đủ nhỏ để đạt độ xác đồng mong muốn phát lại độ xác việc tính tốn jitter Tần số đồng hồ không cố định, tuỳ thuộc vào loại khuôn dạng tải trọng Giá trị khởi đầu tem thời gian chọn cách ngẫu nhiên Một vài gói RTP mang giá trị tem thời gian chúng phát lúc mặt logic (ví dụ gói khung hình video) Trong trường hợp gói liệu phát sau khoảng thời gian (tín hiệu mã hố thoại tốc độ cố định, fixed-rate audio) tem thời gian tăng cách đặn Trong trường hợp khác giá trị tem thời gian tăng không Số nhận dạng nguồn đồng SSRC (Synchronization Source Identifier): 32 bits SSCR nguồn đồng gói RTP, số chọn cách ngẫu nhiên Trong phiên RTP có nhiều nguồn đồng Mỗi nguồn phát dịng gói RTP Bên thu nhóm gói nguồn đồng lại với để phát lại tín hiệu thời gian thực Nguồn đồng nguồn phát gói RTP phát từ micro, camera hay RTP mixer Các số nhận dạng nguồn đóng góp (CSRC list - Contributing Source list): có từ đến 15 mục mục 32 bít Các số nhận dạng nguồn đóng góp phần tiêu đề nguồn đóng góp thơng tin phần tải trọng gói Các số nhận dạng Mixer chèn vào tiêu đề gói mang nhiều ý nghĩa trường hợp dòng gói thơng tin dịng tổng hợp tạo thành từ việc trộn nhiều dịng thơng tin tới mixer Trường giúp cho bên thu nhận biết gói thơng tin mang thông tin người hội nghị Số lượng số nhận dạng nguồn đóng góp giữ trường CC phần tiêu đề Số lượng tối đa số nhận dạng 15 Nếu có nhiều 15 nguồn đóng góp thơng tin vào gói có 15 số nhận dạng liệt kê vào danh sách Mixer chèn số nhận dạng vào gói nhờ số nhận dạng SSRC nguồn đóng góp 2/Phần ti đề mở rộng Cơ chế mở rộng RTP cho phép ứng dụng riêng lẻ giao thức RTP thực với chức đòi hỏi thông tin thêm vào phần tiêu đề gói Cơ chế thiết kế để vài ứng dụng bỏ qua phần tiêu đề mở rộng (mà không ảnh hưởng tới hoạt động) số ứng dụng khác lại sử dụng phần Cấu trúc phần tiều đề mở rộng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 16 defined by profile 31 length header extension Tiêu đề mở rộng gói RTP Nếu bit X phần tiêu đề cố định đặt theo sau phần tiêu đề cố định phần tiêu đề mở rộng có chiều dài thay đổi 16 bit phần tiêu đề sử dụng với mục đích riêng cho ứng dụng định nghĩa profile Thường sử dụng để phân biệt loại tiều đề mở rộng Length: 16 bits Mang giá chiều dài phần tiêu đề mở rộng tính theo đơn vị 32 bits Giá trị không bao gồm 32 bit phần tiêu đề mở rộng Giao thức điều khiển RT CP Giao thức RTCP dựa việc truyền đặn gói điều khiển tới tất người tham gia vào phiên truyền Nó sử dụng chế phân phối gói liệu mạng giống giao thức RTP, tức sử dụng dịch vụ giao thức UDP qua cổng UDP độc lập với việc truyền gói RTP Giao thức điều khiển thời gian thực Real-time Control Protocol (RTCP) có nhiệm vụ giám sát đánh giá trình truyền tin dựa việc truyền cách định kỳ gói tin điều khiển tới thành viên tham gia phiên truyền với chế truyền liệu RTCP thi hành chức : Cung cấp chế phản hồi chất lượng truyền liệu Bên gửi thống kê trình gửi liệu qua tin người gửi cho thành viên Bên nhận tiến hành gửi lại thống kê thông tin nhận qua tin người nhận Từ việc giám sát trình gửi nhận bên, ta điều chỉnh lại thơng số cần thiết để tăng chất lượng cho phiên truyền Đây chức quan trọng RTCP Mỗi nguồn cung cấp gói tin RTP định danh tên CNAME (Canonical endpoint identifer SDES item) RTCP có nhiệm vụ cho thành viên biết tên Khi có thành viên tham gia phiên truyền phải gán với trường CNAME gói tin SDES Quan sát số thành viên tham gia phiên truyền thông qua thống kê tin 10 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mang thông tin thiết lập phiên truyền, thông tin người dùng Đây chức tùy chọn Nó đặc biệt hữu ích với việc điều khiển phiên lỏng, cho phép dễ dàng thêm bớt số thành viên tham gia hội thoại mà khơng cần có ràng buộc Giao thức RTCP bao gồm loại gói sau: SR (Sender Report): Mang thông tin thống kê việc truyền nhận thông tin từ người tham gia trạng thái tích cực gửi RR (Receiver Report): Mang thông tin thống kê việc nhận thông tin từ người tham gia khơng trạng thái tích cực gửi SDES (Source Description items): mang thông tin miêu tả nguồn phát gói RTP BYE: thị kết thúc tham gia vào phiên truyền APP: Mang chức cụ thể ứng dụng Giá trị trường PT (Packet Type) ứng với loại gói liệt kê bảng sau: Loại gói PT (Decimal) SR 200 RR 201 SDES 202 BYE 203 APP 204 Các hợp gói RTCP phát một cách đặn sau khoảng thời gian để thường xuyên thông báo trạng thái điểm cuối tham gia Vấn đề tốc độ phát hợp gói phải đảm bảo không chiếm hết lưu lượng thông tin dành cho thông tin khác Trong phiên truyền, lưu lượng tổng cộng cực đại tất loại thông tin truyền mạng gọi băng thông phiên (session bandwidth) Lưu lượng chia cho bên tham gia vào hội nghị Lưu lượng mạng dành sẵn không cho phép vượt để không ảnh hưởng đến dịch vụ khác mạng Trong phần băng thông phiên chia cho bên tham gia phần lưu lượng dành cho gói RTCP phép chiếm phần nhỏ biết 5% để không ảnh hưởng đến chức giao thức truyền dịng liệu media Như khơng RTP đáp ứng yêu cầu thời gian thực mà cho phép tagiám sát đánh giá chất lượng truyền tin cho VoIP II.Lập trình Java 1.Mã hóa với Java Mã hóa (Encryption) tiến trình lấy liệu, khóa mã hóa phát sinh văn mật mã để mã hóa tồn liệu Nếu khơng có khóa giải mã, khóa liệu vô nghĩa Giải mã (Decryption) q trình ngược lại mã hóa Là q trình lấy liệu mã hóa khóa mã hóa dịch ngược để có liệu dạng ban đầu Các cơng cụ mã hóa: + Mã hóa với khóa đối xứng: thơng điệp đọc người nhận có khóa mã hóa với khóa mà người gửi dùng 11 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com + Mã hóa với khóa cơng khai: ta sử dụng cặp khóa, khó bí mật khóa cơng khai Người gửi sử dụng khóa cơng khai người nhận để mã hóa, khóa bí mật theo cách gửi đến người nhận để phục vụ cho việc giải mã + Phương pháp chữ ký số: người gửi cho liệu qua hàm băm để phát sinh mã khóa gọi mã băm, tiếp tục mã hóa với khóa bí mật gửi mã băm mã hóa với liệu khóa cơng khai Người nhận dùng khóa cơng khai để giải mã tìm mã băm Người nhận tiếp tục thực hàm băm phần liệu nhận để tìm mã băm, đối chiều có giống mã băm nghĩa truyền an toàn Java cung cấp số giao diện lập trình ứng dụng cho việc mã hóa JCA (Java Cryptography Architecture) JCE (Java Cryptography Extension) JCE thừa hưởng từ JCA API bao gồm APIs cho việc mã hóa, chuyển đổi khóa mã xác thực thông điệp JCE với phận mã hóa Java2 SDK cung cấp giao diện lập trình ứng dụng cho việc mã hóa liệu hồn hảo khơng phụ thuộc hệ điều hành Các lớp engine JCE1.2: + javax.crypto.Clipher: cung cấp hàm để viết thành mật mã phục vụ mã hóa/giải mã + javax.crypto.KeyAgreement: cung cấp hàm cho giao thức chuyển đổi khóa + javax.crypto.KeyGenerator: cung cấp hàm cho việc tạo khóa đối xứng + javax.crypto.Mac:cung cấp hàm cho thuật tốn MAC + javax.crypto.SecretKeyFactory: tạo khóa bí mật JCE cung cấp phương thức cho mã hóa đối xứng thơng qua việc sử dụng khóa bí mật, khóa chia sẻ người gửi người nhận để mã hóa giải mã liệu Các gói JCE là: + javax.crypto: chứa lớp đại diện cho khái niệm mật mã, chấp nhận khóa chứng thực thơng điệp + javax.crypto.spec: bao gồm nhiều mơ tả khóa lớp tham số giải thuật + javax.crypto.interfaces interfaces cho khóa dựa thuật tốn Diffie-Hellman 2.Chương trình stream audio 1/Một số thực thể JMF: + Data source: đại diện cho luồng media, audio, video + Player: player sử dụng data source play + Processor: processor loại player mà trì điều khiển luồn data thực thi + Format: định dạng media đối tượng, bao gồm audio format video format + Manager: kết hợp thành phần, giống player data source 2/Chương trình: RTPServer - Tạo phiên RTP session - Tạo datasource - Tạo jmf processor 12 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Cấu hình processor với RTP định dạng truyền Liên kết datasource với processor RTP manager tạo luồng gửi cho datasource RTP Manager bắt đầu truyền RTPPlayer - Tạo RTP Mananger - Thêm vào RTP Session Listener - Thêm vào listener để xác định luồng nhận - Tạo data source từ luồng ReceiveStream - Tạo player liên kết với data source - Hiển thị player - Khi khơng cịn liệu nhận về, khỏi tất luồng đóng lại Tài liệu tham khảo: Bảo mật lập trình mạng Java2 – NXB Thống kê Java lập trình mạng – NXB Giáo dục Java sun tutorial www.java.sun.com Java Media Framework API - http://java.sun.com/products/java-media/jmf/2.1.1/apidocs/ JMF Programmers Guide - http://java.sun.com/products/java-media/jmf/2.1.1/guide/ 13 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... liệu, khóa mã hóa phát sinh văn mật mã để mã hóa tồn liệu Nếu khơng có khóa giải mã, khóa liệu vơ nghĩa Giải mã (Decryption) q trình ngược lại mã hóa Là q trình lấy liệu mã hóa khóa mã hóa dịch... nghe video, audio thời gian thực Với mục đích tìm hiểu cách truyền video, audio thời gian thực mơ hình Client/ Server, em thực đồ án ? ?Viết chương trình stream audio, video Client Server, mã hóa trước. .. qua hàm băm để phát sinh mã khóa gọi mã băm, tiếp tục mã hóa với khóa bí mật gửi mã băm mã hóa với liệu khóa cơng khai Người nhận dùng khóa cơng khai để giải mã tìm mã băm Người nhận tiếp tục