1. Trang chủ
  2. » Luận Văn - Báo Cáo

nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip

71 1,1K 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 71
Dung lượng 777,57 KB

Nội dung

CHƯƠNG 1: TỔNG QUAN VỀ MÃ MD51.1 Những khái niệm về mật mã hóa Mã hoá là một tiến trình biến đổi thông tin, sử dụng các thuật toán nhằm mục đíchkhông cho người khác có thể nắm bắt được n

Trang 1

………

………

………

………

………

………

………

………

………

………

………

………

Điểm:……….( bằng chữ ………).

Ngày ………tháng ………năm……….

Giảng viên hướng dẫn

TS.Đặng Hoài Bắc

Trang 2

Lời đầu tiên em xin được bày tỏ lòng biết ơn sâu sắc tới thầy giáo Th.S Lê Xuân Thành, thầy đã tận tình dạy dỗ và hướng dẫn em trong suốt mấy năm học vừa qua.

Em xin cảm ơn thầy giáo Đặng Hoài Bắc đã hướng dẫn, giúp đỡ em hoàn thành đồ án tốt nghiệp.

Em xin cảm ơn các thầy cô giáo trong khoa Điện Tử 1, Học Viện Công Nghệ Bưu Chính Viễn Thông Các thầy cô đã nhiệt tình dạy bảo, giúp đỡ chúng

Trang 3

CHƯƠNG 1: TỔNG QUAN VỀ MÃ MD5 8

1.1 Những khái niệm về mật mã hóa 8

1.2 Các thuật toán mã hóa 9

1.2.1 Mã hóa đối xứng 9

1.2.2 Mã hóa bất đối xứng 10

1.3 Giới thiệu về hàm băm và mật mã 11

1.3.1 Tính chất 11

1.3.2 Ứng dụng 12

1.4 Hàm băm dựa trên mã khối 13

1.5 Hàm băm mật mã 14

1.6 Cấu trúc hàm băm 14

1.7 Ghép hàm băm mật mã 15

1.8 Hàm băm MD5 15

1.8.1 Giới thiệu 15

1.8.2 Khái niệm 15

1.8.3 Ứng dụng 16

1.8.4 Thuật giải 16

1.9 Mã MD5 (Message Digest) 17

1.9.1 Mô tả 17

1.9.2 Cách thực hiện 20

CHƯƠNG 2: TỔNG QUAN VỀ GIAO THỨC SIP 24

2.1 Giao thức SIP 24

2.2 Sự phát triển của giao thức SIP 24

2.3 Các thành phần trong mạng của SIP 25

2.3.1 Thành phần của SIP : 25

Bao gồm SIP User Agent ( UA ) và SIP server 25

2.3.1.1 SIP User Agent ( người dùng Agent) 25

2.3.1.2 SIP Server: 25

2.3.2 Các bản tin SIP mào đầu và đánh số 26

2.3.3 Khuôn dạng thông điệp 27

2.3.3.1 SIP response 27

2.3.3.2 SIP reques 31

2.3.4 Chức năng của SIP 31

2.3.4.1 Thiết lập và sửa đổi kết thúc phiên 31

2.3.4.2 Tính di động của người sử dụng 32

2.3.5 Thiết lập và hủy cuộc gọi 33

2.4 Ứng dụng của giao thức SIP 34

2.4.1 Ứng dụng SIP trong quá trình hội tụ mạng cố định và di động 34

2.4.1.1 Dịch vụ IPTV 34

2.4.1.2 Dịch vụ Precense 35

2.4.2 Ứng dụng an toàn SIP về bảo vệ lưu lượng VoIP 36

CHƯƠNG 3: ỨNG DỤNG CỦA MD5 TRONG GIAO THỨC SIP 39

3.1 Bảo mật trong SIP 39

3.1.1 Lỗ hổng trong SIP 39

3.1.1.1 Cướp đăng ký 39

3.1.1.2 Giả địa chỉ IP ,giả cuộc gọi 39

3.1.1.3 Tràn ngập thông điệp 40

3.1.1.4 Từ chối dịch vụ DoS 40

3.1.1.5 Spam qua điện thoại Internet Spam over Internet Telephony 40

Trang 4

3.1.2.2 Tính nguyên vẹn 41

3.1.2.3 Tính đảm bảo 41

3.2 MD5 trong SIP 42

3.2.1 HTTP Digest 42

3.2.2 S/MIME 46

3.2.2.1 Ký hiệu số 46

3.2.2.2 Kỹ thuật S/MIME 47

3.2.3 TLS 50

3.2.3.1 Ngăn xếp TLS 50

3.2.3.2 TLS Handshake (thủ tục bắt tay TLS) 51

3.2.3.3 Hoạt động của giao thức bản ghi TLS 54

3.2.3.4 Một số thí dụ về an ninh SIP kết hợp với TLS 55

3.2.4 IPSec 59

3.3 Lỗ hổng trong MD5 và cách khắc phục 61

3.3.1 Lỗ hổng trong MD5 61

3.3.2Cách khắc phục 61

3.3.2.1 Tổng quan 61

3.3.2.2 Brute forcing MD5 hashes 62

KẾT LUẬN 1

DANH MỤC TÀI LIỆU THAM KHẢO 2

Trang 5

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

Từ viết

tắt

HMAC Hash Message Authentication

Code

Mã nhận thực bản tin băm

IETF Internet Engineering Task Force Tổ chức đặc trách về kỹ thuật

Internet

IPTV Internet Protcol Television Giao thức truyền hình Internet

MAC Message Authentication Code Mã nhận thực bản tin

MIME Multipurpose Internet Mail

Extension

Mở rộng thư internet đa mục đích

RSAS/MIME Secure/ Multipurpose Internet

Mail Extension

MIME đảm bảo

SDP Session Description Protocol Giao thức mô tả phiên

SIP Session Initiation Protocol Giao thức khởi tạo phiên

SPIT Spam over Internet Telephony Spam qua thoại internet

TCP Transmission Control Protocol Giao thức điều khiển truyền tảiTLS Transmission Layer Security An ninh lớp truyền dẫn

Trang 6

UAS User Agent Người dùng Agent Server

UDP User Datagram Protocol Giao thức dữ liệu đồ người sử

dụng URI Uniform Resourse Indicator Chỉ thị dạng thức tài nguyên

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

Trang 7

DANH MỤC BẢNG

Bảng 3.1 Các thông số của header WWW-Authenticate 3

Bảng 3.2 Các thông sô trong heard Authorization 3

Bảng 3.3 Các thông số của header Authentication-Info 3

Bảng 3.4 Các header dùng với MIME 3

Bảng 3.5 Định nghĩa các thực thể trong S/MIME 3

Bảng 3.6 Giá trị thông số smime-type 3

Bảng 3.7 Các thông số bản tin ClientHello 3

Bảng 3.8 Mô tả thuật một số thuật toán trao đổi khóa dùng trong TLS 3

