4. Tổng quan luận văn
3.4.2.4. Chức năng Sign
Để kiểm tra xem có đúng là chữ ký của Andy trên x hay không, dùng khóa công khai K”=(p, q, , v) để tính ver(x,y, ) = true
ayvh(x,y)(modp
Hình 3.7: Giao diện chương trình thực hiện xác nhận thông tin của sơ đồ chữ ký Schnorr
/*Chương trình kiểm tra chữ ký*/
private void btcheckSign_Click(object sender, EventArgs e)
{
progressBar1.Value = 0;
while (progressBar1.Maximum > progressBar1.Value)
{
progressBar1.Value++;
Thread.Sleep(10);
}
int ha = hash(txtM2.Text + txtGama2.Text);
long temp = (mod(ap, y, p) * mod(v, ha, p)) % p;
// MessageBox.Show(txtM2.Text + txtGama2.Text +
" : " + ha.ToString());
// MessageBox.Show(temp.ToString() + " : " +
gama.ToString() + " : " + ha.ToString());
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
btcheckSign.Text = "OK";
else
btcheckSign.Text = "NOT OK";
} 3.4.3. Thử nghiệm - Chọn p = 945799, q = 3217, anpha = 1096, v = 613544 a(mật) = 12 - k = 1096 - Chọn hàm băm ha
- Thực hiện ký Sigk(x,k) = (y,k)
- = akmodq = 439722
3.5. Kết luận chƣơng 3
Sử dụng ngôn ngữ lập trình C# xây dựng sơ đồ định danh Schnorr và sơ đồ chữ ký để xác nhận danh tính. Quan trọng hơn cả là khi sử dụng sơ đồ chữ ký
Schnorr để A xưng danh với B là A chỉ cần biết giá trị u là một giá trị được tính bởi TA ( và chỉ TA tính được giá trị đó).
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
KẾT LUẬN 1. Những kết quả đạt đƣợc
Luận văn đã giới thiệu tổng quát về mật mã, hệ thống mật mã và chữ ký số, các hướng tiếp cận với các sơ đồ định danh mật. Ngoài ra Luận văn còn đề cập đến một phương pháp tiếp cận là sơ đồ chữ ký Schnorr. Luận văn đã sử dụng ngôn ngữ lập trình C Sharp thiết kế chương trình để mô phỏng quá trình xác nhận danh tính trên sơ đồ định danh Schnorr và trên sơ đồ chữ ký Schnorr.
Trên cơ sở tìm hiểu các hệ mật mã và các sơ đồ định danh mật, luận văn đã tập trung vào việc chuyển sơ đồ định danh thành sơ đồ chữ ký số với ý tưởng thay thế người xác minh bằng một hàm băm công khai khi đó thông báo sẽ không bị chặt ra trước khi ký và quá trình băm được tích hợp thành thuật toán ký.
Bằng ngôn ngữ lập trình C Sharp luận văn đã tiến hành xây dựng được chương trình mô phỏng quá trình xưng danh và xác nhận danh tính của Andy với Tommy bằng sơ đồ định danh Schnorr, và xác nhận danh tính bằng sơ đồ chữ ký Schnorr có ý nghĩa trong ngăn chặn sự tấn công thông qua việc tìm kiếm các va chạm trong hàm băm.
2. Hƣớng phát triển
Xây dựng ứng dụng các sơ đồ định danh đầy đủ
Phát triển ứng dụng thử nghiệm thành một ứng dụng thực tế: Để rút tiền từ một máy ATM tự động, người sử dụng cần xưng danh bằng cách dùng một thẻ rút tiền cùng với số PIN (số xưng danh của mình)
Đánh giá đồ an toàn của sơ đồ chữ ký Schnorr với các sơ đồ chữ ký RSA hay Sơ đồ chữ ký số Elgaman
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
TÀI LIỆU THAM KHẢO A. Tài liệu tiếng Việt
[1] Phan Đình Diệu, Lý thuyết mật mã và an toàn thông tin, khoa CNTT Đại học Quốc gia Hà Nội, 2006.
[2] D.R Stinson, Mật mã - Lý thuyết và thực hành, do Nguyễn Bình dịch - Học viện kỹ thuật mật mã, 1995.
[3] Lê Mỹ Tú, Trần Duy La, Chứng thực điện tử, Học viện Kỹ thuật Mật mã, 2011.
[4] TS. Nguyễn Đại Thọ, An Toàn Mạng, Trường Đại học Công nghệ - ĐHQGHN, 2010
B. Tài liệu tiếng Anh
[5] Douglas R. Stinson. Cryptography. Theory and Practice, CRC ress, 1995.
[6] A.J. Menezes, P.C. van Oorschot, S.A. Vanstone. Handbook of Applied cryptography, CRC Press, 1997.
[7] Bruce Schneier. Applied Cryptography. Protocols, Algorithms and Source Code in C. John Wiley &Son,Inc, 1996.
[8] S. Goldwasser, M. Bellare. Lecture Notes on Cryptography. MIT Laboratory of Computer Science, 2001.
[9] J.Seberry, J. Pieprzyk. Cryptography. An introduction to Computer Security. Prentice Hall, 1989.
[10] Vitor Shoup. A computational Introduction to Number Theory and Algebra, New York University, 2003.
[11] William Stallings. Cryptography and Network Security : Principles and Practice, Fourth Edition. Prentice Hall, 2005.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
C. Internet
[12] SSH Communications Security - http://www.ssh.com/company [13] RSA Security Inc - http://www.rsasecurity.com
[14] Factor World - http://www.crypto-world.com [15] http://williamstallings.com