• Không có kết quả nào được tìm thấy

Chương 2 . TẤN CÔNG CHỮ KÝ SỐ

Protected

Academic year: 2022

Chia sẻ "Chương 2 . TẤN CÔNG CHỮ KÝ SỐ "

Copied!
54
0
0

Loading.... (view fulltext now)

Văn bản

Ngày nay, nhu cầu đó đã được đáp ứng với sự ra đời của công nghệ mã hóa và chữ ký số. Khi nói đến chữ ký điện tử, chúng tôi luôn đặt vấn đề bảo mật lên hàng đầu. Trên thực tế, các cuộc tấn công bằng chữ ký điện tử rất đa dạng.

MỘT SỐ KHÁI NIỆM CƠ BẢN

CÁC KHÁI NIỆM TRONG TOÁN HỌC

  • Một số khái niệm trong số học
    • Số nguyên tố
    • Ước số và bội số
    • Ước số chung và bội số chung
    • Số nguyên tố cùng nhau
    • Khái niệm Đồng dư
  • Một số khái niệm trong đại số
    • Nhóm
    • Nhóm con của nhóm (G, *)
    • Nhóm Cyclic
    • Tập thặng dư thu gọn theo modulo
    • Phần tử nghịch đảo đối với phép nhân
  • Độ phức tạp của thuật toán
    • Khái niệm bài toán
    • Khái niệm thuật toán
    • Khái niệm Độ phức tạp của thuật toán
    • Khái niệm “dẫn về được”
    • Khái niệm khó tương đương
    • Lớp bài toán P, NP
    • Lớp bài toán NP-hard
    • Lớp bài toán NP-Complete
    • Hàm một phía và hàm cửa sập một phía

Một cách trực quan, thuật toán được hiểu là một dãy giới hạn các quy tắc (chỉ lệnh, lệnh) mô tả một quá trình tính toán, để từ dữ liệu cho trước (Input) ta thu được kết quả (Output) của bài toán. Đặt A là thuật toán và e là đầu vào của bài toán được mã hóa bằng cách nào đó. NP là một lớp các vấn đề có thể được giải quyết bằng thuật toán đa thức không xác định.

VẤN ĐỀ MÃ HÓA DỮ LIỆU

  • Khái niệm Mã hóa
  • Phân loại mã hóa
    • Hệ mã hóa khóa đối xứng
    • Hệ mã hóa khóa công khai

Các hệ thống mật mã khóa đối xứng có các khóa mã hóa và giải mã "giống nhau". Các hệ thống mật mã khóa đối xứng mã hóa và giải mã nhanh hơn các hệ thống mật mã khóa công khai. Mã hóa khóa công khai: Mã hóa và giải mã chậm hơn so với mã hóa khóa đối xứng.

VẤN ĐỀ CHỮ KÝ SỐ

  • Khái niệm “chữ ký số”
    • Giới thiệu “chữ ký số”
    • Sơ đồ “chữ ký số”
  • Phân loại “chữ ký số”
    • Phân loại chữ ký theo đặc trưng kiểm tra chữ ký
    • Phân loại chữ ký theo mức an toàn
    • Phân loại chữ ký theo ứng dụng đặc trưng

Người ta thường sử dụng mật mã khóa công khai để tạo "Sơ đồ chữ ký số". Ở đây, khóa riêng a được sử dụng làm khóa "ký", khóa chung b được sử dụng làm khóa xác minh. Còn "chữ ký" thì public cho mọi người biết nên họ dùng public key b để check.

Có nhiều loại chữ ký tùy thuộc vào cách phân loại, sau đây là một số cách. Là loại chữ ký trong đó người gửi chỉ cần gửi một "chữ ký", người nhận có thể khôi phục lại thông điệp đã được "chữ ký" này. Ví dụ: chữ ký RSA là chữ ký khôi phục thư, được thảo luận trong phần tiếp theo.

Một loại chữ ký mà người gửi chỉ cần gửi một "chữ ký" thì cũng phải chứa thông điệp đã được "ký" bằng "chữ ký" đó. Ví dụ, chữ ký Elgamal là một chữ ký gắn liền với một thông điệp, sẽ được giới thiệu trong phần tiếp theo. Để tránh trùng lặp chữ ký cho nhiều mục đích sử dụng, tốt nhất là để người gửi trực tiếp tham gia vào quá trình kiểm tra chữ ký.

Ví dụ: Chữ ký không âm (Chaum-van Antverpen), trình bày trong phần tiếp theo.

MỘT SỐ BÀI TOÁN QUAN TRỌNG TRONG MẬT MÃ

  • Bài toán kiểm tra số nguyên tố lớn
  • Bài toán phân tích thành thừa số nguyên tố
  • Bài toán tính logarit rời rạc theo modulo

Các tiêu chí trên là cơ sở để xây dựng các thuật toán xác suất Monte-Carlo tìm cách tính số nguyên tố (hoặc hợp số) của các số nguyên. Nếu thuật toán đưa ra câu trả lời "n là số nguyên tố", thì câu trả lời đó có thể sai với xác suất Monte-Carlo nghiêng về có nếu chúng ta coi nó như một thuật toán thử nghiệm phức hợp. Tương tự, các thuật toán Solovay-Strassen-Lehmann và Miler-Rabin theo xác suất kiểu Monte-Carlo được phát triển dựa trên tiêu chí 2 và 3 để kiểm tra các số nguyên tố (hoặc hợp số).

Gọi A là biến cố "n là số nguyên tố" và B là biến cố "thuật toán cho kết quả n là số nguyên tố". Tuy nhiên, các thuật toán như vậy chỉ cho phép chúng ta tính số nguyên tố của một số với một xác suất sai số nhất định, dù là rất nhỏ. Sau đó, chúng ta có thể sử dụng các thuật toán xác suất ở trên và sau đó tìm kiếm các thuật toán xác định để cố gắng lấy số nguyên tố với độ chính xác tuyệt đối.

Thuật toán này đã được một số nhà toán học thử nghiệm và đánh giá cao, được đánh giá là một thuật toán tốt có thể dùng để kiểm tra tính nguyên tố của số nguyên. Nếu thuật toán trả về "n là số nguyên tố" với một số xác suất, hãy sử dụng thuật toán xác định (chẳng hạn như thuật toán Agrawal-Kayal-Saxena) để đảm bảo chắc chắn 100% rằng số n là số nguyên tố. Thuật toán Polig-Hellman cho chúng ta một cách khá hiệu quả để tính logarit rời rạc, nhưng chỉ khi p-1 chỉ có thừa số nguyên tố nhỏ.

Nếu p-1 có ít nhất một thừa số nguyên tố lớn thì thuật toán khó hiệu quả, trong trường hợp đó bài toán tính logarit rời rạc của mod p vẫn là một bài toán khó.

TẤN CÔNG CHỮ KÝ SỐ

TẤN CÔNG CHỮ KÝ RSA

  • Chữ ký RSA
    • Sơ đồ chữ ký
    • Ví dụ
  • Các dạng tấn công vào chữ ký RSA
    • Tấn công dạng 1: Tìm cách xác định khóa bí mật
    • Tấn công dạng 2: Giả mạo chữ ký (không tính trực tiếp khóa bí mật)

Mã hóa văn bản M để gửi cho thuê bao thứ i, sử dụng thuật toán mã hóa RSA với khóa mã hóa ei: Y = Mei mod n. Người đăng ký thứ i có thể ký tài liệu M bằng cách tính chữ ký. Trường hợp 1: Một thành viên có thể sử dụng khóa công khai và khóa riêng của mình để tạo khóa riêng của người dùng khác. Vì ei và ej là các số nguyên tố cùng nhau nên các số nguyên r và s có thể tìm được bằng thuật toán Euclide thỏa mãn: rei sej 1.

Cuộc tấn công vừa đề cập là rất quan trọng vì nó cho thấy thông tin về cặp khóa mã hóa/giải mã cho phép tìm ra các thừa số của mô đun n. Chúng ta chỉ ra rằng nếu tất cả các khóa công khai đều bằng e, thì Oscar có thể khôi phục m nếu k e, đối với e nhỏ. Để giảm thời gian mã hóa, một số mũ công khai nhỏ e được sử dụng, giá trị nhỏ nhất có thể có của e là 3.

Nói chung, nếu tất cả các khóa công khai đều bằng e, thì Oscar có thể khôi phục m nếu k e. Để giảm thời gian giải mã, người ta có thể sử dụng giá trị d nhỏ thay cho d ngẫu nhiên. Việc tính toán UCLN có thể được thực hiện trong thời gian O((log2n)3) bằng thuật toán Euclide.

Tuy nhiên, trong trường hợp này, H phải giải mã trước, sau đó mới có thể giả mạo chữ ký. Vì vậy, trong trường hợp này, H có thể giả mạo chữ ký mà không cần giải mã. Kẻ tấn công được phép sử dụng người ký như một bên đáng tin cậy, có thể yêu cầu chữ ký cho các thư phụ thuộc vào khóa công khai của người ký.

TẤN CÔNG CHỮ KÝ ELGAMAL

  • Chữ ký Elgamal
    • Sơ đồ chữ ký
    • Ví dụ
  • Các dạng tấn công vào chữ ký Elgamal
    • Tìm cách xác định khóa bí mật
    • Giả mạo chữ ký (không tính trực tiếp khóa bí mật)

Cách tránh: Phải cẩn thận khi sử dụng số k ngẫu nhiên, không để lộ số k đã sử dụng, Thử với giá trị nào đó ta tìm được r (điều kiện kiểm tra để xác định r là r modp). Nếu khóa bí mật a quá nhỏ, nó có thể được tính toán bằng cách phát hiện đơn giản.

Giải: Chọn khóa bí mật a là một số nguyên lớn gần bằng chính số n. Trong trường hợp các tham số này quá nhỏ, rõ ràng chúng cũng có thể được tìm thấy bằng một phương pháp phát hiện đơn giản. Giải pháp: Chọn các số ngẫu nhiên r là các số nguyên lớn gần bằng chính số n.

Hiện tại chưa có cách nào hiệu quả cho 2 trường hợp trên nhưng phỏng đoán khó hơn bài toán logarit rời rạc. Nếu bạn chọn , , và sau đó tính x, H sẽ giải được bài toán logarit rời rạc. Cả hai phương pháp giả mạo này đều tạo ra chữ ký chính xác trên tài liệu tương đương, nhưng nó không phải là tài liệu được lựa chọn theo quyết định của người giả mạo.

Tất cả các tài liệu này đều được tính sau khi đếm chữ ký, vì vậy việc giả mạo kiểu này cũng không có nhiều ý nghĩa trong thực tế.

TẤN CÔNG CHỮ KÝ DSS

  • Chữ ký DSS
    • Sơ đồ chữ ký DSS
    • Ví dụ

Nếu bạn sử dụng chữ ký RSA với một thành phần kiểm tra chữ ký nhỏ, việc kiểm tra sẽ nhanh hơn việc ký. Một tài liệu chỉ được ký một lần, nhưng nó được kiểm tra nhiều lần, vì vậy mọi người muốn các thuật toán kiểm tra nhanh hơn. Nhiều ứng dụng sử dụng thẻ thông minh có dung lượng hạn chế, kết nối với máy tính mạnh hơn, vì vậy nên xây dựng sơ đồ chữ ký liên quan đến thẻ.

Nhưng tình hình là thẻ thông minh có thể tạo chữ ký và cũng kiểm tra chữ ký, vì vậy rất khó để đưa ra kết luận. NIST trả lời rằng thời gian để kiểm tra và tạo chữ ký, cái nào nhanh hơn, không quan trọng, miễn là nó đủ nhanh. Vì vậy, an toàn bảo mật thông tin sẽ là một trong những yếu tố rất quan trọng, đảm bảo an ninh cho việc triển khai nhiều ứng dụng trong thực tế, cho các giao dịch điện tử.

Một trong những nhiệm vụ của bảo mật thông tin là bảo vệ chữ ký (công cụ xác thực quan trọng) nên nghiên cứu đã xem xét chữ ký số. Cụ thể là nghiên cứu khả năng bị tấn công chữ ký và từ đó đưa ra giải pháp khắc phục, tránh vấn đề giả mạo chữ ký. Trình bày một số khái niệm cơ bản về mã hóa dữ liệu, về chữ ký số.

Đưa ra một số khả năng tấn công chữ ký số của các nhà phân tích mật mã và giải pháp phòng chống.

Tài liệu tham khảo

Tài liệu liên quan

b) Muốn cộng hai số nguyên khác dấu không đối nhau ta tìm hiệu hai giá trị tuyệt đối của chúng (số lớn trừ số nhỏ) và đặt trước kết quả tìm được dấu của số có giá trị

Kết quả nghiên cứu cho thấy chỉ số hiệu quả kỹ thuật của các cơ sở CNGT đạt được ở mức khá cao, trong đó chỉ số TE cho tổng thể mẫu là 0,926, tức là trong điều

- Thực hiện nhân tiếp thừa số thứ hai với chữ số hàng chục của thừa số thứ nhất, được kết quả bao nhiêu thì cộng với số vừa nhớ.. Từ đó ta tìm được kết

Hãy chọn chữ cái in hoa đứng trước kết quả đúng ghi vào giấy làm bài 1) Số các giá trị của dấu hiệu phải tìm là.. Hãy tìm giá trị của

Muốn nhân hai số nguyên khác dấu, ta nhân hai giá trị tuyệt đối của chúng rồi đặt dấu “ –” trước kết quả”..

Lưu ý: Để khẳng định một số là hợp số, ta thường sử dụng các dấu hiệu chia hết để tìm ra một ước khác 1 và chính nó... Phân tích một số ra

+ Muốn cộng hai số nguyên khác dấu (không đối nhau), ta tìm hiệu hai phân số tự nhiên của chúng (số lớn trừ số nhỏ) rồi đặt trước hiệu tìm được dấu của số có phần số tự

Bạn Lâm khẳng định luôn tìm được hai số nguyên mà hiệu của chúng lớn hơn cả số trừ và số bị trừ; bạn Hùng thì bảo tìm được hai số nguyên mà hiệu của chúng chỉ lớn hơn số