Trang 8

DANH MỤC CÁC HÌNH VẼ

Hình 1.1 Nguyên lý của hệ thống mã hóa đối xứng 3

Hình 1.2 Kênh nguyên lý trong hệ thống mã hóa đối xứng 3

Hình 1.3 Mô tả tóm tắt quá trình mật mã RSA 3

Hinh 1.4 Quá trình trong một vòng MD5 3

Hình 1.5 Sơ đồ vòng lặp chính của MD5 3

Hình 1.6 Sơ đồ 1 vòng lặp của MD5 3

Hình 1.7 Một ví dụ về mã MD5 3

Hinh 2.1 Chuyển hướng máy chủ 3

Hình 2.2 Những bản tin trao đổi giữa A và B để thiết lập một phiên 3

Hình 2.3 SIP reponse 3

Hình 2.4 SIP request 3

Hinh 2.5 Hoạt động của máy chủ Proxy sever 3

Hinh 2.6 Hoạt động của Redirect Server 3

Hình 2.7 Precense 3

Hinh 2.8 Kiểu kiến trúc dựa trên mạng SIP 3

Hình 3.1 Hoạt động nhận thực trong SIP 3

Hình 3.2 Mã hóa và kiểm tra kí hiệu số 3

Hình 3.3 Ngăn xếp giao thức TLS 3

Hình 3.4 Các bản tin trong handshake 3

Hình 3.5 Quá trình chia mảnh 3

Hình 3.6 TLS được dùng giữa 2 SIP UA trong các miền khác nhau 3

Hình 3.7 Kịch bản đăng kí SIP UA 3

Hình 3.8 Kịch bản lời mời giữa hai SIP UA trong các miền khác nhau 3

Hình 3.9 Kịch bản SIP UA mời một SIP UA theo kiểu peer-to-peer 3

Hình 3.10 Sử dụng Ipsec trong SIP 3

Hình 3.11 Các kích cỡ mật khẩu với thời gian tương ứng tìm ra nó 3

Hinh 3.12 Chi phí cho Brute Force với MD5 digest 3

Trang 9

LỜI MỞ ĐẦU

Từ giữa đến cuối thập kỷ 90 SIP đơn thuần là một giao thức thiết lập phiênquảng bá cho internet sau đó người ta đã phát hiện ra rằng SIP rất thích hợp trong liênlạc cá nhân SIP còn cho phép thực hiện truyền thông liên doanh nghiệp đa phươngtiện, nó còn được sử dụng để hội tụ nhiều ứng dụng, thiết bị và cách thức truyền thôngmới để tạo ra những tính năng và khả năng mới

Ngày nay, các ứng dụng Công nghệ thông tin đã và đang ngày càng phổ biếnrộng rãi đã ảnh hưởng rất lớn đến diện mạo của đời sống, kinh tế, xã hội Mọi côngviệc hàng ngày của chúng ta đều có thể thực hiện được từ xa với sự hổ trợ của máy vitính và mạng internet (từ việc học tập, giao dịch,… đến việc gửi thư) Tất cả thông tinliên quan đến những công việc này đều do máy vi tính quản lý và truyền đi trên hệthống mạng nên vấn để bảo mật được đưa lên hàng đầu Do đó em đã chọn đề tài “tìmhiểu thuật toán MD5 và ứng dụng trong giao thức SIP” với các nội dung:

Chương 1 : Tổng quan về mã MD5

Chương 2 : Tổng quan về giao thức SIP

Chương 3 : Ứng dụng của mã MD5 trong giao thức SIP

Hà nội, ngày 6 tháng 11 năm 2012

Sinh viên thực hiên

Đỗ Xuân Tân

Trang 10

Đỗ Xuân Tân – D08XLTH1 Page 6

Trang 12

CHƯƠNG 1: TỔNG QUAN VỀ MÃ MD5

1.1 Những khái niệm về mật mã hóa

Mã hoá là một tiến trình biến đổi thông tin, sử dụng các thuật toán nhằm mục đíchkhông cho người khác có thể nắm bắt được nếu thiếu hiểu biết về khóa (key) để dịchngược

Với sự phát triển mạnh mẽ của mình, hầu hết các kênh thông tin đều lấy Internetlàm nền tảng để phát triển Điều tất yếu sẽ nảy sinh là vấn đề về bảo mật, một ngàynào đó, bạn bỗng nhận ra rằng, thông tin của bạn đang bị theo dõi Bạn sẽ ra sao nếubạn gửi một bức thư cho một người bạn của mình lại bị một kẻ lạ mặt nào đó xem trộm

và sửa đổi bức thư theo một nội dung khác, và còn tai hại hơn nữa nếu đó là một hợpđồng mang giá trị lớn Rất có thể tình cảm, tiền bạc hay nói rộng hơn là cả sự nghiệpcủa bạn đều sẽ bị đe dọa nếu thông tin không được đảm bảo Để vừa đảm bảo thông tinluôn kết nối, vừa đảm bảo yếu tố bảo mật của thông tin thì phương pháp tốt nhất là mãhoá thông tin Ngày nay việc mã hoá đã trở nên phổ cập, các quốc gia hay là các công

ty lớn đều có chính sách phát triển công cụ mã hoá riêng biệt để bảo vệ cho chínhthông tin của họ

Mật mã hóa được sử dụng phổ biến để đảm bảo an toàn cho thông tin liên lạc Cácthuộc tính được yêu cầu là:

 Bí mật: Chỉ có người nhận đã xác thực có thể lấy ra được nội dung của thôngtin chứa đựng trong dạng đã mật mã hóa của nó Nói khác đi, nó không thể cho phépthu lượm được bất kỳ thông tin đáng kể nào về nội dung của thông điệp

 Nguyên vẹn: Người nhận cần có khả năng xác định được thông tin có bị thayđổi trong quá trình truyền thông hay không

 Xác thực: Người nhận cần có khả năng xác định người gửi và kiểm tra xemngười gửi đó có thực sự gửi thông tin đi hay không

Trang 13

1.2 Các thuật toán mã hóa

Hình 1.1 Nguyên lý của hệ thống mã hóa đối xứng.

Nguyên lý cơ bản của hệ thống mã hoá khoá đối xứng được chỉ ra trong (hình 1.1) Có thểthấy rằng bản chất của mã hoá đối xứng là cả phía thu và phía phát đều sử dụng cùng mộtkhoá bí mật (SK), và thuật toán ở cả hai phía cũng đều giống nhau Mã hoá đối xứng nhưtrên dựa vào việc phân phối khoá một cách bảo mật giữa cả hai phía Nhưng thực tế là khoá

chung đó lại phân phối tới tất cả mọi người trong mạng, và vấn đề “kênh bảo mật” đã làm

đau đầu những nhà quản trị mạng Điều nguy hiểm nhất là bất cứ ai chiếm được khoá trongquá trình phân phối cũng có toàn quyền truy nhập tới dữ liệu do khoá đó bảo vệ Do đó, quá

