CS 4593/6463: Bitcoins and Cryptocurrencies, Spring 2018

 

Instructor:

Murtuza Jadliwala

Department:

Computer Science

Office Location:

NPB 3.340

Telephone:

210-458-5693

Email:

murtuza.jadliwala@utsa.edu

Preferred Method of Contact:

In person during office hours or email

 

Office Hours:

Tuesdays/Thursdays 4:00 - 5:00 PM

 

Classroom; Days/Time:

MS 2.03.08; Tuesdays/Thursdays 6:00 - 7:15 PM

Prerequisites:

Any completed or concurrently enrolled Cyber Security course from the Department of Computer Science

 

Teaching Assistant(s)

This course has no assigned Teaching Assistants

 

 

 

 

Course Description

Bitcoins is a new and exciting form of cryptocurrency technology that has the potential of altering payments and economics around the world. In between the optimism surrounding Bitcoins' evolution as an alternate form of currency and the pessimism related to its security, success and adoptability, there is significant confusion and lack of understanding at the technical level about the precise architecture and operation of Bitcoins. This advanced graduate-level course attempts to bridge this gap in the technical understanding of Bitcoins and its operation. Specifically, this course will address the following fundamental questions: How does Bitcoin work and what makes it different? How secure are Bitcoins? How anonymous are Bitcoin users? What applications can be built using Bitcoin as a platform? Can cryptocurrencies be regulated? What is the future of Bitcoins and cryptocurrencies in general?

Credit hours: 3.0. Lecture hours: 3.0.

 

Definition of a Credit Hour

Success in this 3-credit hour course is based on the expectation that students will spend, for each unit of credit, a minimum of 45 hours over the length of the course (normally 3 hours per unit per week with 1 of the hours used for lecture) for instruction and preparation/studying or course related activities for a total of 135 hours.

 

Measurable Student Learning Outcomes:

After passing this course, students will be able to:

1). Describe how bitcoins and block chains work.

2). Identify and Analyze security and anonymity issues surrounding bitcoins, and limitations and future of bitcoins and other cryptocurrency technologies.

3). Develop code and computer programs for designing and building cryptocurrencies.

 

Required Texts

Bitcoins and Cryptocurrencies Technologies – A Comprehensive Introduction, Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller & Steven Goldfeder, 2016, Princeton University Press. (ISBN- 9780691171692). A free pre-publication online (non-printable) PDF version of the book can be found here: http://bitcoinbook.cs.princeton.edu/ and can be used for this course.

 

 

 

 

Grading Policy

Your letter grade will be based on the following components: Total out of 100%

Class quizzes and tests – 50%

Programming Assignments – 20%

Course Paper – 30%

 

The final letter grade for the course will be assigned based on the following distribution of the obtained grades.

Percentage obtained

Letter grade & GPA

>= 90

A & 4.0

>= 85 and < 90

A - & 3.67

>= 80 and < 85

B+ & 3.33

>= 75 and < 80

B & 3.0

>= 70 and < 75

B- & 2.67

>= 60 and < 70

C & 2.0

< 60

F & 0.0

 

Students should note that there is no “extra-credit” for this course and requests for earning extra-credit or making-up grades will not be entertained. Both undergraduate and graduate students will complete the same set of course assignments and tests, and the grading policy for both undergraduate and graduate students is the same.

 

Course Announcements and Updates

