\setcounter{numTAs}{0} \setcounter{totalSections}{2} \def\secNum{{"001","DL1",""}} \def\tenSchFileName{{"","",""}} \def\classTime{{"M from 06:15 pm to 08:45 pm in Drosdick Hall .","M from 06:15 pm to 08:45 pm in Online SYN.",""}} \def\classRm{{"CEER 212","",""}} \def\classLive{{"","",""}} \def\classInstructor{{"Jiafeng Xie","Jiafeng Xie",""}} \def\classInstrContact{{"https://www1.villanova.edu/university/engineering/academic-programs/departments/electrical-computer/directory.html","https://www1.villanova.edu/university/engineering/academic-programs/departments/electrical-computer/directory.html",""}} \def\classInstrOffHrs{{"Thursday 2-4PM","Thursday 2-4PM",""}} \def\classInstrLive{{"","",""}} \def\TA{{{""},{""},{""}}} \def\TAEmail{{{""},{""},{""}}} \def\TAOffHrs{{{""},{""},{""}}} \def\TARoom{{{""},{""},{""}}} \newcommand\semester{Fall 2024} \newcommand\rsemester{202520} \newcommand\courseNum{ECE 8481} \newcommand\courseName{Post-Quantum Cryptographic Engineering} \newcommand\courseCoordinator{Jiafeng Xie, PhD} \newcommand\credits{3} \newcommand\contactHrs{3} \newcommand\lecture{1} \newcommand\lab{0} \newcommand\undergradCourse{0} \newcommand\isFreshmanCourse{0} \newcommand\isCustomElecPolicy{0} \newcommand\AIPolicyExists{0} \newcommand\isClassLive{0} \newcommand\isLabLive{0} \newcommand\meetingMiscExists{0} \newcommand\isClassInstrLive{0} \newcommand\isLabInstrLive{0} \newcommand\instrMiscExists{0} \newcommand\hasTARoom{0} \newcommand\meetingDesc{One 150-minute lecture} \newcommand\meetingMisc{Special notes on meeting info go here, if specified} \newcommand\instructorMisc{Special notes on instructor(s), TA(s) go here, if specified} \newcommand\textBookExists{0} \newcommand\textBookReqd{0} \newcommand\textBookMiscExists{0} \newcommand\referencesExist{0} \newcommand\txtBkAuthExists{0} \newcommand\txtBkPublExists{0} \newcommand\txtBkYrExists{0} \newcommand\txtBkISBNExists{0} \newcommand\textBookTitle{} \newcommand\textBookAuth{} \newcommand\textBookPub{} \newcommand\textBookYr{} \newcommand\textBookISBN{} \newcommand\supplMaterials{\\ Recommended: Lattice-Based Public-Key Cryptography in Hardware, S. Roy and I. Verbauwhede, Springer, 2019 (ebook downloadable). References: Hardware Implementation of Finite Field Arithmetic, Jean P. Deschamps et. al., McGraw, 2009. Introduction to Post-Quantum Cryptography, Post-quantum cryptography, D. Bernstein, 2009 (ebook downloadable). Course slides (important) } \newcommand\refPapers{References go here, if specified} \newcommand\textBookMisc{Special notes on textbook(s) go here, if specified} \newcommand\catalogDesc{Basic foundation of the post-quantum crypotographic engineering and recent advances in the field; introduces design and implementation techniques for the arithmetic unit and overall post-quantum cryptography on both hardware and software platforms, and side-channel attack skills.} \newcommand\preReqs{None} \newcommand\coReqs{None} \newcommand\coreRequirement{For CPE/EE graduate students (or similar level) who are interested in post-quantum computing} \newcommand\courseExpectation{Be able to understand the basic foundation of the post-quantum cryptography and recent advances in the field; equip the learners with the ability to design and implement simple version of the basic arithmetic unit (post-quantum cryptography) on both hardware and software platforms. More importantly, prepare course participants for their future career in the coming quantum era. Specifically, 1. Be able to collaborate and communicate with classmates for projects and tasks. 2. Be able to familiar with basic post-quantum cryptosystem design process: use both hardware and software synthesis tools to design the main post-quantum cryptographic arithmetic operations. 3. Be able to understand the idea of system constraints and requirements like processing time, resource occupation \& cost, and size along with the possible trade-off considerations } \newcommand\ABETOutOneA{0} \newcommand\ABETOutOneB{0} \newcommand\ABETOutTwoA{0} \newcommand\ABETOutTwoB{0} \newcommand\ABETOutTwoC{0} \newcommand\ABETOutTwoD{0} \newcommand\ABETOutThree{0} \newcommand\ABETOutFourA{0} \newcommand\ABETOutFourB{0} \newcommand\ABETOutFourC{0} \newcommand\ABETOutFive{0} \newcommand\ABETOutSixA{0} \newcommand\ABETOutSixB{0} \newcommand\ABETOutSevenA{0} \newcommand\ABETOutSevenB{0} \newcommand\covTopics{\item Introduction of pre- and post-quantum cryptography \item Introduction of lattice-based scheme (arithmetic operations) \item Introduction of cryptographic hardware circuits: polynomial multiplication \item Other components within lattice-based scheme \item Implementation of simple post-quantum scheme (sampler and modular reduction) \item Lattice-based Ring-LWE scheme (data flow optimization) \item Post-quantum cryptoprocessor (introduction-I) \item Post-quantum cryptoprocessor (introduction-II) \item System-level building \& testing \item Unified processor \item Introduction of digital signature scheme \item Introduction of side-channel attacks } \newcommand\isScheduleExternal{0} \newcommand\isScheduleCommon{1} \newcommand\scheduleRows{16} \newcommand\scheduleCols{4} \newcommand\scheduleHeight{1} \newcommand\schedule{\begin{table}[h!] \centering \caption*{Tentative Schedule for \textbf{All Sections}} \vspace{0.05in} {\renewcommand{\arraystretch}{1.5} \small \begin{tabularx}{\linewidth}{c|c|c|c} \toprule \large \textbf{Month} & \large \textbf{Week/Date} & \large \textbf{Course Topic} & \large \textbf{Assignment}\\ \midrule \midrule August & Week-1 8/28 & Introduction & \\ September & Week-2 9/11 & Arithmetic operations & HW 1: point-wise multiplier\\ September & Week-3 9/18 & Hardware polynomial multiplication & Paper review\\ September & Week-4 9/25 & Other components & Project 1: hardware NTT\\ October & Week-5 10/2 & Mid-term exam & \\ October & Week-6 10/9 & Break & \\ October & Week-7 10/16 & Sampler and reduction & Project 2: sampler\\ October & Week-8 10/23 & Data flow optimization & \\ October & Week-9 10/30 & Cryptoprocessor-I & HW 2: system-level data flow\\ November & Week-9 11/6 & Cryptoprocessor-II & \\ November & Week-10 11/13 & System-level building & Final project: PQCryptoprocessor\\ November & Week-11 11/20 & Unified processor & \\ November & Week-12 11/27 & Digital signature scheme & \\ December & Week-13 12/4 & Side-channel attacks & \\ December & Week-14 12/11 & Recent advances & \\ \bottomrule \end{tabularx} } \end{table}} \newcommand\gradingPolicy{Your final grade will be determined from the following: • Project/homework assignment: 60\% (4 project/homework assignments, each 15 points) • Paper review: 10\% (2 technical paper review assignments, each 5 points) • Mid-Term Exam: 10\% • Final Project: 20\% Letter grade scale: A(90--100), A--(87--89), B+(83--86), B(80--82), B--(77--79),\\ C+(73--76), C(70--72), C--(67--69), D+(63--66), D(61--62), D--(60)F(<60)} \newcommand\HWandLabPolicy{Homework and Project must be submitted according to the designated timeline. LATE SUBMISSION WILL NOT BE ACCEPTED. Your homework should be neat and with your full name on.} \newcommand\AIPolicy{\textcolor{red}{ Since you opted for an AI Policy, you should edit this part, choosing one of the following statements, modifying as desired:\\ \\ The use of AI-generated content is not permitted in this course. Its use will result in an academic integrity violation and a zero on the assignment.\\ \\ OR\\ \\ The use of AI-generated content is allowed in this course.\\ \\ OR\\ \\ The use of AI-generated content is permitted as follows: (a) for generating a first draft or (b) for generating an outline or (c) for generating XXX.\\ \\ AND, if AI is allowed:\\ \\ Even if you have significantly edited AI-generated material, you must identify the AI tool used to assist in generating your work. You are required to provide the name of the tool, date used, and prompts used to generate the output. As you may be required to submit the original AI output, you must keep a copy of the original output and provide it when requested. If questions arise about the authorship of submitted work, you are responsible for authenticating your authorship. You should save evidence of your authorial process, such as drafts, notes, version histories, and complete transcripts of AI assistance. }} \newcommand\AttendancePolicy{} \newcommand\ElectronicsPolicy{\textcolor{red}{Since you opted for a customize electronics policy, you should edit this part. Your policy should address your general stance on recording of class sessions and the circumstances under which recording will be allowed or prohibited. If you generally prohibit recording, yet allow recording of certain classes for some reason, then you should notify all students that those classes will be recorded. If recording is permitted as an ADA accommodation for a student, you obviously should not identify that student(s).}}