1. Trang chủ
  2. » Tất cả

Tìm hiểu sơ đồ chữ ký điện tử elgamal và lập trình ứng dụng để xác thực việc trao đổi dữ liệu qua mạng

82 5 0

Đ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

Thông tin cơ bản

Tiêu đề Tìm hiểu sơ đồ chữ ký điện tử Elgamal và lập trình ứng dụng để xác thực việc trao đổi dữ liệu qua mạng
Tác giả Nguyễn Văn Linh
Người hướng dẫn Ths. Đặng Văn Cường
Trường học Viện Đại Học Mở Hà Nội
Chuyên ngành Tin học ứng dụng
Thể loại đồ án tốt nghiệp đại học
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 82
Dung lượng 3,11 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • CHƯƠNG 1: TÒNG QUAN VÈ CHỮ KÝ SỐ (0)
    • 1.1. Giói thiệu chung về chữ ký số (0)
    • 1.2. Một số vấn đề toán học (7)
      • 1.2.1 Thuật toán Euclid (7)
      • 1.2.2 Thuật toán Euclid mỏ' rộng (8)
      • 1.2.3 Nhóm Cyclic (10)
      • 1.2.4 Một số định lý quan trọng khác (11)
    • 1.3. Một số thuật toán tính toán số lón (11)
      • 1.3.1 Phép cộng (12)
      • 1.3.2 Phép trừ (13)
      • 1.3.3 Phép so sánh (14)
      • 1.3.4 Phép dịch trái (15)
      • 1.3.5 Phép dịch phải (16)
      • 1.3.6 Phép nhân số lớn với một số nhở (0)
      • 1.3.7 Phép nhân (18)
      • 1.3.8 Phép chia (19)
      • 1.3.9 Thuật toán bình phu'OTig và nhân (0)
  • CHƯƠNG 2: sơ ĐÒ CHỮ KÝ ELGAMAL (0)
    • 2.1. Bài toàn Logarithm ròi rạc trong Zp (0)
    • 2.2. Sơ đồ chữ ký Elgamal (28)
    • 2.3. Độ mật của sơ đồ chữ ký Elgamal (0)
    • 2.4. Chuẩn chữ ký số (33)
  • CHƯƠNG 3:XÂY DựNG CHỪ KÝ SỐ ELGAMAL (0)
    • 3.1. Hàm Hask và tóm lược thông báo (38)
    • 3.2. Mô tả chương trình chữ ký số Elgamal (0)
    • 3.3. Cài đặt và hưóng dẫn sử dụng chương trình (0)
  • KẾT LUẬN (42)
  • Phụ lục (43)
    • 1. Hướng dẫn cài máy ảo JRE (43)
    • 2. Mã nguồn lớp SoLon (0)
    • 3. Mã nguồn lóp Toan (47)
    • 4. Mã nguồn lóp DocFile (54)
    • 5. Mã nguồn lóp GhiFile (55)
    • 6. Mã nguồn lóp Hash (56)
    • 7. Mã nguồn lóp Elgamal (57)
    • 8. Mã nguồn lóp FileObj (62)
    • 9. Code lớp GUI (0)

Nội dung

Khi công nghệ thông tin ngày càng thay thế con người trong công việc của chính chúng ta, thi việc đảm báo an toàn và xác thực nguồn gốc cùa những thông tin trên các thiết bị sổ ngày càng

TÒNG QUAN VÈ CHỮ KÝ SỐ

Một số vấn đề toán học

Thuật toán Euclid là phương pháp hiệu quả giúp tính ước số chung lớn nhất (UCLN) của hai số một cách nhanh chóng Được phát triển bởi nhà toán học Hy Lạp Euclid trong tác phẩm nổi tiếng "Elements" khoảng năm 300 trước Công Nguyên, thuật toán này vẫn là nền tảng quan trọng trong lĩnh vực toán học hiện đại.

Trước khi tìm hiểu thuật toán ta xét ví dụ: tính UCLN của 33 và 213

Trước hết phân tích 213 theo 33 ta có 213 = 33 * 6 + 15

• Bất kỳ số nào chia hết bởi 213 và 33 thì cũng sẽ bị chia hết bởi 213-33*6.

• Tương tự, số chia hết bởi 33 và 15 cũng chia hết bới 33*6+15!3

=> UCLN(33,213)=UCLN(33,15) Bài toán trớ thành tim UCLN của 33 và 15. Lặp lại quy trinh như trên cho đến khi không còn số dư:

33 = 15*2 + 3 (15 và 3 được dùng cho vòng lặp kế)

15=3*5 (không còn dư, kết thúc, nhận 3 làm kết quả)

Cuối cùng ta có : 3 = UCLN(33,15) = UCLN(33,213).

Giả sử a = bq +r với a, b, q, r là các số nguyên, ta có: nri l.A _ í b nẻu r - 0

While b>0 begin x:=a mod b a:=b b:=x end return X

1.2.2 Thuật toán Euclid mỏ’ rộng.

Thuật toán Euclid mờ rộng giúp giải phương trình vô định nguyên (còn gọi là phương trình Đi-ô-phăng) dạng ax + by = c, trong đó a, b, c là các số nguyên và x, y là các ẩn số nguyên Điều kiện để phương trình có nghiệm nguyên là UCLN(a, b) phải chia hết cho c Khẳng định này dựa trên mệnh đề rằng nếu UCLN của hai số nguyên chia c, thì phương trình sẽ có nghiệm nguyên Thuật toán Euclid mờ rộng là công cụ hiệu quả trong việc xác định nghiệm nguyên của phương trình vô định này.

Nếu d = UCLN(a, b) thì tồn tại các sô nguyên x,y sao cho ax + by = d

Giải thuật Euclid mờ rộng mở rộng kết hợp quá trình tìm ước số chung lớn nhất (UCLN) của hai số nguyên a và b trong thuật toán Euclid với việc tìm cặp số X, Y thỏa mãn phương trình Đi-ô-phăng Quá trình bắt đầu bằng việc đặt r0 = a và r1 = b, sau đó chia r0 cho r1 để tìm thương nguyên q1 và dư r2 Nếu r2 = 0, thuật toán kết thúc; nếu không, tiếp tục chia r1 cho r2 để tìm dư r3, q2 và lặp lại quá trình này Phương pháp này giúp mở rộng khả năng giải quyết các bài toán liên quan đến UCLN bằng cách kết hợp các yếu tố mờ trong quá trình tính toán.

Vi dãy r, là giảm thực sự nên sau hữu hạn bước ta có so dư rm= 0. r0 = q,r1 + r2, 0< r2< n r, = q2r2 + r3, 0< r3< r2 tin-1 tỊmrm+ rm+i, 0() do { r:= m mod a if r=0 then Break q:= m div a y:= yO-yl*q m:=a a:=r yO:=yl yl:=y }

If a>l Then Return "A không khả nghịch theo modulo m" else Return " Nghịch đào modulo m của a là y"

*Nếu y>0 thỉ y là kết quà của a'1 mod m

*Nếu y

Ngày đăng: 18/03/2023, 07:30

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w