The Maryland Cybersecurity Center has strong expertise in programming languages and cryptography and we have recently been combining methods from both areas to develop exciting new ideas to support what I call "secure computation." Roughly speaking, by this term I mean computations that may be executed by multiple parties that do not completely trust one another. One scenario is cloud computing, in which the provider is not (or should not be) completely trusted by the client to keep data private. Another scenario is a distributed mirroring, in which data need not be private, but clients would like assurance that queries are processed correctly. Yet another is multiple peers who would like to compute something over their private secrets but reveal only the output of the computation and nothing more. In all of these areas we have developed new ideas for making secure computation more performant and more trustworthy.
Please RSVP Here!
Michael W. Hicks is an associate professor in the Computer Science Department and UMIACS at the University of Maryland, College Park. He received is Ph.D. in Computer and Information Science from the University of Pennsylvania in August 2001, and then spent one year as a post-doctoral associate affiliated with the Information Assurance Institute of the Computer Science Department at Cornell University. During academic year 2008 he spent his sabbatical in Cambridge, England visiting Microsoft Research and the University of Cambridge Computer Laboratory.
His research focuses on using programming languages and analyses to improve the security, reliability, and availability of software. Noteworthy among his research accomplishments is the development of analysis and compilation tools for enabling software to be safely updated without shutting it down. He has explored the design of new programming languages and analysis tools for automatically discovering or remediating software flaws and security vulnerabilities. He has also conducted studies on the utility of defect detection tools according on outcomes of human users, and explored distributed systems design and evaluation, particularly when adaptivity and security are system goals. Recently he has turned his attention to exploring means for securing remote and distributed computations among untrusted parties by combining cryptographic and programming language techniques.
During his career he has published more than 85 refereed conference and journal papers, many in highly selective venues. He won the ACM SIGPLAN Doctoral Dissertation Award in 2001, and an NSF CAREER award in 2003, and has three times won the Department of Computer Science's Faculty Teaching Award. He recently served as Program Chair for the 2012 ACM Symposium on the Principles of Programming Languages, the premier venue for theoretical contributions to programming languages.