CS 395T:Design and Implementation of Trusted Services

Professor: Lorenzo Alvisi



Office: ACES 6.244
Phone: 471-9792
Email: lorenzo@cs.utexas.edu
Office Hours: M/W 11:00-12:00



Prerequisites

It is assumed that students are familiar with the material that is typically discussed in introductory courses in operating systems and distributed computing. Papers that may provide useful background are given below (the list of papers will grow during the semester).

  • State Machine Replication

    1. F. B. Schneider. Implementing Fault-Tolerant Servieces Using the State Machine Approach: A Tutorial ACM Computing Surveys 22(4):299-319, December 1990.
    2. L. Lamport. Paxos Made Simple Distributed Computing Column of ACM SIGACT News 32(4):51--58, December 2001.
    3. L. Lamport. The Part-Time Parliament In ACM Transactions on Computer Systems, 16(2):133-169, May 1998.
    4. R. Boichat, P. Dutta, S. Frolund, and R. Guerraoui. Deconstructing Paxos In ACM SIGACT News, Distributed Computing column, 34(1):47-47, March 2003.
  • Byzantine agreement

    1. L. Lamport, R. Shostak, and M. Pease. The Byzantine Generals Problem ACM Transactions on Programming Languages and Systems 4(3):382-401, July 1982.

    Topics

    I have associated to each topic an initial list of papers. These lists will be modified and expanded as necessary during the semester.

  • Byzantine Paxos

    Class Notes (Lorenzo Alvisi)
    1. M. Castro and B. Liskov. Practical Byzantine Fault Tolerance. In Proceedings of the Third Symposium on Operating Systems Design and Implementation (OSDI '99), New Orleans, USA, February 1999.
    2. M. Castro and B. Liskov. Proactive Recovery in a Byzantine-Fault-Tolerant System. In Proceedings of the Fourth Symposium on Operating Systems Design and Implementation (OSDI '00), San Diego, USA, October 2000.
    3. R. Rodrigues, M. Castro, and B. Liskov. BASE: Using abstraction to improve fault tolerance. In Proceedings of the 18th ACM Symposium on Operating Systems Principles, pp. 15-28, Banff, Canada, October 2001.
    4. J. Yin, J.P. Martin, A. Venkataramani, L. Alvisi, and M. Dahlin. Separating Agreement from Execution for Byzantine Fault-Tolerant Services. In Proceedings of the 19th ACM Symposium on Operating Systems Principles, pp. 15-28, Bolton Landing, NY, October 2003.
  • Quorum Systems

    Class Notes (Navendu Jain)
    1. D. H. Gifford. Weighted voting for replicated data. In Proceedings of the 7th ACM Symposium on Operating Systems Principles. Pages 150--159, Asilomar Conference Grounds, Pacific Grove, CA USA, December 10--12, 1979. ACM.
    2. R. H. Thomas. A majority consensus approach to concurrency control for multiple copy databases. ACM Transactions on Database Systems, 4(2):180--209, June 1979.
    3. H. Garcia-Molina and D. Barbara. How to assign votes in a distributed system. Journal of the ACM, 32(4):841--860, October 1985.
    4. D. Agrawal and A. El Abbadi. An efficient and fault-tolerant solution for distributed mutual exclusion. ACM Transactions on Computer Systems, 9(1):1-20, February 1991.
    5. M. Herlihy. A quorum-consensus replication method for abstract data types. ACM Transactions on Computer Systems, 4(1):32-53, February 1986.
    6. D. Malkhi, M. Reiter, and R. Wright. Probabilistic quorum systems. In Proceedings of the Annual ACM Symposium on Principles of Distributed Computing, pp. 267-273 June 1997.
    7. I. Abraham, D. Malkhi. Probabilistic quorums for dynamic systems. In 17th International Symposium on Distributed Computing (DISC 2003), Sorrento, Italy.
    8. M. Naor and A. Wool. The load, capacity, and availability of quorum systems, SIAM Journal of Comput., Vol. 27, No. 2, 423-447, April 1998.
    9. M. Maekawa. A √(n) algorithm for mutual exclusion in decentralized systems. ACM Transactions on Computer Systems, 3(2):145-159, 1985.
    10. L. Lamport. On interprocess communications (part ii: algorithms). Distributed Computing, 1:86-101, 1986.
    11. D. Malkhi. Quorum Systems. In The Encyclopedia of Distributed Computing. Joseph Urban and Partha Dasgupta Editors, Kluwer Academic Publishers.
  • Byzantine Quorum Systems

    Class Notes (Anurag Agarwal)
    1. D. Malkhi and M. Reiter. Byzantine quorum systems. Distributed Computing, 11(4):203--213, 1998.
    2. G. Chokler, D. Malkhi, and M. Reiter. Backoff protocols for distributed mutual exclusion and ordering. In Proceedings ICDCS 2001.
    3. D. Malkhi and M. Reiter. An architecture for survivable coordination in large distributed systems. IEEE Transactions on Knowledge and Data Engineering, 12(2):187--202, April 2000.
    4. D. Malkhi, M. K. Reiter, D. Tulone and E. Ziskind. Persistent objects in the Fleet system. In Proceedings of the 2nd DARPA Information Survivability Conference and Exposition (DISCEX II), June 2001.
    5. J.P. Martin, L. Alvisi, and M. Dahlin Minimal Byzantine Storage. In Proceedings of the 16th International Symposium on Distributed Computing (DISC 2002), Toulouse, France, October 2002, pp. 311-326.
    6. J.P. Martin and L. Alvisi Dynamic Byzantine Storage. Under review
  • Gossip

    ClassNotes (Harry Li)
    1. A. Demers, D. Greene, C. Hauser, W. Irish, and J. Larson. Epidemic algorithms for replicated database maintenance. In Proceedings of the 6th Annual ACM Symposium on Principles of Distributed Computing, Vancouver, BC, August 1987, pp.1-12.
    2. K.P. Birman, M. Hayden, O. Ozkasap, Z. Xiao, M. Budiu, and Y. Minsky. Bimodal Multicast. ACM Transactions on Computer Systems, 17(2):41-88, May 1999.
    3. D. Kempe and J. Kleinberg. Protocols and Impossibility Results for Gossip-based Communication Mechanisms. In Proceedings of the 43rd Annual IEEE Symposium on Foundations of Computer Science (FOCS'02), Vancouver, Canada, November 2002, pp. 471-480.
    4. P. Th. Eugster, R. Guerraoui, S.B. Handurukande, P. Kouznetsov, A.-M. Kermarrec Lightweight Probabilistic Broadcast ACM Transactions on Computer Systems (TOCS) 21(4):341-374, November 2003.
  • Secret Sharing

    Class Notes (Ankur Gupta) / Class Notes (Razvan Surdulescu)
    1. A. Shamir. How to share a secret. Communications of the ACM, 22(11):612--613, November 1979.
    2. M. P. Herlihy and J. D. Tygar. How to make replicated data secure. In C.Pomerance, editor, Advances in Cryptology---Crypto'87, A Conference on the Theory and Applications of Cryptographic Techniques, Santa Barbara, California, USA, August 16--20, 1987. Proceedings, volume 293 of Lecture Notes in Computer Science, pages 120--127. Springer, 1988.
    3. Michael O. Rabin. Efficient dispersal of information for security, load balancing, and fault tolerance. Journal of the ACM, 36(2):335-348, April 1989.
    4. Hugo Krawczyk. Secret Sharing Made Short. In Douglas R. Stinson, editor, Advances in Cryptology---Crypto'93, 13th Annual International Cryptology Conference, Santa Barbara, California, USA, August 22-26, 1993. Proceedings, pages 136--146, volume 773 of Lecture Notes in Computer Science. Springer, 1994.
    5. M. Ito, A. Saito, and T. Nishizeki. Secret sharing scheme realizing general access structure. In  Proceedings of the IEEE Global Communication Conference (GLOBALCOM'87): 99--102, Tokyo, Japan, November 1987.
    6. Josh Cohen Benaloh.  Secret Sharing Homomorphisms: Keeping Shares of A Secret Sharing. In Andrew M. Odlyzko, editor, Advances in Cryptology--CRYPTO '86, Santa Barbara, California, USA, 1986. Proceedings, pages 251--260, volume 263 of Lecture Notes in Computer Science. Springer, 1987.
    7. Josh Cohen Benaloh and Jerry Leichter. Generalized Secret Sharing and Monotone Functions. In Shafi Goldwasser, editor, Advances in Cryptology--CRYPTO '88, Santa Barbara, California, USA, 1988. Proceedings, pages 27--35, volume 403 of Lecture Notes in Computer Science. Springer, 1990.
  • Secure Multiparty Computation

    1. D. Chaum, C. Crepeau, and I. Damgard. Multi-party unconditionally secure protocols. In Proc. 20th ACM Symp. on Theory of Computing, pages 11--19, Chicago, 1988. ACM.
    2. M. Ben-Or, S. Goldwasser, and A. Wigderson. Completeness theorems for non-cryptographic fault-tolerant distributed computation. In Proc. 20th Ann. ACM Symp. on Theory of Computing, pages 1--10, 1988.
    3. A.C. Yao. Protocols for secure computations, Proc. of FOCS 82, pp. 160-164. IEEE
  • Threshold Cryptography

    Class Notes (Brandon Hall)
    1. Y. Desmedt and Y. Frankel. Threshold cryptosystems. In G. Brassard, editor, Advances in Cryptology---Crypto'89, the 9th Annual International Cryptology Conference, Santa Barbara, California, USA, August 20--24, 1989, Proceedings, volume 435 of Lecture Notes in Computer Science, pages 307--315. Springer, 1990.
    2. Y. Frankel and Y. Desmedt. Parallelreliable threshold multisignature. Tech. Report TR-92-04-02, Dept. of EE & CS, Univ. of Wisconsin-Milwaukee, April 1992.
    3. Y. Desmedt. Some recent research aspect of threshold cryptography. In Eiji Okamoto, George Davida, and Masahiro Mambo, editors, Information Security, The 1st International Workshop, ISW'97, Tatsunokuchi, Ishikawa Japan, September 17--19, 1997, Proceedings, volume 1396 of Lecture Notes in Computer Science, pages 158--173. Springer February 1998.
    4. T. Rabin. A simplified approach to threshold and proactive RSA. In H. Krawczyk, editor, Advances in Cryptology---Crypto'98, the18th Annual International Cryptology Conference, Santa Barbara, CA USA, August 23--27, 1998, volume 1462 of Lecture Notes in Computer Science, pages 89--104. Springer, 1998.
  • Verifiable Secret sharing and Proactive Secret Sharing

    1. P. Feldman. A practical scheme for non-interactive verifiable secret sharing. In Proceedings of the 28th Annual Symposium on the Foundations of Computer Science:427--437. IEEE, October 12--14, 1987.
    2. T. Pedersen. Non-interactive and information-theoretic secure verifiable secret sharing. In J. Feigenbaum, editor, Advances in Cryptology---Crypto'91, the 11th Annual International Cryptology Conference, Santa Barbara, CA USA, August 11--15, 1991, Proceedings, volume 576 of Lecture Notes in Computer Science, pages 129--140. Springer, 1992.
    3. S. Jarecki. Proactive secret sharing and public key cryptosystems. Master's thesis, Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology, Cambridge, MA USA, September 1995.
    4. A. Herzberg, S. Jarecki, H. Krawczyk, and M. Yung. Proactive secret sharing or: How to cope with perpetual leakage. In D. Coppersmith, editor, Advances in Cryptology---Crypto'95, the 15th Annual International Cryptology Conference, Santa Barbara, CA USA, August 27--31, 1995, Proceedings, volume 963 of Lecture Notes in Computer Science, pages 457--469. Springer, 1995.
    5. R. Canetti, R. Gennaro, A. Herzberg, and D. Naor. Proactive security: Long-term protection against break-ins. CryptoBytes (The technical newsletter of RSA Laboratories, a division of RSA Data Security Inc.), 3(1):1--8, Spring 1997.
    6. L. Zhou, F.B. Schneider, R. Van Renesse.A secure distributed online certification authority. ACM Transactions on Computer Systems, 20(4):329-368, 2002.
  • Systems