Tài liệu Đồ án tốt nghiệp Giải pháp xác thực số pdf

65 345 0
Tài liệu Đồ án tốt nghiệp Giải pháp xác thực số pdf

Đ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

Đồ án tốt nghiệp Giải pháp xác thực số  Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 1 MỞ ĐẦU Sự ra đời của internet, sự phát triển nhanh chóng của công nghệ thông tin đã tạo ra một thay đổi lớn trong các lĩnh vực đời sống của con người. Internet ra đời, nhu cầu truyền thông tin trên mạng là một nhu cầu tất yếu. Và đặc biệt với sự ra đời của thương mại điện tử thì nhu cầu này càng rõ rệt và cấp thiết hơn. Vấn đề đặt ra là phải tạo một phương pháp truy ền thông tin an toàn, tránh sự phá hoại, ăn cắp thông tin hay làm sai lệch thông tin. Cùng với nhu cầu này một loạt các giải pháp được ra đời. Mã hóa, chữ ký điện tử đảm bảo được tính xác thực, và an toàn của thông tin nhưng vẫn chưa đủ để xác thực khi người sử dụng các cặp khóa công khai và bí mật chối bỏ các thông tin về khóa mình đã sử dụng. Từ lý do đó mà người ta thấy cần phải có một bên thứ ba đứng ra xác nh ận các thông tin về khóa dùng để mã hóa gắn liền với chủ thể sử dụng. Chứng chỉ số ra đời. Chứng chỉ số là một tệp tin điện tử do một cơ quan, tổ chức cấp trong đó lưu trữ các thông tin về chủ thể sử dụng và các thông tin về khóa. Đồ án đề cập đến chứng chỉ số và sử dụng chứng chỉ số để xác thự c. Đồ án gồm 3 chương. • Chương I: Các khái niệm cơ bản Trong chương này sẽ đề cập đến một số khái niệm toán học, vấn đề mã hóa, chữ ký điện tử, xác thực, chứng thực điện tử. • Chương II: Chứng chỉ số Trong chương này sẽ trình bày chi tiết về chứng chỉ số. • Chương III: Xây dựng hệ thống quản lý ch ứng chỉ số Trong chương này sẽ giới thiệu việc xây dựng một chương trình hệ thống quản lý chứng chỉ số viết bằng ngôn ngữ PHP 5. Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 2 CHƯƠNG I: CÁC KHÁI NIỆM CƠ BẢN 1.1 Các khái niệm toán học 1.1.1 Số nguyên tố và nguyên tố cùng nhau Số nguyên tố là số chỉ chia hết cho 1 và chính nó. Ví dụ: 2, 3, 5, 7, 17, … là những số nguyên tố. Hệ mật mã thường sử dụng các số nguyên tố ít nhất là lớn hơn 10150. Hai số m và n được gọi là nguyên tố cùng nhau nếu ước số chung lớn nhất của chúng bằng 1. Ký hiệu: gcd(m,n) = 1. Ví dụ: 9 và 14 là nguyên tố cùng nhau. 1.1.2 Đồng dư thứ c Cho a và b là các số nguyên tố, n là số nguyên dương thì a được gọi là đồng dư với b theo modulo n nếu n|a-b (tức a - b chia hết cho n, hay khi chia a và b cho n được cùng một số dư như nhau). Số nguyên n được gọi là modulo của đồng dư. Kí hiệu: a ≡ b (mod n) Ví dụ: 67 ≡ 11 (mod 7), bởi vì 67 (mod 7) = 4 và 11 (mod 7) = 4. Tính chất của đồng dư: Cho a, a 1 , b, b 1 , c ∈ Z. Ta có các tính chất: • a≡b mod n nếu và chỉ nếu a và b có cùng số dư khi chia cho n. • Tính phản xạ: a ≡ a mod n. • Tính đối xứng: Nếu a ≡ b mod n thì b ≡ a mod n. • Tính giao hoán: Nếu a ≡ b mod n và b ≡ c mod n thì a ≡ c mod n. • Nếu a ≡ a 1 mod n, b ≡ b 1 mod n thì a+b ≡ a 1 + b 1 mod n và Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 3 ab ≡a 1 b 1 mod n. 1.1.3 Không gian Z n và Z n * Không gian Z n (các số nguyên theo modulo n) là tập hợp các số nguyên {0,1,2,…,n-1}. Các phép toán trong Z n như cộng, trừ, nhân, chia đều được thực hiện theo module n. Ví dụ: Z 11 = {0,1,2,3,…,10} Trong Z 11 : 6 + 7 = 2, bởi vì 6 + 7 = 13≡ 2 (mod 11). Không gian Z n * là tập hợp các số nguyên p∈Z n , nguyên tố cùng n. Tức là: Z n * = { p ∈ Z n | gcd (n,p) =1} Φ(n) là số phần tử của Z n * Nếu n là một số nguyên tố thì: Z n * = { p ∈ Z n |1≤ p ≤ n - 1} Ví dụ: Z 2 = {0,1} thì Z 2 * = {1} vì gcd(1,2) = 1. 1.1.4 Phần tử nghịch đảo Định nghĩa: Cho a ∈ Z n . Nghịch đảo của a theo modulo n là số nguyên x ∈ Z n sao cho ax ≡ 1 (mod n). Nếu x tồn tại thì đó là giá trị duy nhất, và a được gọi là khả nghịch, nghịch đảo của a ký hiệu là a-1. Tính chất: • Cho a,b∈ Z n . Phép chia của a cho b theo modulo n là tích của a và b−1 theo modulo n, và chỉ được xác định khi b có nghịch đảo theo modulo n. • Cho a∈ Z n , a nghịch đảo khi và chỉ khi gcd(a, n) = 1. Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 4 • Giả sử d=gcd (a, n). Phương trình đồng dư ax ≡ b mod n có nghiệm x nếu và chỉ nếu d chia hết cho b, trong trường hợp các nghiệm d nằm trong khoảng 0 đến n - 1 thì các nghiệm đồng dư theo modulo n/d. Ví dụ: 4-1 = 7 (mod 9) vì 4.7 ≡1 (mod 9) 1.1.5 Hàm băm 1.1.5.1 Giới thiệu Một hàm băm (hash function) hay một giải thuật băm là một phương pháp sinh một địa chỉ trong phần bộ nhớ dành cho các khóa được sắp thứ tự. Các hàm này cung cấp một cách tạo một "vân tay" số nhỏ từ bất kỳ loại dữ liệu nào. Hàm này cắt và trộn (thay thế và chuyển vị) dữ liệu để tạo một giá trị thường được gọi là giá trị băm. Giá trị băm thường được biểu diễn trong hệ cơ số 16. Hàm bă m tốt là hàm cho ra ít đụng độ băm (hash collision) trong các miền dữ liệu trông đợi. Trong các bảng băm và việc xử lý dữ liệu, các đụng độ này dẫn đến chi phí cao hơn cho việc tìm kiếm các bản ghi trong cơ sở dữ liệu. Hình 1.1 Hai điều kiện sau đây được người ta cho là hai điều kiện chủ yếu cho một hàm băm: 1. Hàm băm phải là hàm một phía nghĩa là cho x tính z=h(x) là vi ệc dễ nhưng ngược lại, biết z tính x là việc cực khó (có thể quy ước dễ hay khó là có thể tính được trong thời gian đa thức hay không). Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 5 2. Hàm băm phải là hàm không va chạm mạnh theo nghĩa sau đây: không có thuật toán tính được trong thời gian đa thức giả bài toán “tìm x 1 và x 2 thuộc Σ sao cho x 1 ≠ x 2 và h(x 1 ) = h(x 2 )”; nói cách khác tìm hai văn bản khác nhau có cùng một đại diện là cực kỳ khó. Danh sách các hàm băm: Hình 1.2 1.1.5.2 Cấu trúc của 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 ộ 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ừng khối có kích thước bằng nhau: M 1 , M 2, ,M s. Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 6 • 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ộn khối dữ liệu với trạng thái hiện hành. - Khởi gán H 0 bằng một vector khởi tạo nào đó. - H 1 = f(H i-1 ,M i ) với I = 1,2,3,….,s. • H s chính là thông điệp rút gọn của thông điệp M ban đầu. 1.1.5.3 Một số loại hàm băm Hàm băm MD5: Hàm băm MD4 (Message Digest 4) được giáo sư Rivest đề nghị vào năm 1990. Vào năm sau, phiên bản cải tiến. 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 cho dãy X có độ dài là bội số của 512. Quy định này được thể hiện bằng thuật toán sau: Thuật toán xây dựng dãy bit X từ dãy bit x Hình 1.3 Đơn vị xử lý trog MD5 là các từ 32-bit nên dãy X sẽ được biểu diễn thành dãy các tư X[i] 32 bit: X=X[0]X[1]………X[N-1] với N là bội số của 16. Thuật toán MD5: Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 7 Hình 1.4 Đầu tiên bốn biến ABCD được khởi tạo. Những biến này được gọi là chaining variables. Bốn chu kỳ biến đổi trong MD5 hoàn toàn khác nhau và lần lượt sử dụng các hàm F,G,H và I. Mỗi hàm có các tham số X,Y,Y là cá từ 32 bit và kết quả là một từ 32 bit. F(X,Y,Z)= (X ∧ Y) ∨ (( ¬ X) ∧ Z) G(X,Y,Z)= (X ∧ Z) ∨ (Y( ¬ Z)) H(X,Y,Z)= X ⊕ Y ⊕ Z I(X,Y,Z)= Y ⊕ (X ∨ ( ¬ Z)) Với quy ước: 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. ¬ X: Phép toán NOT trên bit của X. X+Y: Phép cộng (modulo 2 32 ). X<<<s: Các bit của X được dịch chuyển xoay vòng sang trái s vị trí Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 8 (0 ≤ s <32). Định nghĩa các hàm: Hình 1.5 Với M j là M[j] và hằng số t i xác định theo công thức: t i = ⎣ 2 32 |sin(i)| ⎦ , I tính bằng radian. Chu kỳ biến đổi trong MD5 Hình 1.6 Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 9 Hình 1.7 Hàm băm mật mã SHA: Trong các hàm băm SHA, chúng ta cần sử dụng thao tác quay phải một từ, ký hiệu là ROTR, và thao tác dịch phải một từ, ký hiệu là SHR. Khung thuật toán chung cho hàm băm SHA: [...]... ta có thể thấy việc xác thực thực thể thường được thực thi bằng các giấy tờ như chứng minh thư, giấy phép lái xe, hoặc các giấy tờ cá nhân khác Còn việc xác thực tính an toàn của thông tin trao đổi thường dựa trên chữ ký, con dấu 1.4.2 Các dạng xác thực Có hai dạng xác thực là sự xác thực thực thể và sự xác thực trách nhiệm văn bản gốc 1.4.2.1 Xác thực thực thể Trong sự xác thực thực thể, người dùng... ta có: y=sig(x)=xd mod n Gửi (x,y) 3 Kiểm tra chữ ký: Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 16 Giải pháp xác thực số Ver(x,y)=True x=ye mod n 1.4 Xác thực 1.4.1 Khái niệm xác thực Xác thực là việc xác minh, kiểm tra một thông tin hay một thực thể để công nhận hoặc bác bỏ tính hợp lệ của thông tin hay thực thể đó Xác thực luôn là yêu cầu quan trọng trong các giao tiếp cần.. .Giải pháp xác thực số Hình 1.8 Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 10 Giải pháp xác thực số Hình 1.9 Mỗi thuật toán có bảng hằng số phân bố thông điệp tương ứng Kích thước bảng hằng số thông điệp (ScheduleRound) của SHA-224 và SHA-256 là 64, kích thước bảng hằng số thông điệp của SHA-384 và SHA-512 là 80 Trong phương pháp SHA-224 và SHA-256 sử... một lớp nền bảo vệ (a secure socket layer – SSL) có thể tới được trang chủ, ví dụ, nó luôn luôn thực hiện xác thực Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 17 Giải pháp xác thực số một phía máy chủ; còn máy chủ có thể thực hiện có chọn lọc sự xác thực đồng thời của browser Sự xác thực đồng thời đóng vai trò quan trọng trong việc ngăn cản sự tấn công ác ý, mà ở đó, một server lừa... những sửa đổi khi tài liệu được truyền trên các kênh truyền thông, đảm bảo tính đúng đắn,toàn vẹn của tài liệu 1.4.3 Các phương pháp xác thực Có nhiều phương pháp xác thực điện tử đã được phát triển Với mỗi yêu cầu xác thực lại có những phương pháp khác nhau Xác thực thực thể có thể sử dụng các phương pháp nhận dạng sinh học như dấu vân tay, mẫu võng mạc, mẫu giọng nói, chữ ký tay Xác thực thông tin có... nhận là người chính thức hợp pháp của hệ thống Dịch vụ xác thực thực thể đem đến sự đảm bảo sự công nhận hoặc bác bỏ nét nhận dạng của người truy nhập Sự xác thực thực thể có thể một phía hoặc nhiều phía Trong sự xác thực một phía, chỉ một phía thực hiện sự xác thực tự bản thân mình khi liên lạc, nhưng trái lại, trong sự xác thực thực thể đồng thời, cả hai bên phải xác thực lẫn nhau Khi một Web browser... phương pháp xác thực đều có những ưu và nhược điểm riêng Xác thực bằng mật khẩu có nhược điểm lớn nhất là người dùng thường chọn mật khẩu dễ nhớ, do vậy dễ đoán, nên dễ bị tấn công Kẻ tấn công có thể có nhiều phương pháp để đạt được mật khẩu như thâm Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 18 Giải pháp xác thực số nhập vào hệ thống máy tính và đọc file password, dự đoán password,... tấn công lặp lại được thực hiện bởi kẻ nghe trộm Giao thức này yêu cầu người truy nhập và hệ thống xác thực chia một số bí mật nhỏ n Người truy nhập băm mật khẩu của mình n lần để tạo ra mật khẩu sử dụng một lần và xác thực người truy nhập nếu hai kết quả là Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 19 Giải pháp xác thực số như nhau Trên cơ sở của sự xác thực thành công, cả hai... đã được chứng thực nằm trong chứng chỉ số Ngoài khoá công khai, một chứng chỉ số còn chứa thêm tên của đối tượng mà nó nhận diện, hạn dùng, tên của CA cấp chứng chỉ số đó, mã số thứ tự, và những thông tin khác Điều quan trọng nhất là một chứng chỉ số luôn luôn chứa Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 22 Giải pháp xác thực số chữ ký số của CA đã cấp chứng chỉ số đó Nó giống... một số chứng thực điện tử đã được triển khai như chữ ký điện tử, chứng từ điện tử trong hệ thống thanh toán liên ngân hàng, chữ ký điện tử trong khai báo hải quan điện tử 1.5.2 Làm thế nào để có và sử dụng chứng thực điện tử? Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 20 Giải pháp xác thực số Việc cung cấp các chứng thực điện tử cho các tổ chức, doanh nghiệp, người dùng được thực . Đồ án tốt nghiệp Giải pháp xác thực số  Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ. toán chung cho hàm băm SHA: Giải pháp xác thực số Đồ án tốt nghiệp – Khoa công nghệ thông tin trường DHDL Hải Phòng 10 Hình 1.8 Giải pháp xác thực số

Ngày đăng: 19/01/2014, 13:20

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan