GOST R34.10-94
Hệ mật ElGamal và chuẩn chữ ký số GOST R34.10-94 là một lớp các thuật toán mật mã khóa công khai và chữ ký số được xây dựng trên cơ sở Bài toán logarit rời rạc trong trường hữu hạn nguyên tố (Bài toán logarit rời rạc), mà hiện tại vẫn được xem là một bài toán khó [23], [24], [34], bài toán này có thể được phát biểu như sau: Cho số nguyên tố p, gọi *
p Z g∈ là phần tử sinh của * p Z và một phần tử * p Z y∈ . Cần xác định số nguyên dương * p Z x∈ sao
cho gx ≡y modp. Bài toán logarit rời rạc được xem là bài toán khó nếu p
được chọn đủ lớn và (p-1) phải có ít nhất một thừa số nguyên tố lớn. Hiện tại chưa có giải thuật thời gian đa thức cho bài toán này.
Ở hệ mật ElGamal và chuẩn chữ ký số GOST R34.10-94, Bài toán logarit rời rạc được sử dụng với vai trò của hàm một chiều trong việc hình thành khóa. Nghĩa là, từ một khóa bí mật (x) cho trước, dễ dàng tính được khóa công khai (y) tương ứng, nhưng điều ngược lại thì rất khó thực hiện, khi đó sẽ phải giải Bài toán logarit rời rạc.
Mục đích của việc tấn công vào thuật toán mật mã ElGamal là khôi phục thông điệp dữ liệu M từ bản mã (C,R) và các tham số công khai của hệ
thống: p, q, g. Có thể khôi phục nội dung thông điệp dữ liệu M từ thuật toán mã hóa: M C ( )y k p
B − mod
×
= , hay thuật toán giải mã: M C ( )R xB p
mod
−
×
= , nếu
khóa mật k hoặc x có thể tính được. Để tính được x hoặc k, cần phải giải được một trong hai bài toán logarit rời rạc: y=( )g xmodp hoặc: R=( )g kmodp
.
Tấn công vào các lược đồ chữ ký số ElGamal và GOST R34.10-94 là tạo ra chữ ký giả mạo phù hợp với một thông điệp dữ liệu cho trước. Việc giả mạo chữ ký của một đối tượng U có thể thực hiện thành công nếu tính được khóa bí mật x từ khóa công khai y tương ứng của đối tượng U. Một cách khác để tính được khóa bí mật x là tính khóa ngắn hạn k từ thành phần thứ nhất R của chữ ký, sau đó giải: S =k−1(H(M)−x×R)mod(p−1) đối với thuật toán ElGamal, hay giải: S =(H( )M ×k+x×R)modq đối với GOST R34.10-94. Tuy nhiên, tấn công khóa mật bằng cách này sẽ giải bài toán logarit rời rạc tương tự như đối với thuật toán mật mã El Gamal.