BÀI TẬP LỚN MÔN HỌC MẬT MÃ VÀ AN TOÀN DỮ LIỆU TRÌNH BÀY VẤN ĐỀ XÁC THỰC DỮ LIỆU BẰNG CHỮ KÝ SỐ

8 972 8
BÀI TẬP LỚN MÔN HỌC MẬT MÃ VÀ AN TOÀN DỮ LIỆU TRÌNH BÀY VẤN ĐỀ XÁC THỰC DỮ LIỆU BẰNG CHỮ KÝ SỐ

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

Thông tin tài liệu

BÀI TẬP LỚN MÔN HỌC MẬT MÃ VÀ AN TOÀN DỮ LIỆU TRÌNH BÀY VẤN ĐỀ XÁC THỰC DỮ LIỆU BẰNG CHỮ KÝ SỐChữ ký số là thông tin đi kèm dữ liệu nhằm mục đích xác định người chủ của dữ liệu đó. Chữ ký số tương đương chữ ký tay, có các thuộc tính định danh và xác thực đúng nguồn gốc, đảm bảo được tính toàn vẹn của dữ liệu nhận được. Chữ ký số dựa trên công nghệ mã khóa công khai có 2 khóa: khóa bí mật dùng để tạo chữ ký số và khóa công khai để xác thực người tạo ra chữ ký số. Đặc biệt, không thể sử dụng khóa công khai để tìm ra khóa bí mật.

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc BÀI TẬP LỚN MÔN HỌC: MẬT MÃ VÀ AN TOÀN DỮ LIỆU ĐỀ TÀI: TRÌNH BÀY VẤN ĐỀ XÁC THỰC DỮ LIỆU BẰNG CHỮ KÝ SỐ Họ tên: Vũ Cao Nam Lớp: Cao học K19 Mã học viên: 12025023 Giảng viên hướng dẫn: PGS.TS. Trịnh Nhật Tiến 1 Hà Nội, 2014 Mục lục Mục lục 2 1.Chữ ký số 3 2.Chữ ký điện tử 3 3.Thực hiện chữ ký số với khóa công khai 3 4.Dịch vụ chứng thực chữ ký số 5 4.1 USB Token & HSM 5 4.1.1 USB token 5 4.1.2 HSM (Hardware Security Module) 5 5.Các ưu điểm của chữ ký số 5 5.1 Khả năng xác định nguồn gốc 5 5.2 Tính toàn vẹn 6 5.3 Tính không thể phủ nhận 6 6.Chương trình demo 6 7.Tham khảo 8 2 1. Chữ ký số Chữ ký số là một dạng của chữ ký điện tử. Chữ ký số là thông tin đi kèm dữ liệu nhằm mục đích xác định người chủ của dữ liệu đó. Chữ ký số tương đương chữ ký tay, có các thuộc tính định danh và xác thực đúng nguồn gốc, đảm bảo được tính toàn vẹn của dữ liệu nhận được. Chữ ký số dựa trên công nghệ mã khóa công khai có 2 khóa: khóa bí mật dùng để tạo chữ ký số và khóa công khai để xác thực người tạo ra chữ ký số. Đặc biệt, không thể sử dụng khóa công khai để tìm ra khóa bí mật. • Khóa riêng (Private-key) Khóa riêng hay được gọi là khóa bí mật (Private-key) là một khóa thuộc cặp khóa mã hóa không đối xứng, khóa này được tạo ra từ thiết bị tạo khóa (USB token, HSM, ) do nhà cung cấp dịch vụ chứng thực số cấp, khóa này sẽ được người dùng mã hóa dữ liệu để tạo ra chữ ký số, khóa bí mật chỉ có duy nhất người dùng để tạo chữ ký số biết. • Khóa công khai (public-key) Khóa công khai (public-key) là một khóa thuộc cặp khóa mã hóa không đối xứng, được tạo ra từ thiết bị tạo khóa (USB token, HSM, ) do nhà cung cấp dịch vụ chứng thực số cấp. Khóa này sẽ được người ký số tạo rà và công khai cho người nhận, người nhận dùng khóa này để giải mã chữ ký số và kiểm tra chữ ký số xem có đúng người cần gửi gửi cho mình không (xác thực chữ ký số). 2. Chữ ký điện tử Con người đã sử dụng các hợp đồng với chữ ký dưới dạng điện tử từ hơn 100 năm nay với việc sử dụng mã Morse và điện tín. Tuy nhiên, chỉ với những phát triển của khoa học kỹ thuật gần đây thì chữ ký điện tử mới đi vào cuộc sống một cách rộng rãi. Vào thập kỷ 1980, các công ty và một số cá nhân bắt đầu sử dụng máy fax để truyền đi các tài liệu quan trọng. Mặc dù chữ ký trên các tài liệu này vẫn thể hiện trên giấy, nhưng quá trình truyền và nhận chúng hoàn toàn dựa trên tín hiệu điện tử và được coi là chữ ký điện tử. Hiện nay, theo quan niệm thông dụng trong giao dịch quốc tế, chữ ký điện tử có thể bao hàm các cam kết gửi bằng email, nhập các số định dạng cá nhân (PIN) vào các máy ATM (của Vietcombank chẳng hạn) để rút tiền, chấp nhận các điều khoản người dùng (EULA) khi cài đặt phần mềm máy tính (như phần mềm Office của Microsoft chẳng hạn), ký các hợp đồng điện tử online, 3. Thực hiện chữ ký số với khóa công khai Chữ ký số khóa công khai dựa trên nền tảng mật mã hóa khóa công khai. Để có thể trao đổi thông tin trong môi trường này, mỗi người sử có một cặp khóa: một công khai và một bí mật. Khóa công khai được công bố rộng rãi còn khóa bí mật phải được người sử dụng giữ kín. Không thể tìm được khóa bí mật nếu chỉ biết khóa công khai. Việc tạo và xác thực chữ ký số theo nền tảng mật mã hóa khóa công khai được mô tả trong sơ đồ sau: 3 Sơ đồ tạo và kiểm tra xác thực chữ ký số Quá trình tạo và kiểm tra chữ ký số sử dụng 3 thuật toán: - Thuật toán tạo khóa bí mật và công khai. - Thuật toán tạo chữ ký số bằng khóa bí mật. - Thuật toán kiểm tra chữ ký số bằng khóa công khai. Xét ví dụ sau: Giả sử Alice muốn gửi một văn bản cho Bob và muốn Bob biết văn bản đó thực sự do chính Alice gửi. Khi đó, Alice gửi cho Bob một văn bản điện tử kèm với chữ ký số. Chữ ký này được tạo ra với khóa bí mật của Alice. Khi nhận được bản tin, Bob kiểm tra sự thống nhất giữa văn bản và chữ ký bằng thuật toán kiểm tra sử dụng khóa công khai của Alice. Bản chất của thuật toán tạo chữ ký đảm bảo rằng nếu chỉ cho trước văn bản, rất khó (gần như không thể) tạo ra được chữ ký số của Alice nếu không biết khóa bí mật của Alice. Nếu phép thử cho kết quả đúng thì Bob có thể tin tưởng rằng bản tin thực sự do Alice gửi. Thông thường, để tránh mất thời gian, Alice không mật mã hóa toàn bộ văn bản bằng khóa bí mật của mình, mà chỉ thực hiện với mã băm, hay còn gọi là giá trị băm, đại diện và đặc trưng cho văn bản đó. Điều này khiến việc ký số của Alice trở nên đơn giản hơn và chữ ký số trở nên ngắn hơn. Xác suất xẩy ra trường hợp 2 văn bản khác nhau lại cho ra cùng một giá trị băm là cực kỳ thấp. 4 4. Dịch vụ chứng thực chữ ký số Dịch vụ chứng thực chữ ký số là một loại hình dịch vụ chứng thực chữ ký điện tử do tổ chức cung cấp dịch vụ chứng thực chữ ký số cấp. Dịch vụ chứng thực chữ ký số bao gồm : • Tạo cặp khóa ( khóa công khai và khóa bí mật) cho thuê bao. • Cấp, gia hạn, tạm dừng, phục hồi chứng thư số của thuê bao. • Duy trì trực tuyến cơ sở dữ liệu về chứng thư số. 4.1 USB Token & HSM USB token và HSM là những thiết bị phần cứng dùng để tạo cặp khóa bí mật, công khai và lưu trữ khóa bí mật, các thiết bị này sẽ được nhà cung cấp dịch vụ chữ ký số giao cho khách hàng để khách hàng có thể tạo cặp khóa và ký lên dữ liệu cần ký. Tùy theo mức độ và yêu cầu sử dụng khách hàng có thể lựa chọn sử dụng một trong các loại phần cứng trên mà nhà cung cấp dịch vụ chữ ký số cung cấp để bạn có thể ký số. 4.1.1 USB token Đặc điểm của USB token: • Là thiết bị phần cứng có thể sinh cặp khóa (khóa bí mật và khóa công khai) và lưu giữ khóa bí mật cũng như chứng thư số của thuê bao. • Có khả năng lưu trữ lớn, tốc độ xử lý cao (32 bit). • Thích hợp cho các ứng dụng chính phủ điện tử, e-tax, e- customs, internet banking, • Thiết bị phù hợp với người dùng cá nhân và các cơ quan sử dụng ký với lưu lượng vừa phải. 4.1.2 HSM (Hardware Security Module) • Là thiết bị phần cứng có thể sinh cặp khóa (khóa bí mật và khóa công khai) và bảo vệ khóa bí mật đó, được giao cho khách hàng để thực hiện ký số. • Là module bảo mật phần cứng duy nhất đạt chuẩn FIPS140-2 mức 4 • Có khả năng thực hiện 1200 giao dịch trên giây. • Hỗ trợ khả năng cân bằng tải, tối đa lên tới 16 thiết bị. • Đã được sử dụng cho các hệ thống chính phủ của Châu Âu. • Thiết bị phù hợp với các tổ chức, doanh nghiệp cần ký nhiều và nhanh (có thể ký tự động). 5. Các ưu điểm của chữ ký số 5.1 Khả năng xác định nguồn gốc Các hệ thống mật mã hóa khóa công khai cho phép mật mã hóa văn bản với khóa bí mật mà chỉ có người chủ của khóa biết. Để sử dụng chữ ký số thì văn bản cần phải được mã hóa bằng hàm băm (văn bản được "băm" ra thành chuỗi, thường có độ dài cố định và ngắn hơn văn bản) sau đó dùng khóa bí mật của người chủ khóa để mã hóa, khi đó ta được chữ ký số. Khi cần kiểm tra, bên 5 nhận giải mã (với khóa công khai) để lấy lại chuỗi gốc (được sinh ra qua hàm băm ban đầu) và kiểm tra với hàm băm của văn bản nhận được. Nếu 2 giá trị (chuỗi) này khớp nhau thì bên nhận có thể tin tưởng rằng văn bản xuất phát từ người sở hữu khóa bí mật. Tất nhiên là chúng ta không thể đảm bảo 100% là văn bản không bị giả mạo vì hệ thống vẫn có thể bị phá vỡ. Vấn đề nhận thực đặc biệt quan trọng đối với các giao dịch tài chính. Chẳng hạn một chi nhánh ngân hàng gửi một gói tin về trung tâm dưới dạng (a,b), trong đó a là số tài khoản và b là số tiền chuyển vào tài khoản đó. Một kẻ lừa đảo có thể gửi một số tiền nào đó để lấy nội dung gói tin và truyền lại gói tin thu được nhiều lần để thu lợi (tấn công truyền lại gói tin). 5.2 Tính toàn vẹn Cả hai bên tham gia vào quá trình thông tin đều có thể tin tưởng là văn bản không bị sửa đổi trong khi truyền vì nếu văn bản bị thay đổi thì hàm băm cũng sẽ thay đổi và lập tức bị phát hiện. Quá trình mã hóa sẽ ẩn nội dung của gói tin đối với bên thứ 3 nhưng không ngăn cản được việc thay đổi nội dung của nó. Một ví dụ cho trường hợp này là tấn công đồng hình (homomorphism attack): tiếp tục ví dụ như ở trên, một kẻ lừa đảo gửi 1.000.000 đồng vào tài khoản của a, chặn gói tin (a,b) mà chi nhánh gửi về trung tâm rồi gửi gói tin (a,b3) thay thế để lập tức trở thành triệu phú!Nhưng đó là vấn đề bảo mật của chi nhánh đối với trung tâm ngân hàng không hẳn liên quan đến tính toàn vẹn của thông tin gửi từ người gửi tới chi nhánh, bởi thông tin đã được băm và mã hóa để gửi đến đúng đích của nó tức chi nhánh, vấn đề còn lại vấn đề bảo mật của chi nhánh tới trung tâm của nó 5.3 Tính không thể phủ nhận Trong giao dịch, một bên có thể từ chối nhận một văn bản nào đó là do mình gửi. Để ngăn ngừa khả năng này, bên nhận có thể yêu cầu bên gửi phải gửi kèm chữ ký số với văn bản. Khi có tranh chấp, bên nhận sẽ dùng chữ ký này như một chứng cứ để bên thứ ba giải quyết. Tuy nhiên, khóa bí mật vẫn có thể bị lộ và tính không thể phủ nhận cũng không thể đạt được hoàn toàn. 6. Chương trình demo Chương trình demo có một chức năng chính là tạo chữ ký số và xác thực dữ liệu hợp lệ. Chương trình được viết bởi ngôn ngữ C#. Giao diện của chương trình: 6 Chương trình sử dụng thuật toán SHA1 để tạo ra đại diện tài liệu với độ dài 160 bít và sử dụng thuật toán RSA để ký lên đại diện của tài liệu. 7 7. Tham khảo 1) http://vi.wikipedia.org/wiki/Ch%E1%BB%AF_k%C3%BD_s%E1%BB%91 2) http://www.codeproject.com/Articles/18599/Digital-Signatures-and-PDF-Documents 3) http://williamstallings.com/Extras/Security-Notes/lectures/authent.html#fn3 8 . CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc BÀI TẬP LỚN MÔN HỌC: MẬT MÃ VÀ AN TOÀN DỮ LIỆU ĐỀ TÀI: TRÌNH BÀY VẤN ĐỀ XÁC THỰC DỮ LIỆU BẰNG CHỮ KÝ SỐ Họ tên: Vũ Cao Nam Lớp: Cao học K19 Mã học. điện tử. Chữ ký số là thông tin đi kèm dữ liệu nhằm mục đích xác định người chủ của dữ liệu đó. Chữ ký số tương đương chữ ký tay, có các thuộc tính định danh và xác thực đúng nguồn gốc, đảm bảo được. điểm của chữ ký số 5 5.1 Khả năng xác định nguồn gốc 5 5.2 Tính toàn vẹn 6 5.3 Tính không thể phủ nhận 6 6.Chương trình demo 6 7. Tham khảo 8 2 1. Chữ ký số Chữ ký số là một dạng của chữ ký điện

Ngày đăng: 27/10/2014, 10:46

Từ khóa liên quan

Mục lục

  • Mục lục

  • 1. Chữ ký số

  • 2. Chữ ký điện tử

  • 3. Thực hiện chữ ký số với khóa công khai

  • 4. Dịch vụ chứng thực chữ ký số

    • 4.1 USB Token & HSM

      • 4.1.1 USB token

      • 4.1.2 HSM (Hardware Security Module)

      • 5. Các ưu điểm của chữ ký số

        • 5.1 Khả năng xác định nguồn gốc

        • 5.2 Tính toàn vẹn

        • 5.3 Tính không thể phủ nhận

        • 6. Chương trình demo

        • 7. Tham khảo

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

Tài liệu liên quan