trình phân phối khoá phải trên “kênh bảo mật”, bất kể là kênh logic hay kênh vật lý

Hình 1.2 Kênh nguyên lý trong hệ thống mã hóa đối xứng.

Trang 14

1.2.2 Mã hóa bất đối xứng

Ngược lại với mã hoá đối xứng, thuật toán bất đối xứng hoạt động theo ít nhất

là hai khoá, hay chính xác hơn là một cặp khoá Khoá sử dụng được biết đến như là

khoá bí mật và khoá công khai và do đó có khái niệm mã hoá khoá công khai Mỗi

khoá được sử dụng để mã hoá hay giải mã, nhưng khác với thuật toán đối xứng, giá trịcủa khoá ở mỗi phía là khác nhau

Trong hệ thống RSA, dữ liệu được mã hoá bằng khoá bí mật (KXu) và chỉ cóthể giải mã được bằng khoá công khai của cặp khoá đó Cặp khoá này được tạo racùng nhau và do đó có liên quan trực tiếp với nhau Mặc dù có quan hệ với nhaunhưng nếu biết hay truy nhập được khoá công khai thì cũng không thể tính toán đượcgiá trị của khoá bí mật Do đó, công khai khoá mã cũng không làm ảnh hưởng tới tínhbảo mật của hệ thống, nó cũng chỉ như một địa chỉ thư tín còn khoá bí mật vẫn luônđược giữ kín Bản chất của mã hoá khoá công khai RSA là bất cứ bản tin mật mã nàođều có thể được nhận thực nếu như nó được mã hoá bằng khoá bí mật còn giải mãbằng khoá công khai Từ đó, phía thu còn xác định được cả nguồn gốc của bản tin Bất

cứ người nào giữ khoá công khai đều có thể nghe trộm bản tin mật

Mật mã RSA, được bắt đầu bằng thực hiện các phép tính để tạo ra một cặp khóa

mã sau đó thực hiện mã hóa và giải mã Bước đầu tiên trong việc tính các khóa là tìmhai số nguyên tố có kích cỡ đủ lớn phù hợp với ứng dụng Ta có bản tóm tắt quá trìnhmật mã RSA

m

e

me

Các số nguyên tố: p,q

m = p.qCác khóa mã d,e nguyên tố với p-1, q-1

d.e = 1 (module k)

k = BSCNN (p-1, q-1)Đoạn tin x

Hình 1.3 Mô tả tóm tắt quá trình mật mã RSA.

Thí dụ: Bên nhận chọn hai số nguyên tố là p = 5 ; q = 7

Tính m = p.q = 35

Tính p-1 và q-1 : p-1 = 4

Trang 15

q-1 = 6

k = BSCNN (4,6) = 12

Chọn cặp mã e, d : Chọn 133 = e.d (modulo k) = e.d (modulo 12) = 1

Ta chọn e = 19 ; d = 7 Bên gửi mã hóa x và gửi cho người nhận y = xe (modulo m) Ta giả sử x = 2 ,thì ta tính được y = 219 (modulo 35) = 524288 = 23 Giá trị y=23 này được gửi cho bênnhận

Bên nhận giải mã bản tin nhận được:

x = yd (modulo 35) Thay số ta có mã giải được là x = 237 (modulo 35)=

3404825447(modulo 35) = 2

Như vậy kết quả giải mã hoàn toàn chính xác với kết quả đã gửi

1.3 Giới thiệu về hàm băm và mật mã

Hàm băm mật mã là một thủ tục tất định có đầu vào là khối dữ liệu bất kỳ và trả

về một xâu bit có độ dài cố định, gọi là giá trị băm (mật mã), mà bất kỳ sự thay đổi vôtình hay các ý trên dữ liệu sẽ thay đổi giá trị băm Dữ liệu đem mã hóa thường được gọi

là thông điệp (message), và giá trị băm đôi khi còn được gọi là tóm lược thông điệp(message digest) hay giá trị tóm lược (digest)

Hàm băm mật mã lý tưởng có 4 tính chất chính sau:

• Dễ dàng tính giá trị băm với bất kỳ thông điệp cho trước nào,

• Không thể tìm được một thông điệp từ một giá trị băm cho trước,

• Không thể sửa được một thông điệp mà không làm thay đổi giá trị băm của nó,

• Không thể tìm ra 2 thông điệp khác nhau mà có cùng giá trị băm

Hàm băm mật mã có rất nhiều ứng dụng trong an toàn thông tin, nhất là cho chữ

ký điện tử (Digital Signatures), mã nhận thực thông điệp (MACs – MessageAuthentication Codes), và một số dạng nhận thực khác Chúng cũng có thể sử dụngnhư các hàm băm thông thường, để đánh chỉ số dữ liệu trong bảng băm: như điểm chỉ,

để nhận diện dữ liệu lặp hay xác định tệp dữ liệu duy nhất: hay như checksums đểnhận biết sự thay đổi dữ liệu

1.3.1 Tính chất

Hầu hết các hàm băm mật mã được thiết kế với đầu xâu đầu vào có độ dài tùy ý

và kết quả đầu ra là một giá trị băm có độ dài cố định Hàm băm mật mã phải có thểchống lại được tất cả các kiểu tấn công phân tích đã biết Tối thiểu, nó phải có các tínhchất sau:

Trang 16

Kháng tiền ảnh (Preimage resistance): cho trước một giá trị băm h, khó tìm rathông điệp m thỏa mã h = hash(m) Khái niệm như là hàm một chiều (one wayfunction) Các hàm thiếu tính chất này sẽ bị tổn thương bởi các tấn công tiền ảnh(preimage attacks).

Kháng tiền ảnh thứ 2 (Second preimage resistance): cho trước một đầu vào m1,khó có thể tìm ra đầu vào m2 khác (không bằng m1) thỏa mãn hash(m1) = hash(m2).Tính chất này đôi khi như là kháng va chạm yếu (weak collision resistance) Các hàmthiếu tính chất này sẽ bị tổn thương bởi các tấn công tiền ảnh thứ 2 (second preimageattacks)

Kháng va chạm (Collision resistance): khó có thể tìm ra 2 thông điệp m1 và m2 thỏamãn hash(m1) = hash(m2) Một cặp như vậy được gọi là một va chạm băm (mật mã),

và tính chất này đôi khi như là kháng va chạm mạnh (strong collision resistance) Tínhchất này yêu cầu rằng một giá trị băm tối thiểu cũng mạnh hơn yêu cầu kháng tiền ảnh,hơn nữa các va chạm có thể tìm được bởi tấn công ngày sinh (birthday attack)

Các tính chất trên nói lên rằng đối phương ác ý không thể thay hoặc sửa dữ liệuđầu vào mà không làm thay đổi giá trị tóm lược của nó Do đó, nếu 2 xâu có cùng mộtgiá trị tóm lược, thì người ta tin tưởng rằng chúng là giống nhau Một hàm có các tiêuchí này vẫn có thể có các tính chất không mong muốn Hiện tại các hàm băm mật mãthông thường vẫn bị tổn thương bởi các tấn công mở rộng độ dài (length-extensionattacks): cho trước h(m) và len(m) nhưng không biết m, bằng cách chọn m’ hợp lý, kẻtấn công có thể tính h(m || m’), với || ký hiệu là phép ghép xâu Tính chất này có thểđược sử dụng để phá vỡ các lược đồ xác thực đơn giản dựa vào hàm băm Cấu trúcHMAC (Hash Message Authentication Code) gặp phải các vấn đề như vậy

Về mặt lý tưởng, người ta có thể muốn các điều kiện mạnh hơn Kẻ tấn côngkhông thể tìm ra 2 thông điệp có các giá trị tóm lược gần giống nhau; hoặc luận ra bất

kỳ thông tin có ích nào về dữ liệu, mà chỉ cho trước giá trị tóm lược Do đó, hàm bămmật mã phải tiến gần tới hàm ngẫu nhiên (đến mức có thể) mà vẫn là tất định và tínhtoán hiệu quả

Thuật toán checksum, như là CRC32 và các CRC (Cyclic Redundancy Check)khác, được thiết kế nhiều yêu cầu yếu hơn, và nói chung không giống như là các hàmbăm mật mã Ví dụ, có một CRC đã được sử dụng kiểm tra tính toàn vẹn trong chuẩn

mã WEP (Wired Equivalent Privacy), nhưng đã có một tấn công khai thác tính tuyếntính của checksum

1.3.2 Ứng dụng

Một ứng dụng tiêu biểu của hàm băm mật mã sẽ như sau: Alice đặt ra một bàitoán khó cho Bob, và tuyên bố rằng cô ta đã giải được Bob sẽ phải cố gắng tự thựchiện, nhưng chưa dám chắc rằng Alice không giải sai Do đó, Alice viết ra lời giải của

Trang 17

mình, gắn thêm một giá trị nonce ngẫu nhiên, tính giá trị băm của nó và cho Bob biếtgiá trị băm đó (giữ bí mật lời giải và giá trị nonce) Bằng cách này, khi Bob tìm ra lờigiải của mình vài ngày sau đó, Alice có thể chứng minh rằng cô ta có lời giải sớm hơnbằng cách tiết lộ giá trị nonce cho Bob (Đây là một ví dụ về một lược đồ cam kết đơngiản trong thực tế, vai trò của Alice và Bob thường sẽ là các chương trình máy tính, và

bí mật sẽ là một cái gì đó dễ dàng giả mạo hơn là một bài toán đó theo yêu cầu)

Một ứng dụng quan trọng của băm an toàn là xác minh tính toàn vẹn của thôngđiệp Xác định liệu có thay đổi nào đã được thực hiện đối với thông điệp (hoặc một tậptin), ví dụ, có thể được thực hiện bằng cách so sánh các giá trị tóm lược thông điệp đãtính toán trước, và sau đó, truyền đi (hoặc sự kiện nào đó)

Một giá trị tóm lược thông điệp cũng có thể phục vụ như là một phương tiệnnhận dạng một tập tin đáng tin cậy một số hệ thống quản lý mã nguồn, bao gồm Git,Mercurial và Monotone, sử dụng giá trị sha1sum của nhiều dạng nội dung khác nhau(nội dung tập tin, cây thư mục, vv) để nhận dạng chúng một cách duy nhất duynhất.Một ứng dụng khác liên quan tới việc xác thực mật khẩu Mật khẩu thường khôngđược lưu trữ dạng văn bản rõ, với các lý do hiển nhiên, mà thay bằng dạng giá trị tómlược Để xác thực người dùng, mật khẩu đại diện cho người sử dụng được băm và sosánh với giá trị băm lưu trữ Điều này đôi khi được gọi là phép mã hóa một chiều (one-way encryption) Đối với cả hai lý do bảo mật và hiệu suất, hầu hết các thuật toán chữ

ký số chỉ định rằng chỉ giá trị tóm lược của thông báo được "ký", chứ không phải toàn

bộ thông báo Các hàm băm cũng có thể được sử dụng trong việc tạo các bit giả ngẫunhiên (pseudorandom) Các giá trị băm còn được sử dụng để nhận dạng tập tin trênmạng chia sẻ peer-to-peer Ví dụ, trong một liên kết ed2k, một giá trị băm MD4-biếnthể được kết hợp với kích thước tập tin, cung cấp đủ thông tin để định vị các nguồn tậptin, tải các tập tin và xác nhận nội dung của nó (Trong máy tính, các liên kết ed2k làcác hyperlinks được sử dụng để biểu thị các tập tin được lưu trữ trong mạng eDonkeyP2P.) Các liên kết Magnet là một ví dụ khác Các giá trị băm tập tin như vậy thường làbăm đầu danh sách băm hoặc cây băm để có thêm nhiều tiện lợi

1.4 Hàm băm dựa trên mã khối

Có một số phương pháp sử dụng thuật toán mã khối để xây dựng một hàm bămmật mã, cụ thể nó là hàm nén một chiều (one-way compression function).Các phương pháp tương tự như các chế độ hoạt động của mã khối sử dụng cho phép

mã Tất cả các hàm băm đã biết, bao gồm MD4, MD5, SHA-1 và SHA-2 được xâydựng từ các thành phần giống mã khối, chúng được thiết kế riêng cho mục đích này,với thông tin phản hồi để bảo đảm rằng các hàm nhận được là không song ánh

Một thuật toán mật mã khối chuẩn như AES có thể được sử dụng thay chonhững thuật toán mật mã khối tùy chỉnh điều này thường phải trả giá về hiệu năng,nhưng có thể được thuận lợi khi hệ thống cần thực hiện băm mật mã và chức năng mật

Trang 18

mã khác như mã hóa đều có thể sử dụng chung một thuật toán mã khối, nhưng bị hạnchế ở kích thước mã hoặc phần cứng phải phù hợp với nó, chẳng hạn như trong một số

hệ thống nhúng như thẻ thông minh

1.5 Hàm băm mật mã

Hàm băm mật mã là hàm toán học chuyển đổi một thông điệp có độ dài bất kỳthành một dãy bit có độ dài cố định (tùy thuộc vào thuật toán băm) Dãy bit này đượcgọi là thông điệp rút gọn (message digest) hay giá trị băm (hash value), đại diện chothông điệp ban đầu Dễ dàng nhận thấy rằng hàm băm h không phải là một song ánh

Do đó, với thông điệp x bất kỳ, tồn tại thông điệp x’ ≠ x sao cho h(x)= h(x’) Lúc này,

