đặt vấn đề của rất nhiều đơn vị trên thế giới là phát triển một thành phần nào đó trong bộ ứng dụng của chúng tôi. Các vấn đề về kỹ thuật công nghệ Về kỹ thuật công nghệ, có thể nói nền tảng chữ ký số trên các thiết bị di động cũng đã đƣợc xây dựng trên các nền tảng chính: - Các nền tảng kỹ thuật và công nghệ để tích hợp chíp xử lý chữ ký số trên Sim của thiết bị di động. - Các nền tảng kỹ thuật và công nghệ để triển khai một thiết bị lƣu trữ và xử lý chữ ký số và thực hiện kết nối vào thiết bị di động qua các kênh đầu cắm Audio, qua kênh Blutooth (LUAN.tay TIEU LUAN MOI download : skknchat@gmail.tay 9 - Một số nền tảng sử dụng thuần thiết bị chính là Token, và ứng dụng phần mềm lƣu trữ và quản lý chữ ký số đƣợc cài đạt trên các thiết bị. Về chuẩn, hiện tại các chuẩn đối với các thiết bị công nghệ là thiết bị phần cứng có thể nó nó tuân theo các chuẩn công nghiệp sẵn có của các thiết bị phần cứng và phần mềm chuẩn chữ ký số p nhƣ PKCS#11, PKCS#1, PKCS#15.
Với thiết bị mobile khi giao tiếp một số chuẩn cũng cần phải kiểm soát đƣợc tuân theo nhƣ chuẩn giao tiếp của thiết bị tƣơng ứng nhƣ chuẩn Audio, chuẩn Blutooth. Về cơ bản các chuẩn cũng đƣợc hiệp hội các nhà viễn thông toàn cầu họp và chấp nhận để tạo thành một chuẩn chung để phục vụ trong mọi giao tiếp viễn thông trên toàn cầu.tay TIEU LUAN MOI download : skknchat@gmail.tay 10 Chương 2. NGHIÊN CỨU CƠ SỞ LÝ THUYẾT VÀ MỘT SỐTIÊU CHUẨN VỀ CHỮ KÝ SỐ 2. Khái niệm“Chữ ký số” 2.
Giới thiệu Để chứng thực nguồn gốc hay hiệu lực của một tài liệu (ví dụ: đơn xin học, giấy báo nhập học,. ), lâu nay ngƣời ta dùng chữ ký “tay”, ghi vào phía dƣới của mỗi tài liệu. Nhƣ vậy ngƣời ký phải trực tiếp “ký tay“ vào tài liệu. Ngày nay các tài liệu đƣợc số hóa, ngƣời ta cũng có nhu cầu chứng thực nguồn gốc hay hiệu lực của các tài liệu này.
Rõ ràng không thể “ký tay“ vào tài liệu, vì chúng không đƣợc in ấn trên giấy. Tài liệu “số” ( hay tài liệu “điện tử”) là một xâu các bit (0 hay 1), xâu bít có thể rất dài (nếu in trên giấy có thể hàng nghìn trang). “Chữ ký” để chứng thực một xâu bít tài liệu cũng không thể là một xâu bit nhỏ đặt phía dƣới xâu bit tài liệu. Một “chữ ký” nhƣ vậy chắc chắn sẽ bị kẻ gian sao chép để đặt dƣới một tài liệu khác bất hợp pháp.
Những năm 80 của thế kỷ 20, các nhà khoa học đã phát minh ra “chữ ký số” để chứng thực một “tài liệu số”. Đó chính là “bản mã” của xâu bít tài liệu. Ngƣời ta tạo ra “chữ ký số” (chữ ký điện tử) trên “tài liệu số” giống nhƣ tạo ra “bản mã” của tài liệu với “khóa lập mã”. Nhƣ vậy “ký số” trên “tài liệu số” là “ký” trên từng bit tài liệu.
Kẻ gian khó thể giả mạo “chữ ký số” nếu nó không biết “khóa lập mã”. Để kiểm tra một “chữ ký số” thuộc về một “tài liệu số”, ngƣời ta giải mã “chữ ký số” bằng “khóa giải mã”, và so sánh với tài liệu gốc. Ngoài ý nghĩa để chứng thực nguồn gốc hay hiệu lực của các tài liệu số hóa, “chữ ký số” còn dùng để kiểm tra tính toàn vẹn của tài liệu gốc. Mặt mạnh của “chữ ký số” hơn “chữ ký tay” còn là ở chỗ ngƣời ta có thể “ký” vào tài liệu từ rất xa (trên mạng công khai).
Hơn thế nữa, có thể “ký” bằng các thiết bị cầm tay (VD điện thoại di động) tại khắp mọi nơi (Ubikytous) và di động (Mobile), miễn là kết nối đƣợc vào mạng. Đỡ tốn bao thời gian, sức lực, chi phí.tay TIEU LUAN MOI download : skknchat@gmail.tay 11 “Ký số” thực hiện trên từng bit tài liệu, nên độ dài của “chữ ký số” ít nhất cũng bằng độ dài của tài liệu. Do đó thay vì ký trên tài liệu dài, ngƣời ta thƣờng dùng “hàm băm” để tạo “đại diện” cho tài liệu, sau đó mới “Ký số” lên “đại diện” này. Sơ đồ chữ ký số Sơ đồ chữ ký là bộ năm (P, A, K, S, V), trong đó: P là tập hữu hạn các văn bản có thể.
A là tập hữu hạn các chữ ký có thể. K là tập hữu hạn các khoá có thể. S là tập các thuật toán ký. V là tập các thuật toán kiểm thử.
Với mỗi khóa kK, có thuật toán ký Sig kS, Sigk: P A, có thuật toán kiểm tra chữ ký Ver kV, Ver k: PAđúng, sai, thoả mãn điều kiện sau với mọi xP, yA: Đúng, nếu y = Sig k(x) Ver k (x, y) = Sai, nếu ySig k(x) Chú ý Ngƣời ta thƣờng dùng hệ mã hóa khóa công khai để lập “Sơ đồ chữ ký số”. Ở đây khóa bí mật a dùng làm khóa “ký”, khóa công khai b dùng làm khóa kiểm tra “chữ ký”. Ngƣợc lại với việc mã hóa, dùng khóa công khai b để lập mã., dùng khóa bí mật a để giải mã. Điều này là hoàn toàn tự nhiên, vì “ký” cần giữ bí mật nên phải dùng khóa bí mật a để “ký”.
Còn “chữ ký” là công khai cho mọi ngƣời biết, nên họ dùng khóa công khai b để kiểm tra.tay TIEU LUAN MOI download : skknchat@gmail. Phân loại “Chữ ký số”. Có nhiều loại chữ ký tùy theo cách phân loại, sau đây xin giới thiệu một số cách. Cách 1: Phân loại chữ ký theo khả năng khôi phục thông điệp gốc.
Chữ ký có thể khôi phục thông điệp gốc: Là loại chữ ký, trong đó ngƣời nhận có thể khôi phục lại đƣợc thông điệp gốc, đã đƣợc “ký” bởi “chữ ký” này. Ví dụ: Chữ ký RSA là chữ ký khôi phục thông điệp, sẽ trình bày trong mục sau. Chữ ký không thể khôi phục thông điệp gốc: Là loại chữ ký, trong đó ngƣời nhận không thể khôi phục lại đƣợc thông điệp gốc, đã đƣợc “ký” bởi “chữ ký” này. Ví dụ: Chữ ký Elgamal là chữ ký không thể khôi phục, sẽ trình bày trong mục sau.
Cách 2: Phân loại chữ ký theo mức an toàn. Chữ ký “không thể phủ nhận”: Để tránh việc chối bỏ chữ ký hay nhân bản chữ ký để sử dụng nhiều lần, ngƣời gửi chữ ký cũng tham gia trực tiếp vào việc kiểm thử chữ ký. Điều đó đƣợc thực hiện bằng một giao thức kiểm thử, dƣới dạng một giao thức mời hỏi và trả lời. Ví dụ: Chữ ký không phủ định (Chaum - van Antverpen), trình bày trong mục sau.
Chữ ký “một lần”: Để bảo đảm an toàn, “Khóa ký” chỉ dùng 1 lần (one- time) trên 1 tài liệu. Ví dụ: Chữ ký một lần Lamport. Chữ ký Fail - Stop (Van Heyst & Pedersen). Cách 3: Phân loại chữ ký theo ứng dụng đặc trƣng.
Chữ ký “mù nhóm” (Blind Group Signature). Chữ ký “mù bội” (Blind Multy Signature).tay TIEU LUAN MOI download : skknchat@gmail. Tạo cặp khóa (bí mật, công khai) (a, b): Chọn bí mật số nguyên tố lớn p, q, tính n = p * q, công khai n, đặt P = A = Zn Tính bí mật (n) = (p-1). Chọn khóa công khai b<(n),nguyên tố cung nhau với (n).
Khóa bí mật a là phần tử nghịch đảo của b theo mod (n): a*b1 (mod (n). Tập cặp khóa (bí mật, công khai) K = (a, b)/ a, b Zn , a*b 1 (mod (n)).Ký số: Chữ ký trên xP là y = Sig k (x) = xa (mod n), yA.Kiểm tra chữ ký: Verk(x, y) = đúng xyb (mod n). (R2) Chú ý - So sánh giữa sơ đồ chữ ký RSA và sơ đồ mã hóa RSA ta thấy có sự tƣơng ứng. - Việc ký chẳng qua là mã hoá, việc kiểm thử lại chính là việc giải mã: Việc “ký số” vào x tƣơng ứng với việc “mã hoá” tài liệu x.
Kiểm thử chữ ký chính là việc giải mã “chữ ký”, để kiểm tra xem tài liệu đã giải mã có đúng là tài liệu trƣớc khi ký không. Thuật toán và khóa kiểm thử “chữ ký” là công khai, ai cũng có thể kiểm thử chữ ký đƣợc. Ví dụChữ ký trên x=2 *Tạo cặp khóa (bí mật, công khai) (a, b): Chọn bí mật số nguyên tố p=3, q=5, tính n = p * q = 3*5 = 15, công khai n. Đặt P = A = Zn = Zn.
Chọn khóa công khai b = 3<(n),nguyên tố với (n) = 8. Khóa bí mật a = 3, là phần tử nghịch đảo của b theo mod (n): a*b1 (mod (n). * Ký số: Chữ ký trên x = 2P là (LUAN.tay TIEU LUAN MOI download : skknchat@gmail. * Kiểm tra chữ ký: Verk(x, y) = đúng xyb (mod n) 283 (mod 15).
Độ an toàn của chữ ký RSA * Bài toán căn bản bảo đảm độ an toàn của Sơ đồ chữ ký RSA: Bài toán tách số nguyên n thành tích của 2 số nguyên tố: n = p*q Vì nếu giải đƣợc bài toán này thì có thể tính đƣợc khóa mật a từ khóa công khai b và phần tử công khai n. Ngƣời gửi G gửi tài liệu x cùng chữ ký y đến ngƣời nhận N, có 2 cách xử lý: a). Ký trước, Mã hóa sau: G ký trƣớc vào x bằng chữ ký y = SigG(x), sau đó mã hoá x và y nhận đƣợc z = eG(x, y). Nhận đƣợc z, N giải mã z để đƣợc x, y.
Tiếp theo kiểm tra chữ ký VerN(x, y) = true ? b). Mã hóa trước, Ký sau: G mã hoá trƣớcx bằng u = eG (x), sau đó ký vào u bằng chữ ký v = SigG(u). Nhận đƣợc (u, v), N giải mã u đƣợc x. Tiếp theo kiểm tra chữ ký VerN(u, v) = true ? 2).
Giả sử H lấy trộm đƣợc thông tin trên đƣờng truyền từ G đến N. + Trong trƣờng hợp a, H lấy đƣợc z. Trong trƣờng hợp b, H lấy đƣợc (u, v). + Để tấn công x, trong cả hai trƣờng hợp, H đều phải giải mã thông tin lấy đƣợc.
+ Để tấn công vào chữ ký, thay bằng chữ ký (giả mạo), thì xảy ra điều gì ? - Trƣờng hợp a, để tấn công chữ ký y, H phải giải mã z, mới nhận đƣợc y. - Trƣờng hợp b, để tấn công chữ ký v, H đã sẵn có v, H chỉ việc thay vbằng v’.tay TIEU LUAN MOI download : skknchat@gmail.tay 15 H thay chữ ký v trên u, bằng chữ ký của H là v’ = SigH(u), gửi (u, v’) đến N. Khi nhận đƣợc v’, N kiểm thử thấy sai, gửi phản hồi lại G. G có thể chứng minh chữ ký đó là giả mạo.
G gửi chữ ký đúng v cho N, nhƣng quá trình truyền tin sẽ bị chậm lại.