đồ án môn bảo mật thông tin digital signature

37 811 0
đồ án môn bảo mật thông tin digital signature

Đ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 Môn Bảo Mật Thông Tin Digital Signature GVHD: Th.s Lê Phúc Nhóm thực hiện: Nguyễn Thị Huyền Trần Thị Thu Hồng Trần Quốc Việt Mục lục: I Tổng quan: Giới thiệu Chữ ký số II Kiến thức tảng: Thuật ngữ Mã hóa đối xứng Mã hóa bất đối xứng Hàm băm Giải thuật SHA-1 III Thuật toán tạo chữ ký số Giải thuật DSA Giải thuật RSA IV Phụ lục SHA-256 SHA-384 SHA-512 Thuật toán kiểm tra số nguyên tố Thuật toán sinh số nguyên tố p q giải thuật DSA V Ví dụ SHA-1 DSA RSA Digital Signature VI Chương trình minh họa Các chức Sơ lược việc ký xác minh Giao diện chương trình Tài liệu tham khảo Digital Signature I Tổng quan: I.1.Giới thiệu: Mạng máy tính đời giúp người trao đổi thông tin cách thuận lợi hơn, nhu cầu trao đổi thông tin ngày lớn đa dạng, tiến khoa học kỹ thuật không ngừng phát triển ứng dụng để nâng cao chất lượng lưu lượng truyền tin quan niệm ý tưởng biện pháp bảo vệ an tồn thơng tin đổi An tồn thơng tin bao gồm nội dung sau:  Tính bí mật: tính kín đáo riêng tư thơng tin  Tính xác thực: bao gồm xác thực đối tác, xác thực thông tin trao đổi  Tính trách nhiệm: bảo đảm người gởi khơng thối thác trách nhiệm thơng tin gởi  Tính tồn vẹn: thơng điệp nhận khơng bị thay đổi cách ngẫu nhiên hay cố ý Bảo vệ an tồn thơng tin chủ đề rộng liên quan đến nhiều lĩnh vực thực tế có nhiều phương pháp để thực bảo vệ an tồn thơng tin Phương pháp đạt hiệu kinh tế bảo vệ an tồn thơng tin biện pháp thuật tốn (Mật mã thơng tin) Mật mã thông tin việc biến đổi thông tin thành dạng khác nhằm che dấu nội dung, ý nghĩa thông tin Ngày nay, nhiều ứng dụng mã hóa bảo mật thơng tin sử dụng nhiều lĩnh vực khác giới an ninh, quân sự, quốc phòng ứng dụng thương mại điện tử ngân hàng Trong năm gần phát triển khoa học máy tính Internet cho thấy tầm quan trọng mật mã thông tin Ứng dụng mật mã thông tin khơng đơn mã hóa giải mã thơng tin cịn dùng việc chứng thực nguồn gốc thông tin, xác thực người sở hữu mã hóa, quy trình giúp trao đổi thơng tin thực trao đổi an toàn mạng Sự phát triển nhanh chóng Internet kéo theo loạt dịch vụ đời trò chuyện, quảng cáo, đặt hàng, mua hàng qua Internet Trong số dịch vụ thương mại điện tử bước nhảy vọt việc ứng dụng Internet vào sống kinh doanh  Ưu điểm: việc trao đổi thông tin, liệu không cần qua giấy tờ, tiện lợi giao dịch  Nhược điểm: vấn đề xác thực nguồn gốc nội dung thông tin I.2 Chữ ký số (Digital Signature): Digital Signature Là kỹ thuật giúp phát triển thương mại điện tử, giúp việc trao đổi liệu tin cậy Chữ ký số chứng minh thơng điệp thực gởi người gởi mà kẻ khác giả mạo Khi sử dụng chữ ký số ta kiểm tra tính xác thực thơng điệp Nó khơng kiểm tra thơng tin người gởi mà cịn kiểm tra thơng tin thơng điệp, giúp ta biết thơng điệp có bị giả mạo hay can thiệp khơng q trình vận chuyển Chữ ký số cung cấp chức quan trọng như: tính xác thực (authentication), tính bí mật (confidentiatly), tính tồn vẹn liệu (data integrity), tính khơng thối thác (non-repudiation)  Quy trình tạo xác minh chữ ký số: Tạo chữ ký số Xác minh chữ ký số Message/Data Message/Data Hash function Hash function Message Digest Message Digest Sinh chữ ký số Private Key Public Key Xác minh chữ ký số Hợp lệ hay không hợp lệ Chữ ký Hình 1- Những xử lý mơ hình chữ ký số Digital Signature II Kiến thức tảng: II.1 Thuật ngữ:  Message/Data: thông điệp liệu ban đầu chưa qua trình xử lý (plaint-text)  CA (Certification Authority): thực thể hạ tầng khóa cơng khai (PKI) đảm nhiệm việc cấp phát chứng địi hỏi từ sách PKI  PKI (Public Key Infrastructure): cấu tổ chức để cấp phát, trì, loại bỏ chứng khóa cơng cộng  Hash function: hàm ánh xạ từ chuối bit có kích thước tùy ý sang chuỗi có kích thước cố định  Message Digest: kết tính tốn hàm băm thông điệp nguồn (cũng hiểu hash value)  Key pair: cặp public key private key  Private key: khóa thuật tốn mã hóa bất đối xứng Trong chữ ký số khóa có mối quan hệ tốn học với public key không công khai Private key thường dùng để tạo chữ ký số xác minh public key tương ứng  Public key: khóa thuật tốn mã hóa bất đối xứng Khóa có quan hệ tốn học với private key cơng khai Đối với chữ ký số, public key dùng để xác minh chữ ký ký với private key tương ứng II.2 Mã hóa đối xứng (Symmetric Cryptography): Người gởi người nhận dùng chung khóa để mã hóa giải mã liệu Trước mã hóa liệu gởi mạng người gởi người nhận phải thống khóa thuật tốn mã Một số thuật tốn ứng dụng mã hóa bí mật: DES, 3DES, RC2, RC4  Ưu điểm:  Có thể hỗ trợ phần cứng, đạt hiệu cao Khóa tương đối ngắn  Có thể kết hợp để tạo thuật tốn mã hóa mạnh  Nhược điểm:  Trong q trình truyền thơng hai người cần phải giữ bí mật cho hai phía  Trong mạng lớn số lượng khóa cần quản lý nhiều, để quản lý hiệu cần có bên thứ ba tin cậy  Khóa bí mật cần trao đổi thường xun II.3 Mã hóa bất đối xứng (Asymmetric Cryptography) Digital Signature Hay cịn gọi phương pháp mã hóa cơng khai giải vấn đề phải trao đổi khóa bí mật mã hóa đối xứng Với phương pháp mã hóa cơng khai thực thể trì khóa public key private key Public key cơng khai mạng Private Key giữ kín Hai khóa có quan hệ với tính trái ngược nhau, khóa dùng cho việc mã hóa, cịn khóa dùng cho việc giải mã  Ưu điểm:  Chỉ có Private key cần giữ bí mật với điều kiện việc cơng khai Public key cần đảm bảo  Cặp khóa riêng cơng khai sử dụng thời gian dài  Nhiều mơ hình khóa cơng cộng phát triển hình thành nên kỹ thuật chữ ký số hiệu  Trong mạng lớn số lượng khóa quan tâm nhiều so với việc dùng khóa đối xứng  Khuyết điểm:  Tốc độ cho phương thức mã hóa cơng khai chậm nhiều so với mơ hình mã hóa đối xứng  Kích thước khóa lớn nhiều so với mã hóa đối xứng  Khơng có mơ hình mã hóa cơng khai chứng minh an tồn Phần lớn mơ hình mã hóa có an toàn dựa giả thuyết của tập nhỏ vấn đề lý thuyết số học  Khơng có bề dày lâu đời hệ mã hóa đối xứng, tìm vào năm 1970 II.4 Hàm băm (hash function): Hash function ánh xạ thơng điệp có chiều dài thành giá trị băm có kích thước cố định (message digest) Dùng với mục đích xác thực thơng điệp II.4.1 Điều kiện xác thực Trong trình truyền liệu qua mạng có số loại hình cơng sau:  Mạo danh (Masquerade): gởi thông điệp vào mạng từ nguồn giả Đây việc tạo thông điệp từ thực thể mà xác thực  Chỉnh sửa nội dung (content-modification): việc thay đổi nội dung thơng điệp thêm, sửa, xóa  Chỉnh sửa thứ tự (Sequence-modification): chỉnh sửa thứ tự thông điệp gởi thực thể việc thêm, sửa, xếp lại  Chỉnh sửa thời gian (timing-modification): làm trì hỗn hay phát lại thơng điệp  Nguồn từ chối (Source Repudiation): nguồn từ chối truyền thơng điệp Digital Signature  Đích từ chối (Destination Repudiatin): đích từ chối nhận thơng điệp Nói chung, việc xác thực thông điệp thủ tục để xác minh tính thơng điệp nhận từ nguồn hợp lệ không bị thay đổi Xác thực thông điệp xác minh thứ tự tính hơp thời thông điệp Chữ ký số kỹ thuật xác thực có khả chống lại tính chối cãi nguồn II.4.2 Hash function Hàm băm chiều loại mã xác thực Chấp nhận đầu vào thơng điệp có chiều dài đầu mã băm có chiều dài cố định, gọi hash code H(M) Không giống với MAC (Message Authentication Code), hàm băm khơng dùng khóa để tính mã xác thực, thay vào hàm thao tác thơng điệp II.4.3 Tính bảo mật hàm băm Đối với hệ mã hóa đồng bất đồng bộ, ta chia cách cơng vào hàm băm thành hai loại là: Brute force phân tích (cryptanalysis) II.4.3.1 Brute force attack: Độ mạnh hàm băm phụ thuộc vào độ dài hash code sinh thuật toán Một vài thuộc tính hàm băm:  One way (một chiều): cho giá trị h, khơng thể tìm x để H(x)=h Cần thử 2n lần  Đụng độ yếu (weak conllistion restriction): cho trước khối x, khơng thể tìm khối y ≠ x cho H(y) = H(x) Cần thử 2n lần  Đụng độ mạnh (strong collistion restriction): tìm thấy cặp (x,y) cho H(x)=H(y) Cần thử 2n/2 lần Muốn chống lại đụng độ mạnh (điều xem mục đích bảo mật hàm băm), giá trị 2n/2 dùng để xác định độ mạnh hàm băm chống lại brute force attack II.4.3.2 Cryptanalysis Ngồi cịn cách cơng tìm lỗ hổng giải thuật để công MAC hay hàm băm, việc công không cần phải vét cạn số lần thử cách phân tích nhỏ với brute force II.5 Giải thuật hàm băm bảo mật SHA  Hàm băm (hash function) hiệu q trình xác thực thơng điệp, xem fingerprint cho thông tin Một giá trị h sinh hàm H có dạng: h=H(M)  Trong M thơng điệp có chiều dài tùy ý, h gọi giá trị băm có chiều dài cố định Giá trị băm đính kèm với thông điệp nguồn, bên nhận xác thực Digital Signature thơng điệp thơng qua việc tính tốn lại giá trị băm Do thân hàm băm tự khơng bí mật nên cần có biện pháp bảo vệ giá trị băm Thuật tốn SHA: có thuật toán: SHA-1, SHA-256, SHA-384 SHA-512 Đây hàm băm chiều (one-way hash function) xử lý thông điệp để tạo Message Digest Những giải thuật đảm bảo tính tồn vẹn thơng điệp: thay đổi thơng điệp gốc có khả phát thay đổi Điều có ý nghĩa vấn đề tạo xác minh chữ ký số Mỗi thuật toán SHA trải qua q trình tiền xử lý tính tốn hash value Tiền xử lý bao gồm q trình: padding, chia thơng điệp sau thêm bit thành N blocks m-bits, khởi tạo số giá trị cho việc tính giá trị băm (W, H[i], K) Tiếp q trình tính tốn tìm giá trị băm thơng qua quy trình lặp Sự so sánh giải thuật SHA: Hình 2- Các thuộc tính SHA Chi tiết giải thuật SHA-1: ( Các giải thuật SHA-2 xem phần phụ lục) Block size: 512 bits=64bytes Word size=32 bits Message Digest=160bits Message size < 264  Thêm bit (padding) Giả sử chiều dài thông điệp M ℓ bits Thêm bit “1” vào sau chuỗi, tiếp k bit (k≥0) cho k nhỏ thỏa điều kiện sau: ℓ+1+k ≡ 448 mod 512 Phần lại 64 bits để mô tả chiều dài thực thông điệp M ℓ bits Ví dụ: giả sử M=”abc” Vậy ℓ=24, M thêm bit 448-ℓ-1=448-24-1=423 bits Sau thêm 64bits cịn lại mơ tả chiều dài chuỗi Digital Signature Điều tương tự với thông điệp có kích thước nhiều khối, sau thêm chiều dài thông điệp chia hết cho 512  Chia nhỏ thông điệp thêm bit: Sau thông điệp thêm bit cần chia thành khối 512 bits (độ dài tùy theo giải thuật SHA)  Khởi tạo giá trị H: Vì đơn vị xử lý SHA-1 32 bits nên: H0(0) = 67452301 H1(0) = efcdab89 H2(0) = 98badcfe H3(0) = 10325476 H4(0) = c3d2e1f0  Tính tốn SHA-1 Sau chia thơng điệp padding thành N block 512-bits For i=1 to N { Tính Wt block Khởi tạo biến a, b, c , d, e Digital Signature 10  Khởi tạo H(0) cho SHA-384 Gồm words, word 64 bits  Khởi tạo H(0) cho SHA-512 Gồm words, word 64 bits sau:  Tính tốn SHA-512 For i=0 to N Chuẩn bị Wt Khởi tạo biến a,b,c,d,f,e,g,h Digital Signature 23 For t=0 to 79 { } Tính H(i) Sau tính tốn N lần, ta thu H(N) message digest  Tính tốn SHA-384 Việc tính tốn SHA-384 hồn tồn giống với SHA-512 ngoại trừ yếu tố: a) Khởi tạo hàm H b) Kết Message Digest lấy 384 bit cao H(N) Digital Signature 24 IV.3 Kiểm tra số nguyên tố: Giải thuật M.O.Rabin tìm dựa phần ý tưởng Gary L Miller Theo giải thuật lặp lại n lần, xác suất sinh số nguyên tố sai nhỏ 1/4n Vì xác suất chọn n>=50 chấp nhận Chi tiết bước thực sau: B1: Đặt i=1 chọn n>=50 B2: Xét w số nguyên cần kiểm tra xem có phải số ngun tố hay khơng w=1+2am, m số lẻ 2n lũy thừa lớn chia cho w-1 B3: Sinh số nguyên b ngẫu nhiên cho 1

Ngày đăng: 27/06/2014, 14:21

Từ khóa liên quan

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

Tài liệu liên quan