ta nói rằng “có sự đụng độ xảy ra” Một hàm băm h được gọi là an toàn (hay “ít bịđụng độ”) khi không thể xác định được (bằng cách tính toán) cặp thông điệp x và x’thỏa mãn x≠x’ và h(x) = h(x’) Trên thực tế, các thuật toán băm là hàm một chiều, do

đó, rất khó để xây dựng lại thông điệp ban đầu từ thông điệp rút gọn Hàm băm giúpxác định được tính toàn vẹn dữ liệu của thông tin: mọi thay đổi, dù là rất nhỏ, trênthông điệp cho trước, ví dụ như đổi giá trị 1 bit, đều làm thay đổi thông điệp rút gọntương ứng Tính chất này hữu ích trong việc phát sinh, kiểm tra chữ ký điện tử, cácđoạn mã chứng nhận thông điệp, phát sinh số ngẫu nhiên, tạo ra khóa cho quá trình mãhóa…

Hàm băm là nền tảng cho nhiều ứng dụng mã hóa Có nhiều thuật toán để thựchiện hàm băm, trong số đó, phương pháp SHA-1 và MD5 thường được sử dụng kháphổ biến từ thập niên 1990 đến nay

 Hàm băm MD4 (Message Digest 4) và MD5 (Message Digest 5):

• Hàm băm MD4 được Giáo sư Ron Rivest đề nghị vào năm 1990 Vào năm

1992, phiên bản cải tiến MD5 của thuật toán này ra đời

• Thông điệp rút gọn có độ dài 128 bit

• Năm 1995, Hans Dobbertin đã chỉ ra sự đụng độ ngay chính trong bản thânhàm nén của giải thuật (mặc dù chưa thật sự phá vỡ được giải thuật) Năm 2004, nhómtác giả Xiaoyun Wang, Dengguo Feng, Xuejia Lai và Hongbo Yu đã công bố kết quả

về việc phá vỡ thuật toán MD4 và MD5 bằng phương pháp tấn công đụng độ

1.6 Cấu trúc hàm băm

Hầu hết các hàm băm mật mã đều có cấu trúc giải thuật như sau:

Cho trước một thông điệp M có độ dài bất kỳ Tùy theo thuật toán được sửdụng, chúng ta có thể cần bổ sung một số bit vào thông điệp này để nhận được thôngđiệp có độ dài là bội số của một hằng số cho trước Chia nhỏ thông điệp thành từngkhối có kích thước bằng nhau: M1, M2, …Ms

Trang 19

Gọi H là trạng thái có kích thước n bit, f là “hàm nén” thực hiện thao tác trộnkhối dữ liệu với trạng thái hiện hành Khởi gán H0 bằng một vector khởi tạo nào đó Hi

= f(Hi-1,M) với i = 1, 2, 3, …, s Hs chính là thông điệp rút gọn của thông điệp M banđầu

1.7 Ghép hàm băm mật mã

Ghép các kết quả đầu ra từ nhiều hàm băm tạo ra tính kháng va chạm tối thiểucũng tốt như là độ mạnh nhất của thuật toán trong các kết nối Ví dụ, SSL sử dụngghép nối MD5 và SHA-1 để đảm bảo giao thức đó sẽ vẫn an toàn thậm chí nếu mộthàm băm bị phá vỡ

Tuy nhiên, với các hàm băm Merkle-Damgård, hàm ghép nối chỉ mạnh như các thànhphần tốt nhất, chứ không mạnh hơn Joux chỉ ra rằng 2-va chạm dẫn đến n-va chạmnếu dễ dàng tìm ra 2 thông điệp có cùng giá trị băm MD5, thì không khó để tìm thấynhiều thông điệp khi kẻ tấn công muốn lấy các giá trị băm MD5 giống nhau Trong số

n thông điệp với cùng giá trị băm MD5, có khả năng có được một va chạm SHA-1.Nhưng công việc cần thực hiện thêm là tìm va chạm SHA-1 (làm sao để tốt hơn tìmkiếm ngày sinh) là đa thức Lập luận này được tổng kết bởi Finney

Thông điệp ban đầu x sẽ được mở rộng thành dãy bit X có độ dài là bội số của

512 Một bit 1 được thêm vào sau dãy bit x, tiếp đến là dãy gồm d bit 0 và cuối cùng làdãy 64 bit l biểu diễn độ dài của thông điệp x Dãy gồm d bit 0 được thêm vào sao chodãy X có độ dài là bội số 512

1.8.2 Khái niệm

MD5 (Message-Digest algorithm 5) là một hàm băm để mã hóa với giá trị băm

là 128bit Từng được xem là một chuẩn trên Internet, MD5 đã được sữ dụng rộng rảitrong các chương trình an ninh mạng, và cũng thường được dùng để kiểm tra tínhnguyên vẹn của tập tin

MD5 được thiết kế bởi Ronald Rivest vào năm 1991 để thay thế cho hàm bămtrước đó, MD4 (cũng do ông thiết kế, trước đó nữa là MD2)

Trang 20

1.8.3 Ứng dụng

Md5 có 2 ứng dụng quan trọng:

MD5 được sử dụng rộng rải trong thế giới phần mềm để đảm bảo rằng tậptin tải về không bị hỏng Người sử dụng có thể so sánh giữa thông số kiểm tra phầnmềm bằng MD5 được công bố với thông số kiểm tra phần mềm tải về bằng MD5 Hệđiều hành Unix sử dụng MD5 để kiểm tra các gói mà nó phân phối, trong khi hệ điềuhành Windows sử dụng phần mềm của hãng thứ ba

 MD5 được dùng để mã hóa mật khẩu Mục đích của việc mã hóa này làbiến đổi một chuổi mật khẩu thành một đoạn mã khác, sao cho từ đoạn mã đó khôngthể nào lần trở lại mật khẩu Có nghĩa là việc giải mã là không thể hoặc phải mất mộtkhoãng thời gian vô tận (đủ để làm nản lòng các hacker)

1.8.4 Thuật giải

MD5 biến đổi một thông điệp có chiều dài bất kì thành một khối có kích thước

cố định 128 bits Thông điệp đưa vào sẻ được cắt thành các khối 512 bits Thông điệpđược đưa vào bộ đệm để chiều dài của nó sẻ chia hết cho 512 Bộ đệm hoạt động nhưsau:

- Trước tiên chèn bit 1 vào cuối thông điệp

- Tiếp đó là hàng loạt bit Zero cho tới khi chiều dài của nó nhỏ hơn bội số của 512 một khoảng 64 bit

- Phần còn lại sẽ được lấp đầy bởi một số nguyên 64 bit biểu diển chiều dài ban đầucủa thông điệp Thuật toán chính của MD5 hoạt động trên một bộ 128 bit Chia nhỏ nó

ra thành 4 từ 32 bit, kí hiệu là A,B,C và D Các giá trị này là các hằng số cố định Sau

