Assignment 2 (Ungraded)
COMPSCI 725 Software Security
Clark Thomborson
Computer Science Department, University of Auckland
4th May, 2001
Instructions:�
This assignment will not be graded.� It is designed to give you some practical experience with the
X.509 standard and its applications.�
You may work alone or in teams, and you may ask help from anyone in the
world.� I will give you feedback on your
completed assignment.
1. Send me a very short email message, signed by an X.509 certificate, from your University email account.� Your message should not be encrypted.� I suggest you start by examining the �help� files in your favourite email client, to discover how to obtain and use a free or inexpensive X.509 certificate.� If your email client is not X.509-aware, you will have to use a different email client to complete this assignment.� Hint: you may obtain a �free personal email certificate� from Thawte Digital Certificate Services (http://www.thawte.com).
2. Examine my encrypted response to your signed message.� My email message to you will be encrypted with your public key.� Discover a way to prepare a textfile containing my complete response message, in both its encrypted and cleartext forms, and send this textfile back to me by email.
3. Many of you have off-campus email accounts as well as University ones.� Design or discover (by internet or literature search) a protocol that would allow such students to communicate their off-campus email addresses to me, so that I can easily and safely maintain an �email alias� list for my students who prefer to use off-campus email for University work.� Your protocol should have the following attributes:
� Efficiency (ideally your protocol would consist of a single, short, self-explanatory email message which asks an instructor to add or delete an alias)
� Convenience from the student�s perspective (ideally your protocol would be easily explained to any postgraduate computer science student, who could then execute your protocol in a few minutes after they obtain an X.509 certificate)
� Convenience from the instructor�s perspective (ideally your protocol would be easily used by any computer science instructor, who wouldn�t have to spend more than a few seconds to add or delete an �email alias� for a student)
� Integrity (only a student with access to a University email account should be able to convince an instructor to add or delete an off-campus alias)
� Auditability (both the student and the instructor should be able to conduct a �security audit� which will have some chance of discovering attacks on the security of your protocol)
� Non-repudiation (an instructor could show a student a transcript of the messages requesting changes to their alias list.� Unless the underlying cryptography is �broken�, this transcript would prove one of two things: either the student lost control of their X.509 signature authority, or the student actually did request the changes shown in the transcript.)
I cannot promise to give you a complete security analysis of your protocol, however I will comment on any protocols I receive.� If you work in teams on this problem, please submit as a team so that I do not waste time commenting on the same protocol more than once.