Giao diện ký mù RSA trên một số

Một phần của tài liệu (LUẬN văn THẠC sĩ) tìm hiểu, nghiên cứu một số chữ ký đặc biệt dùng trong bỏ phiếu điện tử 04 (Trang 64)

* Chương trình ký mù lên một văn: bản gồm có 5 chức năng con nhƣ sau: + Tạo khóa: Chức năng này cho phép tạo khóa bí mật và công khai.

+ Làm mù văn bản: Chức năng này cho phép làm mù văn bản + Ký mù: Chức năng này cho phép Ký lên văn bản đã đƣợc làm mù + Tách chữ ký: Cho phép tách chữ ký ra khỏi văn bản đã đƣợc Ký mù

+ Xóa mù: Chức năng này cho phép xóa mù văn bản đã đƣợc tách chữ ký để lấy lại bản rõ.

4.4. MÔ TẢ HOẠT ĐỘNG

4.4.1. Chức năng ký mù lên một số 1/. Chức năng tạo khóa: 1/. Chức năng tạo khóa:

Bƣớc 1: Nhập vào hai số nguyên tố p và q

Bƣớc 2: Nhấn vào nút n=p*q= chƣơng trình sẽ tự động tính toán và xuất ra giá trị n.

Bƣớc 3: Nhấn vào nút Pn=(p-1)(q-1)= chƣơng trình sẽ tự động tính toán và xuất ra giá trị (n).

Bƣớc 4: Nhập khóa công khai b sao cho phải nguyên tố cùng nhau với (n), nếu nhập sai chƣơng trình sẽ thông báo “khong nguyen to cung nhau”.

Bƣớc 5: Nhấn vào nút tạo khóa bí mật a = chƣơng trình sẽ xuất ra giá trị khóa bí mật a.

2/. Chức năng làm mù:

Bƣớc 1: Nhập số cần ký x

Bƣớc 2: Nhập khóa công khai bchính là khóa công khai đã chọn khi tạo khóa Bƣớc 3: Nhập số rngẫu nhiên sao cho nguyên tố cùng nhau với n, nếu nhập sai chƣơng trình sẽ thông báo “khong nguyen to cung nhau”.

Bƣớc 4: Nhấn vào nút làm mù số để tiến hành làm mù và thu đƣợc số mù nhƣ trong hình 4.4:

Hình 4.4. Làm mù số cần ký

3/. Chức năng ký mù:

Bƣớc 1: Nhập số mù cần ký u

Bƣớc 2: Nhập khóa bí mật a chính là khóa bí mật đã tạo trong mục tạo khóa. Bƣớc 3: Nhập số n đã đƣợc tính trong bƣớc tạo khóa

Bƣớc 4: Nhấn vào nút ký số mù để tiến hành ký lên số mù u và thu đƣợc kết quả ký v nhƣ trong hình 4.5.

Hình 4.5. Ký mù lên một số

4/. Chức năngtách chữ ký và xóa mù

Bƣớc 1: Nhập kết quả ký mù v, số ngẫu nhiên r và tích hai số nguyên tố n.

Bƣớc 2: Nhấn vào nút lấy lại chữ ký chƣơng trình sẽ xuất ra giá trị số của chữ ký Bƣớc 3: Nhấn vào nút lấy lại số rõ chƣơng trình sẽ xóa mù để lấy lại số rõ

4.4.2. Chức năng ký mù lên một văn bản

Giao diện chính của chức năng ký mù RSA lên thông điệp dạng văn bảnđƣợc thể hiện nhƣ hình 4.7.

Hình 4.7. Giao diện của chức năng ký mù lên văn bản

1/. Chức năng tạo khóa:

Bƣớc 1: Nhấn vào menu tạo khóa để tiến hành tạo khóa xuất hiện giao diện cho phép tạo khóa nhƣ trong hình 4.8.

Bƣớc 2: Nhập hai số nguyên tố p và q

Bƣớc 3: Nhấn vào nút tính n và tính (p-1)(q-1) để tính n và (n)

Bƣớc 4: Nhập khóa công khai b sao cho nguyên tố cùng nhau với (n), nếu nhập sai chƣơng trình sẽ thông báo “khong nguyen to cung nhau”.

Bƣớc 5: Nhấn nút tạo khóa bí mật để nhận đƣợc khóa bí mật a. Chi tiết trong hình 4.8.

2/. Chức năng làm mù văn bản