đó thuật toán chính sẻ luân phiên hoạt động trên các khối 512 bit Mỗi khối sẻ phốihợp với một bộ Quá tŕnh xữ lư một khối thông điệp bao gồm 4 bước tương tự nhau,gọi là vòng (“round”) Mỗi vòng lại gồm 16 quá trình tương tự nhau dựa trên hàm mộtchiều F, phép cộng module và phép xoay trái…

Hình bên dưới mô tả một quá trình trong một vòng Có 4 hàm một chiều F cóthể sử dụng Mỗi vòng sử dụng một hàm khác nhau

Trang 21

Hinh 1.4 Quá trình trong một vòng MD5

1.9.1 Mô tả

Đầu vào là những khối 512-bit, được chia cho 16 khối con 32-bit Đầu ra củathuật toán là một thiết lập của 4 khối 32-bit để tạo thành một hàm Băm 128-bit duynhất Đầu tiên, ta chia bức điện thành các khối 512-bit, với khối cuối cùng (đặt là x và

x <512-bit) của bức điện, chúng ta cộng thêm một bit 1 vào cuối của x, theo sau đó làcác bit 0 để được độ dài cần thiết (512 bit) Kết quả là bức điện vào là một chuỗi M

có độ dài chia hết cho 512, vì vậy ta có thể chia M ra thành các N word 32-bit (Nword này sẽ chia hết cho 16)

Bây giờ, ta bắt đầu tìm cốt của bức điện với 4 khối 32-bit A, B, C và D (đượcxem như thanh ghi) :

Trang 22

Khối của bức điện

A B C D

Bức điện được chia ra thành nhiều khối 512-bit, mỗi khối 512-bit lại được chia

ra 16 khối 32-bit đi vào bốn vòng lặp của MD5 Giả sử ta đặt a, b, c và d thay cho A,

B, C và D đối với khối 512-bit đầu tiên của bức điện Bốn vòng lặp trong MD5 đều

có cấu trúc giống nhau Mỗi vòng thực hiện 16 lần biến đổi: thực hiện với một hàmphi tuyến của 3 trong 4 giá trị a, b, c và d sau đó nó cộng kết quả đến giá trị thứ 4,tiếp đó cộng với một khối con 32-bit và một hằng số Sau đó, nó dịch trái một lượngbit thay đổi và cộng kết quả vào một trong 4 giá trị a, b, c hay d Kết quả cuối cùng

là một giá trị mới được thay thế một trong 4 giá trị a, b, c hay d

Hình 1.5 Sơ đồ vòng lặp chính của MD5

Trang 23

X  Y Phép toán AND trên bit giữa X và Y

X  Y Phép toán OR trên bit giữa X và Y

X  Y Phép toán XOR trên bit giữa X và Y

¬Z))X Phép toán NOT trên bit của X

X + Y Phép cộng (modulo 232

)

X <<< s Các bit của X được dịch chuyển xoay vòng sang trái s vị trí (0 ≤ s < 32)

Những hàm này được thiết kế sao cho các bit tương ứng của X, Y và Z là độclập và không ưu tiên, và mỗi bit của kết quả cũng độc lập và ngang bằng nhau

Nếu Mj là một biểu diễn của khối con thứ j (j = 16) và <<<s là phép dịch tráicủa s bit, thì các vòng lặp có thể biểu diễn như sau:

FF(a,b,c,d,Mj,s,ti) được biểu diễn a = b + ((a + F(b,c,d) + Mj + ti)<<<s)

GG(a,b,c,d,Mj,s,ti)được biểu diễn a=b + ((a + G(b,c,d) + Mj + ti) <<<s)

HH(a,b,c,d,Mj,s,ti) được biểu diễn a=b+ ((a+H(b,c,d) + Mj + ti) <<< s)

Trang 24

II(a,b,c,d,Mj,s,ti) được biểu diễn a = b + ((a + I(b,c,d) + Mj + ti) <<< s).

Trang 26

Hình 1.7 Một ví dụ về mã MD5

Trang 28

CHƯƠNG 2: TỔNG QUAN VỀ GIAO THỨC SIP

2.1 Giao thức SIP

Giao thức SIP (Secssion Initiation Protocol ) là giao thức báo hiệu điều khiển lớpứng dụng được dùng để thiết lập , duy trì , kết thúc các phiên truyền thông đa phươngtiện ( multimedia ) có một hoặc nhiều người tham gia Các phiên multimedia bao gồmthoại internet , hội nghị và các ứng dụng tương tự có liên quan đến các phương tiệntruyền đạt ( media ) như âm thanh , hình ảnh và dữ liệu SIP sử dụng các bản tin mời( INVITE ) để thiết lập các phiên và để mang các thông tin mô tả phiên truyền dẫn SIP

hỗ trợ các phiên đơn bá ( unicast ) và quảng bá( multicast ) tương ứng các cuộc gọiđiểm tới điểm và cuộc gọi đa điểm SIP là một giao thức để thiết lập các phiên truyềnthông Các phiên SIP baogồm :

− Hội họp đa phương tiện qua internet

− Các cuộc gọi điện thoại qua internet

− Các phiên video qua internet

− Phân phối đa phuong tiên

Các phần tử của SIP có thể liên lạc thông qua :

SIP là một giao thức mở rộng đơn giản

− Các phương tiện ( Methods ) – Định nghĩa về phiên truyền thông

− Khối mào đầu ( Headers ) – Mô tả về phiên truyền thông

− Phần thông tin báo ( Message Body ) – SDP , kư tự , XML

2.2 Sự phát triển của giao thức SIP

Đầu tiên SIP chỉ đơn thuần là một giao thức dùng để thiết lập phiên quảng báchoInternet2 ( từ giữa đến cuối thập kỉ 90 ) SIP được phát triển bởi SIP WorkingGrouptrong IETF Phiên bản đầu tiên được ban hành vào tháng 3 năm 1999 trong tài liệuRFC 2543 Sau đó, SIP trải qua nhiều thay đổi và cải tiến Phiên bản mới nhất hiện nayđược ban hành trong IETF RFC 3261 RFC 3261 hoàn toàn tương thích ngược với

Trang 29

RFC 2543, do đó các hệ thống thực thi theo RFC 2543 hoàn toàn có thể sử dụng vớicác hệ thống theo RFC 3261.

Một bản tin SIP có hai phần, phần mào đầu và phần thân Phần thân cho phép phục

vụ các ứng dụng khác nhau một cách linh hoạt Ban đầu phần thân chỉ dùng để chuyểntải các tham số miêu tả phiên SDP như codec, địa chỉ IP đầu cuối, Phần thân được

sử dụng để mở rộng các ứng dụng của khác nhau của SIP ví dụ như SIP-T cho liên vậnPSTN-SIP-PSTN hoặc MSCML (Media Server Control MarkupLanguage) cho dịch

vụ hội nghị

2.3 Các thành phần trong mạng của SIP

2.3.1 Thành phần của SIP :

Bao gồm SIP User Agent ( UA ) và SIP server

2.3.1.1 SIP User Agent ( người dùng Agent)

SIP UA hoặc thiết bị đầu cuối là điểm cuối của dialog : SIP UA gửi và nhận cácyêu cầu và trả lời của SIP , nó là điểm cuối của luồng đa phương tiện và nó luôn làNgười dùng Equiment ( UE ) – bao gồm ứng dụng trong thiết bị đầu cuối hoặc ứngdụng phần cứng chuyên dụng UA gồm hai phần :

− Người dùng Agent Client ( UAC ) : ứng dụng của người gọi – khởi tạorequest

− Người dùng Agent Server ( UAS ) : chấp nhận , gửi lại , từ chối request

và gửi trả lời cho request đến thay mặt cho người sử dụng UA là thực thể SIP màtương tác với với người sử dụng Nó thường xuyên sử dụng giao diện với người sửdụng

Tuy nhiên , một vài hệ thống sử dụng SIP không trực tiếp kết nối với người sửdụng Ví dụ : B có thể gửi lại tất cả lời mời vào phiên được nhận từ nửa đêm đến 7 giờsáng đến máy trả lời SIP của B > máy này tự động thiết lập phiên trong thông điệp bảnghi

Nó cũng chứa UA – mà không nhất thiết lập duy trì tương tác với người sửdụng , nhưng vẫn trả lời mời hoặc chuyển lời mời trên dại diện của B

2.3.1.2 SIP Server:

SIP server : Cần phân biệt SIP Server và UA server cũng như mô hình server Ở đây , SIP server là một thực thể luận lý , một SIP server có thể có chức năngcủa nhiều loại server hay nói cách khác một SIP Server có thể hoạt động như cácserver khác nhau trong các trường hợp khác nhau Trong SIP Server có các thànhphần quan trọng như : Proxy Server , Redỉect Server , Location Server ,RegistrarServer , …

Trang 30

client-Truy nhập dữ liệu và dịch vụ định vị để tìm địa chỉ của user và gửi trả về bảntin lớp 300 để thông báo thiết bị chuyển hướng bản tin tới địa chỉ khác – tự liên lạcthông qua địa chỉ trả về

c Registrar Sever : là sever nhận bản tin SIP REGISTER yêu cầu và cập nhậtthông tin từ bản tin request vào “ location database “ nằm trong Location Sever

d Location Sever Lưu thông tin trạng thái hiện tại của người dùng trong mạngSIP

Hinh 2.1 Chuyển hướng máy chủ

2.3.2 Các bản tin SIP mào đầu và đánh số

Dưới đây là các bản tin của SIP :

INVITE : bắt đầu thiết lập cuộc gọi bằng cách gửi bản tin mời đầu cuối khác tham gia.ACK : bản tin này khẳng định máy trạm đã nhận được bản tin trả lời bản tin

INVITEBYE BYE : bắt đầu kết thúc cuộc gọi

CANCEL : hủy yêu cầu nằm trong hàng đợi

REGISTER : đầu cuối SIP sử dụng bản tin này để đăng ký với máy chủ đăng ký.OPTION : sử dụng để xác định năng lực của máy chủ

Trang 31

INFO : sử dụng để tải các thông tin như âm báo DTMF.

Hình 2.2 Những bản tin trao đổi giữa A và B để thiết lập một phiên

2.3.3 Khuôn dạng thông điệp

Thông điệp SIP gồm 3 phần: start line, header của thông điệp và body

Client gửi yêu cầu (request) và server trả lời bằng response Giao dịch SIP baogồm yêu cầu từ client, 0 hoặc nhiều provisional response và final response từ server

2.3.3.1 SIP response

Status line là dòng bắt đầu của response

Các bản tin đáp ứng được chia thành thành hai nhóm bao gồm 6 loại bản tin,mỗi bản dùng một mã trạng thái nằm trong một dải mã

More Ringing messages until user B answes…

INVITE100TRYING108RINGING

200 OKACKRTP voice call

BYE

…now user A decides to hang up

200 OK

Trang 32

Hình 2.3 SIP reponse

• Provisional (1xx): Bản tin này dùng để chỉ thị tiến trình nhưng không kết thúc giao

dịch SIP (tìm kiếm, rung chuông, xếp hàng)

• Final (2xx, 3xx, 4xx, 5xx, 6xx): Bản tin này chỉ thị kết thúc giao dịch SIP.

1xx : Provisional – đã nhận yêu cầu và đang tiếp tục xử lý yêu cầu Tìm kiếm, rung

chuông, xếp hàng đợi, nó được phát khi quá trình xử lý chưa thể kết thúc ngay được.Phía phát cần phải dừng quá trình truyền các yêu cầu khi nhận được bản tin này

2xx : Success – Các yầu đã được xử lý thành công (nhận, hiểu và đã được tiếp nhận) 3xx: Redirection – Cần tiến hành thêm các hoạt động để có thể đáp ứng được các yêu

cầu Chúng được gửi bởi các Redirect Server

4xx: Client Error – Lỗi do phía Client, các yêu cầu sai cú pháp hoặc không đáp ứng

đúng yêu cầu của Server

5xx: Server Error – Lỗi phía Server, server bị sự cố và không đáp ứng được các yêu

cầu hợp lệ

Trang 33

6xx: Global Failure – Lỗi tổng thể, các yêu cầu không thể được đáp ứng tại bất kỳ

server nào

cụ thể :

1xx: Phản hồi thông tin :

100: Đang thử : Máy đựợc gọi đã tiếp nhận được yêu cầu bên gọi và gửi bản tin nàymang tính chất phản hồi để thử

180: Đổ chuông : Máy được gọi đổ chuông, và gửi bản tin chuông về cho bên gọi.181: Cuộc gọi đang chuyển hướng: Máy được gọi lập trình chuyển hướng đến mộtmáy khác trong khi nó đang bận hoặc không xử lý cuộc gọi của bên gọi

182 : Đang xếp hàng đợi : Chờ đợi vì có nhiều yêu cầu đến cùng lúc

183: Phiên đang tiến hành: Có phiên cuộc gọi khác đang đựơc tiến hành với máy đựợcgọi

3xx: Phản hồi chuyền hướng

300: Có nhiều lựa chọn

301: Đã dời đi vĩnh viễn

302: Tạm thời dời đi

305: Dùng proxy

380: Dịch vụ thay thế

4xx: Yêu cầu thất bại

400: Yêu cầu sai

401: Không được quyền: chỉ dùng với cơ quan đăng kiểm , các proxy phải dùng yêucầu cấp phép cho proxy 407

402: Yêu cầu trả tiền :Dự trữ để phòng trong tương lai: Ví dụ khi bạn dung điện thoại

di động, tiền trong tài khoản của bạn gần hết, trước khi thiết lập cuộc gọi theo yêu cầucủa bạn thì tổng đài sẽ thêm một thông báo:"Tài khoản của bạn sắp hết , xin vui lòngnạp thêm để có thê tiếp tục sử dụng"

