天津大学《密码学》课程教学大纲
课程编号: 学 时: 学时分配: 授课学院: 适用专业: 先修课程:
2160157 32 授课: 32
课程名称: 密码学 学 分: 2
计算机科学与技术学院 计算机科学与技术
一.课程的性质与目的
密码学是计算机科学与技术专业的专业选修课。
大量的信息以数据形式存放在计算机系统中并通过公共信道传输。若这些信息的安全受到危害,则会危及国家的安全,引起社会的混乱,从而造成重大损失。确保信息的安全已成为计算机科学技术的热点领域。密码技术是信息安全中的关键技术,它的有效使用可以极大地提高计算机与网络的安全性。
课程的目的在于为已经或即将完成计算机学位基础课程并计划从事信息安全工程实践或理论研究的学生提供基础指导。
二.教学基本要求
通过本课程的学习,学生应掌握现代密码学的基本原理和基本目标;掌握现代密码学中的主要方法和关键技术;初步了解一些现代密码学中的高级课题。
三.教学内容
密码学概论:概括介绍现代密码学的产生背景,基本概念术语,基本理论,基本技术,安全模型等。
数论与代数初步:介绍现代密码学涉及的数论与代数的知识,包括:同余和剩余概念,中国剩余定理,费马定理和欧拉定理,二次剩余,原根,群、环、域的基本知识等。
DES加密标准:DES加密算法及其安全问题,口令安全应用,防止篡改码。 AES加密标准:AES加密算法及其快速实现方法,加密模式,消息认证码。
RSA算法与Rabin算法:RSA算法的构造、安全分析、参数选择,Rabin算法的构造、安全分析、参数选择。
离散对数:离散对数问题与安全分析,ElGamal加密算法,比特承诺。 数字签名:RSA签名方案,ElGamal签名族,生日攻击。
椭圆曲线:椭圆曲线算术,椭圆曲线密码,椭圆曲线在分解方面的应用。 密码执行:素性测试,模幂和多模幂算法,中国剩余定理加速RSA解密,Montgomery约减方法。
电子商务与电子现金:SET协议,不可否认签名,电子现金协议。 秘密分享:秘密分享的应用,秘密分割,几个门限方案。 游戏:电话投币方案,电话扑克方案。
零知识证明技术:零知识证明的基本概念,几个鉴别方案。
密钥建立技术:密钥分配协议,密钥协商协议,Kerberos系统,公钥基础设施(PKI)。
四.学时分配
教学内容 授课 上机 实验 实践 实践(周) 密码学概论 数论与代数初步 DES加密标准 AES加密标准 RSA算法与Rabin算法 离散对数 数字签名 椭圆曲线* 密码执行 电子商务与电子现金 秘密分享 游戏 零知识证明技术 密钥建立技术 总计: 2 6 2 2 4 2 2 0 4 2 1 1 2 2 32 * 自学内容
五.评价与考核方式
最终成绩评定由两部分组成:期末闭卷考试(80%)、平时成绩(20%)。
六.教材与主要参考资料
[1] Wade Trappe, Lawrence C. Washington, Introduction to cryptography with coding theory, Prentice-Hall (科学出版社影印), 2002。
[2] Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone, Handbook of applied cryptography, CRC Press, 1997。
[3] Bruce Schneier著,吴世忠,祝世雄,张文政等译,何德全审校,应用密码学——协议、算法与C源程序(第2版),机械工业出版社,2000。
[4] Wenbo Mao著,王继林,伍前红等译,王育民,姜正涛审校,现代密码学理论与实践,电子工业出版社,2004。
[5] 卢开澄,计算机密码学——计算机网络中的数据保密与安全(第3版),清华大学出版社,2003。
TU Syllabus for Cryptology
Code:
Semester Hours: Semester Structure Offered by: for: Prerequisite:
1. Objective
Hour
2160157 32
Lecture:32
Title: Credits:
Cryptology 2
School of Computer Science and Technology Computer Science and Technology
The purpose of this course is to provide a practical tutorial of both the principles and practice of modern cryptography. The course mainly addresses three topics: the basic cryptographic concepts and mathematical backgrounds (Chapters 1-2); basic cryptographic algorithms (Chapters 3-8), e.g. symmetric encryption algorithms, public-key encryption algorithms, digital signatures, and their implementations (Chapter 9); advance cryptographic protocols (Chapters 10-14), e.g. digital cash, zero-knowledge techniques, key establishment protocols.
2. Course Description
We decide on the following requirements to design this course: (1) the course should be up-to-date and cover a board selection of topics from a mathematical point of view; (2) the material should be accessible to mathematically mature students having little background in number theory and computer programming; (3) there should be examples involving numbers large enough to demonstrate how the algorithms really work. It is impossible to appreciate the significance of some of the techniques discussed in the course without a basic understanding of number theory and some results from probability theory. Nevertheless, an attempt has been made to make the course self-contained. The course presents not only the basic mathematical results that are needed but provides the university students with an intuitive understanding of those results.
3. Topics
Overview of Cryptography and Its Applications: secure system, symmetric and public key ideas, cryptographic goals, the basic concepts and technology on modern cryptography, models for evaluating security.
Basic Number Theory and Algebra: basic notions congruence, quadratic residues, primitive root, inverting matrices Mod n, groups/rings/fields.
The Data Encryption Standard (DES): a simplified DES-type algorithm, differential cryptanalysis, DES, DES is not a group, breaking DES, password security, modification detection code (MDC).
The Advanced Encryption Standard (AES): about the finite field GF(pn), the basic algorithm, the layers decryption, design consideration, implementation concerns, positive impact of the AES, modes of operation, message authentication code. The RSA and Rabin Algorithms: RSA encryption algorithm, implementation of RSA encryption, security of RSA encryption, RSA encryption in practice, Rabin encryption algorithm, implementation of Rabin encryption, security of Rabin encryption, summary of public key encryption.
Discrete Logarithms: discrete logarithms, computing discrete logs, the ElGamal public, key cryptosystem, bit commitment.
Digital Signatures: the RSA signature scheme, the ElGamal family signature schemes, birthday attacks.
Elliptic Curves: Weierstrass equation, elliptic curves over R, elliptic curves over finite field, elliptic curve cryptosystems, factoring with elliptic curves.
Implementations: prime number issue, exponentiation, exponent recoding, multi-exponentiation, Chinese remainder theorem for RSA, Montgomery reduction method.
E-Commerce and Digital Cash: secure electronic transaction, undeniable signature, digital cash.
Secret Sharing Schemes: scenarios for secret sharing, secret splitting, threshold schemes.
Game: flipping coins over the telephone, poker over the telephone.
Zero-Knowledge Techniques: overview of zero-knowledge concepts, Fiat-Shamir identification protocol, Feige-Fiat-Shamir identification protocol, GQ identification protocol, Schnorr identification protocol.
Key Establishment Protocols: motivation, key pre-distribution, key distribution, key
agreement protocols, Kerberos, public key infrastructures (PKI).
4. Semester Hour Structure
Topics Lecture Computer Lab. Experiment Practice Practice (Week) Overview of Cryptography and Its Applications Basic Number Theory and Algebra The Data Encryption Standard (DES) 2 6 2 2 4 2 2 0 4 2 1 1 2 2 32 The Advanced Encryption Standard (AES) The RSA and Rabin Algorithms Discrete Logarithms Digital Signatures Elliptic Curves* Implementations E-Commerce and Digital Cash Secret Sharing Schemes Game Zero-Knowledge Techniques Key Establishment Protocols Sum: * Self-study.
5. Grading
Final grade consists of two parts: exam (80%) and class attendance and activity (20%).
6. Text-Book & Additional Readings
[1] Wade Trappe, Lawrence C. Washington, Introduction to cryptography with coding theory, Prentice-Hall (English reprint copyright by Science Press), 2002.
[2] Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone, Handbook of applied
cryptography, CRC Press, 1997.
[3] Bruce Schneier, Applied cryptography-protocols, algorithms, and source code in C,Second Edition, Shi-Zhong Wu, Shi-Xiong Zhu, Wen-Zheng Zhang (Translation), De-Quan He (Review), China Machine Press, 2000. (In Chinese)
[4] Wenbo Mao, Modern cryptography: theory and practice, Xu-Lin Wang, Qian-Hong Wu (Translation), Yun-Ming Wang, Zheng-Tao Jiang (Review), Publishing House of Electronics Industry, 2004. (In Chinese)
[5] Kai-Cheng Lu,Computer cryptography-data secrecy and security under the networks, Third Edition, Tsinghua University Press, 2003. (In Chinese)