Thông điệp trong bản rõ có nội dung nhƣ trong hình 4.9. Để thực hiện chức năng làm mù cần thực hiện theo các bƣớc sau:

Hình 4.9 Nội dung thông điệp cần làm mù

Bƣớc 1: Nhấn vào menu “lam mu bao cao” để tiến hành làm mù văn bản (thông điệp) xuất hiện giao diện nhƣ hình 4.10.

Bƣớc 2: Lựa chọn đƣờng dẫn tới văn bản cần làm mù. Chƣơng trình này có thể tiến hành trên bất cứ định dạng file nào: file văn bản (.doc), file hình ảnh (jpg, jpeg,…). Do vậy trong ta có thể nhập bất cứ file nào vào trong hộp thoại lựa chọn bản rõ.

Bƣớc 3: Nhập khóa công khai b đã chọn trong mục tạo khóa

Bƣớc 4: Nhập số ngẫu nhiên r sao cho nguyên tố cùng nhau với n (tích hai số nguyên tố p và q), nếu nhập sai chƣơng trình sẽ thông báo “khong nguyen to cung nhau”.

Bƣớc 5: Lựa chọn đƣờng dẫn đến nơi chứa văn bản mù (phải cùng kiểu văn bản với văn bản rõ)

Bƣớc 6: Nhấn vào nút “lam mu bao cao” để tiến hành làm mù thông điệp, hệ thống sẽ thông báo “đã tạo bản mù xong” chi tiết trong hình 4.10.

Hình 4.10. Giao diện chức năng làm mù thông điệp

Kết quả thu đƣợc bản thông điệp mù có nội dung nhƣ trong hình 4.11

Hình 4.11. Nội dung thông điệp mù

3/. Chức năng ký mù

Bƣớc 1: Nhấn vào menu “ký” để tiến hành „ký‟ trên văn bản mù. Bƣớc 2: Ngƣời ký lựa chọn đƣờng dẫn đến văn bản đã làm mù cần ký.

Bƣớc 3: Lựa chọn đƣờng dẫn và tên văn bản ký mù (phải cùng kiểu văn bản với văn bản rõ).

Bƣớc 4: Nhập khóa bí mật a đã đƣợc tạo ở chƣc năng tạo khóa

Hình 4.12. Giao diện chức năng ký lên văn bản mù

Kết quả: thu đƣợc chữ ký trên thông điệp mù có nội dung nhƣ trong hình 4.13

Hình 4.13. Thông điệp mù đã được ký

4/.Chức năng tách chữ ký:

Bƣớc 1: Nhấn vào menu “lấy lại chữ ký” để tách chữ ký ra khỏi văn bản đã ký mù.

Bƣớc 2: Chọn đƣờng dẫn đến văn bản cần tách chữ ký

Bƣớc 3: Chọn đƣờng dẫn đến nơi chứa văn bản đã đƣợc tách chữ ký Bƣớc 4: Nhập số ngẫu nhiên r đã chọn trong bƣớc làm mù văn bản Bƣớc 5: Nhấn vào nút lấy lại chữ ký để tiến hành tách chữ ký. Chi tiết trong hình 4.14.

Hình 4.14. Giao diện chức năng tách chữ ký

Kết quả: Chữ ký đã đƣợc tách ra khỏi thông điệp mù có nội dung chi tiết trong hình 4.15.

Hình 4.15. Thông điệp đã được tách chữ ký

5/. Chức năng xóa mù:

Bƣớc 1: Nhấn vào menu “lấy lại bản rõ” xuất hiện giao diện chức năng xóa mù nhƣ trong hình 4.16.

Bƣớc 2: Lựa chọn đƣờng dẫn tới văn bản đã tách chữ ký cần lấy lại bản rõ. Bƣớc 3: Lựa chọn đƣờng dẫn tới bản rõ đƣợc lấy lại

Hình 4.16. Giao diện chức năng lấy lại bản rõ(xóa mù)

Kết quả: Thu đƣợc bản thông điệp đã đƣợc xóa mù để lấy lại nội dung thông điệp gốc chi tiết trong hình 4.17

KẾT LUẬN

a. Kết quả thu đƣợc

Sau thời gian làm luận văn em đã tìm hiểu đƣợc một số kiến thức cơ bản về lý thuyết mật mã, phân loại đƣợc một số hệ mã hóa, một số loại chữ ký điện tử… Sử dụng ngôn ngữ lập trình C# để xây dựng các ứng dụng thử nghiệm. Luận văn đã hoàn thành đạt đƣợc hai kết quả chính:

1/. Tìm hiểu và nghiên cứu các tài liệu để hệ thống lại các vấn đề sau: + Một số chữ ký đặc biệt: Chữ ký mù RSA, chữ ký nhóm.

+ Quy trình bỏ phiếu điện tử, những vấn đề trong bỏ phiếu điện tử

+ Ứng dụng của một số loại chữ ký để đảm bảo an ninh, an toàn trong Bỏ phiếu điện tử.

2/. Viết chƣơng trình Thử nghiệm Chữ ký mù RSA

b. Hƣớng phát triển trong tƣơng lai

Trên đây là qui trình bỏ phiếu điện tử tổng quát và tóm tắt một số quy trình bỏ phiếu "điện tử" đang tồn tại cùng những đặc trƣng của chúng.Qui trình bỏ phiếu đƣợc giới thiệu có tính an toàn và đạt đƣợc một số yêu cầu nhƣ: hợp pháp, riêng tƣ, rõ ràng và trung thực.

Viê ̣c xây dƣ̣ng chƣơng trình mô phỏng bỏ trên đây mới chỉ d ừng ở mứ c thƣ̣c hiê ̣n mô ̣t phần nhỏ trong cả một hệ thống Bỏ phiếu điện tử . Hƣớng phát triển trong tƣơng lai sẽ nghiên cứu thêm nhiều loại chữ ký đặc biệt khác để hoàn thiện tất cả các giai đoa ̣n còn lại và giúp ngƣời sử dụng có mô ̣t cách tiếp câ ̣n d ễ dàng hơn về bỏ phiếuđiê ̣n tƣ̉.

Mặc dù đã hoàn thành nhƣng trong quá trình hoàn thiện, do còn thiếu thốn cơ sở vật chất và thời gian nghiên cứu nên không thể tránh khỏi những thiếu sót, rất mong nhận đƣợc những góp ý từ các thầy, cô giáo để luận văn đƣợc hoàn thiện hơn.

TÀI LIỆU THAM KHẢO

Tiếng Việt:

[1] Phan Đình Diệu. Lý thuyết mật mã và an toàn thông tin – NXB Đại học Quốc gia Hà Nội - 2006

[2] Giáo trình an toàn và bảo mật thông tin trong các hệ thống điều hành sản xuất – Sở bƣu chính viễn thông 2005

[3] Trịnh Nhật Tiến, Trƣơng Thị Thu Hiền. Về một quy trình bỏ phiếu từ xa – Tạp chí Khoa học ĐHQGHN, KHTN & CN, T.XXI, SỐ 2PT. 2005

[4] Trịnh Nhật Tiến, Nguyễn Đình Nam, Trƣơng Thị Thu Hiền,“Một số kỹ thuật bỏ phiếu từ xa”. Báo cáo tại Hội thảo Quốc Gia về CNTT, Thái Nguyên 8/2003.

[5] Trịnh Nhật Tiến. Chữ ký: mù, nhóm, mù nhóm và ứng dụng. Kỷ yếu HN KH FAIR lần 2 tại TP Hồ Chí Minh 9/2005 .

[6] Trịnh Nhật Tiến, Đặng Thu Hiền, Trƣơng Thị Thu Hiền, Lƣơng Việt Nguyên.Mã hóa đồng cấu và ứng dụng.Tạp chí KHTN, 2010.

Tiếng Anh:

[6] Birgit Pfitzmann, Michael Waidner: Formal Aspects of Fail-stop Signatures; Interner Bericht 22/90, Fakultät für Informatik, Universität Karlsruhe 1990.

[7] David Chaum, Han van Antwerpen. Undeniable Signatures.Crypto'89, LNCS 435, Springer-Verlag, Berlin năm 1990, 212-216.

[8] David Chaum, van Heyst. Group signature. Advances in Cryptology – EUROCRYPT ‟91,1991 tr 257 – 265.

[9] L. Lamport, Constructing digital signatures from a one-way function, Technical Report SRI-CSL-98, SRI International Computer Science Laboratory, Oct. 1979

[10] Jan Camenisch, Jens Groth, Group Signatures : Better Efficiency and NewTheoritical Aspects.

[11] A. Lysyanskaya and Z. Ramzan. Group Blind Digital Signatures: A scalable solution to electronic Cash, 1998.

Một phần của tài liệu (LUẬN văn THẠC sĩ) tìm hiểu, nghiên cứu một số chữ ký đặc biệt dùng trong bỏ phiếu điện tử 04 (Trang 64)