403: Cấm

Trang 34

404: Không tìm thấy người dùng:"Thuê bao quý khách vừa gọi Không có,xin vui lòngthử lại"

405: Phương thức không được phép

406: Không được chấp nhận

407: Cần có sự cấp phép cho proxy

408: Yêu cầu bị hết giờ : Không tìm thấy người dùng trong thời gian cho phép

410: Đã không còn , người dùng đã từng tồn tại nhưng bây giờ không còn được sửdụng nữa:"Thuê bao quý khách vừa gọi hiện đang tạm khóa, mong quý khách vui lònggọi lại sau"

413: Đơn vị yêu cầu quá lớn: "cuộc gọi không thể thực hiện được"

414: URI của yêu cầu quá tải :"mạng quá tải"415: kiểu phương tiện không được hỗtrợ: ví dụ : tin nhắn đa phương tiện không thể gửi đến và nhận từ một số máy di độngkhông hỗ trơn GPRS

416: Giản đồ URI không được hỗ trợ

420: Phần mở rộng không đúng: Sử dụng phần mở rộng của giao thức SIP không đúngnên máy chủ không hiểu được

421: Yêu cầu có phần mở rộng

423: Quãng quá ngắn

480: Tạm thời không hoạt động

481: Cuộc gọi/giao dịch không tồn tại

482: Phát hiện thấy lặp

483: Quá nhiều chặng trung tuyến

484: Địa chỉ không hoàn chỉnh

485: Tối nghĩa486: đang bận

487: Yêu cầu bị chấm dứt

488: Không được chấp nhận tại đây

491: Yêu cầu đang chờ

493: Không thể giải mã được : Không thể giải mă phần thân của S/MIME

5xx: Lỗi máy chủ

500: Lỗi bên trong máy chủ

501: Chưa khai báo: Phương thức yêu cầu SIP này chưa đựơc khai báo ở đây

502: Gateway sai

503: Dịch vụ không có

505: Phiên bản không được hỗ trợ: Máy chủ không hỗ trợ giao thức SIP này

513: Thông điệp quá lớn

Trang 35

Hình 2.4 SIP request

Các trường header

Khuôn dạng của các trường header:

Tên của trường header: giá trị của trường header

Có các trường header bắt buộc và tùy chọn trong mỗi thông điệp Có 6 trườngheader có tính bắt buộc trong mỗi SIP thông điệp: To, From, Cseq, Call-ID, Max-Forward, Via

2.3.4 Chức năng của SIP

2.3.4.1 Thiết lập và sửa đổi kết thúc phiên

SIP độc lập với kiểu của phiên đa phương tiện được điều khiển và kỹ thuật sửdụng để mô tả phiên Nó rất hữu ích cho hội nghị, cuộc gọi audio, whiteboard đượcchia sẻ và các phiên chơi game Các phiên bao gồm các luồng RTP (Real

Ngày đăng: 17/06/2014, 17:48

HÌNH ẢNH LIÊN QUAN

Hình 1.1 Nguyên lý của hệ thống mã hóa đối xứng. - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 1.1 Nguyên lý của hệ thống mã hóa đối xứng (Trang 11)
Hình 1.2 Kênh nguyên lý trong hệ thống mã hóa đối xứng. - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 1.2 Kênh nguyên lý trong hệ thống mã hóa đối xứng (Trang 12)
Hình bên dưới mô tả một quá trình trong một vòng. Có 4 hàm một chiều F có thể sử dụng - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình b ên dưới mô tả một quá trình trong một vòng. Có 4 hàm một chiều F có thể sử dụng (Trang 19)
Hình 1.7 Một ví dụ về mã MD5 - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 1.7 Một ví dụ về mã MD5 (Trang 25)
Hình 2.2  Những bản tin trao đổi giữa A và B để thiết lập một phiên - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 2.2 Những bản tin trao đổi giữa A và B để thiết lập một phiên (Trang 30)
Hình 2.7 Precense - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 2.7 Precense (Trang 38)
Hình 3.1 Hoạt động nhận thực trong SIP - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.1 Hoạt động nhận thực trong SIP (Trang 45)
Bảng 3.1 Các thông số của header WWW-Authenticate - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Bảng 3.1 Các thông số của header WWW-Authenticate (Trang 46)
Bảng 3.2 Các thông sô trong heard Authorization - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Bảng 3.2 Các thông sô trong heard Authorization (Trang 47)
Bảng 3.3 Các thông số của header Authentication-Info - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Bảng 3.3 Các thông số của header Authentication-Info (Trang 48)
Hình 3.2 Mã hóa và kiểm tra kí hiệu số. - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.2 Mã hóa và kiểm tra kí hiệu số (Trang 49)
Hình 3.3 Ngăn xếp giao thức TLS. - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.3 Ngăn xếp giao thức TLS (Trang 53)
Hình 3.4 Các bản tin trong handshake - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.4 Các bản tin trong handshake (Trang 54)
Bảng 3.7 Các thông số bản tin ClientHello - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Bảng 3.7 Các thông số bản tin ClientHello (Trang 55)
Bảng 3.8 Mô tả thuật một số thuật toán trao đổi khóa dùng trong TLS. - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Bảng 3.8 Mô tả thuật một số thuật toán trao đổi khóa dùng trong TLS (Trang 56)
Hình 3.5 Quá trình chia mảnh - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.5 Quá trình chia mảnh (Trang 58)
Hình 3.6 TLS được dùng giữa 2 SIP UA trong các miền khác nhau. - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.6 TLS được dùng giữa 2 SIP UA trong các miền khác nhau (Trang 59)
Hình 3.7 Kịch bản đăng kí SIP UA - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.7 Kịch bản đăng kí SIP UA (Trang 59)
Hình dưới đây minh họa kịch bản một SIP UA mời một SIP UA khác trong miền khác bằng cách dùng TLS giữa mỗi bước nhảy trong đường báo hiệu - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình d ưới đây minh họa kịch bản một SIP UA mời một SIP UA khác trong miền khác bằng cách dùng TLS giữa mỗi bước nhảy trong đường báo hiệu (Trang 60)
Hình sau minh họa kịch bản một SIP UA không sử dụng proxy hướng đi ra, mời SIP UA trong miền B - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình sau minh họa kịch bản một SIP UA không sử dụng proxy hướng đi ra, mời SIP UA trong miền B (Trang 61)
Hình 3.10 Sử dụng Ipsec trong SIP. - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.10 Sử dụng Ipsec trong SIP (Trang 63)
Hình 3.11 Các kích cỡ mật khẩu với thời gian tương ứng tìm ra nó - nghiên cứu thuật toán mã hóa md5 và ứng dụng của nó trong giao thức sip
Hình 3.11 Các kích cỡ mật khẩu với thời gian tương ứng tìm ra nó (Trang 66)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w