All course related announcements and content will be posted on the course webpage on Blackboard (http://learn.utsa.edu). Course content and schedule will also be available and updated on a publicly-visible course website (http://www.cs.utsa.edu/~jadliwala/CS6463/CS6463.htm). All course related assignment submissions should be done using the course’s Blackboard page only. Course related grades will be posted only on Blackboard. Students are expected to, and are responsible for, regularly monitoring the course page on Blackboard (or the course website). Students should also make sure that they receive emails and announcements sent by the instructor through Blackboard.

 

Attendance and Participation

Attendance in the course is mandatory.  You are responsible for any substantive or procedural information (e.g., alterations in the exam schedule and coverage as well as reading requirements) given in class.  You are expected to attend all in-class sessions, to be fully-engaged in group activities and to complete all assignments.  In the event you are absent from a class, do not look to the instructor to repeat for you personally what has already been presented to the larger class-nor will any documents and papers distributed in class be available at other times. Allowances however will be made for those with medical excuses and those that have legitimate reasons for not being in class, as for example, attendance at a university-sponsored commitment, observance of a religious holy day or military service.  Do not schedule, or have anyone schedule on your behalf, a personal or family activity that will conflict with your participation in this course.

 

In-class quizzes and mini-tests

There will be a total of six short in-class quizzes and mini-tests. All quizzes will be closed-book. The topic of the quiz will be announced in class at least a week prior to the quiz - students are expected to come prepared to take the quiz in-class on the scheduled day. The dates of these quizzes/tests can be found in the course schedule. There will be no make-up quizzes, unless there is a STRONG well-documented reason for missing the quiz, as outlined above. Only five quizzes will count towards your final grade (the quiz with the lowest score will be dropped). Each quiz is worth 10% of your total grade.

 

 

Programming Assignments

There will be a total of two programming assignments which will take you through the different steps of designing and building a basic cryptocurrency. All programming assignments are expected to be completed individually. Outcomes of programming assignments are generally due on Blackboard on the deadline date specified beforehand. No late assignment submissions beyond the official deadline will be accepted (and graded) and will automatically receive zero points, unless there is a STRONG well-documented reason for missing the quiz as outlined above. Each programming assignment is worth 10% of your total grade. Programming assignments cover student learning outcomes 3.

 

Course Paper

All students are expected to complete a course paper on any topic of interest (to the student) related to Bitcoins and Cryptocurrencies. Some example topics include: current state-of-the-art of security and anonymity in Bitcoins, alternate cryptocurrency technologies, history of security/privacy attacks on Bitcoins, Quantum-secure block chains and impact of quantum computing paradigm on Bitcoins and block chains, application of block chains besides cryptocurrencies, etc. Please note that these are just sample topics and students are encouraged to discuss the topic that they want to pursue for the paper with the instructor before working on the paper.   Students are expected to submit a maximum 10-page course paper by the deadline date and make a presentation of their paper during the final two weeks of the class. The exact presentation schedule and slots will be finalized during the semester. Course paper covers student learning outcomes 1 and 2. Course paper is worth 30% (20% for the paper and 10% for the presentation) of your total grade.

 

Important Academic Dates

For the Spring 2018 semester, classes begin Jan 8, 2018, and end April 28, 2018. The last day to drop the class without a grade is Wednesday, January 24, 2018. The last date to drop the class and receive a W (withdrawn) is Tuesday, March 20, 2018. The final exam period is May 2-8, 2018. UTSA academic calendar for Spring 2018 semester can be found at: http://www.utsa.edu/registrar/reg_materials/reg_calendar_spring.pdf

 

Tentative Schedule

Week

Dates

Topics

1

Jan 8 – 12

Course introduction, Introduction to Information Security and Cryptography

2

Jan 15 – 19

Introduction to Cryptography and Cryptocurrencies

3

Jan 22 – 26

How Bitcoin achieves Decentralization (January 24th – Last day to drop without a grade) (extra slides)

4

Jan 29 – Feb 2

How Bitcoin achieves Decentralization (Quiz 1 – January 30th)

5

Feb 5 – 9

Mechanics of Bitcoin (Quiz 2 – February 8)

6

Feb 12 – 16

Mechanics of Bitcoin

7

Feb 19 – 23

How to store and use Bitcoin (Assignment 1 due February 26th)

8

Feb 26 – Mar 2

How to store and use Bitcoin (Quiz 3 – March 1)

9

Mar 5 – 9

Bitcoin Mining

10

Mar 12 – 16

Spring Break (classes do not meet)

11

Mar 19 - 23

Bitcoin Mining (March 20th – Last day to drop and receive an automatic “W”, Quiz 4 – Mar 22)

12

Mar 26 – 30

Bitcoin and Anonymity

13

Apr 2 – 6

Bitcoin and Anonymity

14

Apr 9 – 13

The future of Bitcoin (Quiz 5 – April 12th, Assignment 2 due April 13th)

15

Apr 16 – 20

Student Paper Presentations

16

Apr 23 – 27

Student Paper Presentations (Quiz 6 – April 26th)

17

May 2-8

Final Course Papers due on Blackboard – Friday, May 4th

 

Students with a Disability

       If you may need special consideration because of a disability, I suggest you discuss your situation with me at the very beginning of the course.  If you are registered with Disability Services and anticipate having your exams administered in a manner that varies from what other students will experience, I must, as early as practicable, be made aware of the special testing circumstances that you might require.  It is essential that there be an agreement on a reasonable and satisfactory accommodation, and not one that is excessively burdensome to the conduct of the course or unfair to the other students. Information about Disability Services is available in the UTSA Information Bulletin.  As a general rule, students are only eligible for special treatment or consideration if they are registered with Disability Services and I am instructed by that office as to the special treatment or consideration that is to be allowed.  Consult: http://utsa.edu/disability/

 

Academic Dishonesty

Every student is expected to be familiar with The University's stance regarding scholastic dishonesty:

"The University expects every student to maintain a high standard of individual integrity for work done.  Scholastic dishonesty is a serious offense which includes, but is not limited to, cheating on a test or other class work, plagiarism (the appropriation of another's work and the unauthorized incorporation of that work in one's own work), and collusion (the unauthorized collaboration with another person in preparing college work offered for credit).  In cases of scholastic dishonesty, the faculty member responsible for the class may initiate disciplinary proceedings against the student."  (You may wish to consult the UTSA Information Bulletin on the matter.  In the directory, select “Academic Dishonesty”.).  http://utsa.edu/infoguide/appendices/b.html

 

            My position regarding scholastic dishonesty is that such behavior is intolerable.  One of my obligations as a faculty member is to do my best to assure that the performance of students is evaluated fairly and that all students are treated similarly.  Acts of scholastic dishonesty are inconsistent with both and will be dealt with severely.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The University of Texas at San Antonio Academic Honor Code

 

A.  Preamble

The University of Texas at San Antonio community of past, present and future students, faculty, staff and administrators share a commitment to integrity and the ethical pursuit of knowledge.  We honor the traditions of our university by conducting ourselves with a steadfast duty to honor, courage, and virtue in all matters both public and private.  By choosing integrity and responsibility, we promote personal growth, success, and lifelong learning for the advancement of ourselves, our university, and our community.

B.  Honor Pledge

In support of the ideals of integrity, the students of the University of Texas at San Antonio pledge:

“As a UTSA Roadrunner I live with honor and integrity.”

C.  Shared responsibility

The University of Texas at San Antonio community shares the responsibility and commitment to integrity and the ethical pursuit of knowledge and adheres to the UTSA Honor Code.

 

The Roadrunner Creed

 

The University of Texas at San Antonio is a community of scholars, where integrity, excellence, inclusiveness, respect, collaboration, and innovation are fostered.

 

As a Roadrunner, I will:

            Uphold the highest standards of academic and personal integrity by practicing and expecting fair and ethical conduct;           

            Respect and accept individual differences, recognizing the inherent dignity of each person; Contribute to campus life and the larger community through my active engagement; and

            Support the fearless exploration of dreams and ideas in the advancement of ingenuity, creativity, and discovery.

Guided by these principles now and forever, I am a Roadrunner!

 

 

 

 

 

The following link will take you to a source of University information concerning policies and services regarding disabilities, dishonesty, counseling and tutoring.

 

http://provost.utsa.edu/syllabus.asp