Miguel Castro
Principal Researcher
Microsoft Research
7 J J Thomson Avenue
Cambridge, CB3 0FB, UK.
Tel: +44 1223 479741
Fax: +44 1223 479999

mcastro-at-microsoft-dot-com

I work at Microsoft Research on distributed systems, networking, and security. Before joining MSR, I was a graduate student in the Programming Methodology Group at the MIT Laboratory for Computer Science working on object-oriented databases and Byzantine fault tolerance.

Publications

M. Castro, M. Costa, J.P. Martin, M. Peinado, P. Akritidis, A. Donnelly, P. Barham, and R. Black, " Fast Byte-Granularity Software Fault Isolation ", ACM Symposium on Operating Systems Principles (SOSP'09), October 2009. [pdf]

 

P. Akritidis, M. Costa, M. Castro, and S. Hand, " Baggy Bounds Checking: An Efficient and Backwards-Compatible Defense Against Out-of-Bounds Errors ", 18th USENIX Security Symposium (USENIX Security '09), August 2009. [pdf]

 

M. Costa, J. Crowcroft, M. Castro, A. Rowstron, L. Zhou, L. Zhang, and P. Barham, "Vigilante: End-to-End Containment of Internet Worm Epidemics ", ACM Transactions on Computer Systems, December 2008. [pdf]

 

C. Cadar, P. Akritidis, M. Costa, J.P. Martin, and M. Castro, "Data Randomization ", MSR-TR-2008-120, September 2008. [pdf]

 

P. Akritidis, C. Cadar, C. Raiciu, M. Costa, and M. Castro, "Preventing memory error exploits with WIT ", IEEE Symposium on Security and Privacy, Oakland, California, USA, May 2008. [pdf]

 

M. Castro, M. Costa, and JP Martin, "Better bug reporting with better privacy ", Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'08), Seattle, WA, USA, March 2008. [pdf]

 

M. Costa, M. Castro, L. Zhou, L. Zhang, and M. Peinado, "Bouncer: Securing Software by Blocking Bad Input ", Symposium on Operating Systems Principles (SOSP'07), Stevenson, WA, USA, October 2007. [ pdf ]

 

M. Castro, M. Costa, and T. Harris, "Securing software by enforcing data-flow integrity", Symposium on Operating Systems Design and Implementation (OSDI'06), Seattle, USA, November 2006 [ pdf ] .

 

M. Caesar, M. Castro, E. Nightingale, G. O'Shea, and A. Rowstron, "Virtual Ring Routing: Network Routing Inspired by DHTs", SIGCOMM 2006, Pisa, Italy, September 2006 [ pdf ] .

 

L. Cox, M. Castro, and A. Rowstron, "POS: A Practical Order Statistics Service for Wireless Sensor Networks", International Conference on Distributed Computing Systems (ICDCS'06), Lisboa, Portugal, July 2006 [ pdf ] .

 

M. Costa, J. Crowcroft, M. Castro, A. Rowstron, L. Zhou, L. Zhang, and P. Barham, "Vigilante: End-to-End Containment of Internet Worms", Symposium on Operating Systems Principles (SOSP'05), Brighton, UK, October 2005. [ pdf ] (Award paper)

 

M. Castro, M. Costa, and A. Rowstron, "Debunking some myths about structured and unstructured overlays", Symposium on Networked Systems Design and Implementation (NSDI'05), Boston, MA, USA, May 2005. [ pdf ]

 

M. Costa, Jon Crowcroft, M. Castro and A. Rowstron, "Can we contain Internet worms?", Workshop on Hot Topics in Networks (HotNets III), San Diego, California, USA, November 2004. [ pdf ]

 

A. Singh, M. Castro, P. Druschel and A. Rowstron, "Defending against Eclipse attacks on overlay networks", SIGOPS European Workshop, Leuven, Belgium, Sept. 2004. [ pdf ]

 

M. Castro, M. Costa and A. Rowstron, "Performance and Dependability of structured peer-to-peer overlays", International Conference on Dependable Systems and Networks (DSN-2004), Florence, Italy, (June 2004) [ PDF]

 

M. Costa, M. Castro, A. Rowstron, and P. Key, "PIC: Practical Internet Coordinates for Distance Estimation", International Conference on Distributed Computing Systems (ICDCS'04), Tokyo, Japan , March 2004. [pdf ]

 

M. Castro, M. Costa and A. Rowstron, "Should we build Gnutella on a structured overlay?" Workshop on Hot Topics in Networks (HotNets-II), Cambridge, MA, USA, November 2003. [ pdf ]

 

M. Castro, P. Druschel, A-M. Kermarrec and A. Rowstron, "Scalable Application-level Anycast for Highly Dynamic Groups", Networked Group Communication (NGC'03), Munich, Germany, September 2003 [ pdf ] .

 

M. Castro, R. Rodrigues and B. Liskov, "BASE: Using Abstraction to Improve Fault Tolerance", ACM Transactions on Computer Systems (TOCS), Volume 21, Issue 3, August 2003 [ pdf ] .

 

M. Castro, R. S. Foster, K. Gunn, and E. B. Roberts, "Managing R&D Alliances Within Government: The "Virtual Agency" Concept", IEEE Transactions on Engineering Management, Volume 50, Number 3, August 2003 [ pdf ] .

 

M. Castro, P. Druschel, A-M. Kermarrec, A. Nandi, A. Rowstron and A. Singh, "SplitStream: High-bandwidth multicast in a cooperative environment", Symposium on Operating System Principles (SOSP'03), Lake Bolton, New York, USA October, 2003 [ pdf ] .

 

M. Castro, M. B. Jones, A-M. Kermarrec, A. Rowstron, M. Theimer, H. Wang and A. Wolman, "An Evaluation of Scalable Application-level Multicast Built Using Peer-to-peer overlays", Conference on Computer Communications (INFOCOM'03), San Francisco, CA, USA, April, 2003 [ pdf ] .

 

R. Mahajan, M. Castro and A. Rowstron, "Controlling the Cost of Reliability in Peer-to-peer Overlays", Peer-to-Peer Systems II (IPTPS'03), Berkeley, CA, February 2003 [ pdf ] .

 

M. Castro, P. Druschel, A-M. Kermarrec, A. Nandi, A. Rowstron and A. Singh, "SplitStream: High-bandwidth content distribution in a cooperative environment", Peer-to-Peer Systems II (IPTPS'03), Berkeley, CA, February 2003 [ pdf ] .

 

M. Castro, P. Druschel, Y. C. Hu and A. Rowstron, "Proximity neighbor selection in tree-based structured peer-to-peer overlays", Technical report MSR-TR-2003-52, February 2003 [ pdf ] .

 

M. Castro, P. Druschel, A. Ganesh, A. Rowstron, and D. S. Wallach, "Secure routing for structured peer-to-peer overlay networks", Symposium on Operating Systems Design and Implementation (OSDI'02), Boston, MA, USA, December 2002, [ pdf ] .

 

A. Adya, W. J. Bolosky, M. Castro, G. Cermak, R. Chaiken, J. R. Douceur, J. Howell, J. R. Lorch, M. Theimer, R. P. Wattenhofer, "FARSITE: Federated, Available, and Reliable Storage for an Incompletely Trusted Environment", Symposium on Operating Systems Design and Implementation (OSDI'02), Boston, MA, USA, December 2002, [ pdf ] .

 

M. Castro and B. Liskov, "Practical Byzantine fault-tolerance and proactive recovery", ACM Transactions on Computer Systems (TOCS), Volume 20, Issue 4, November 2002, [ pdf ] .

 

M. Castro, P. Druschel, A-M. Kermarrec and A. Rowstron, "SCRIBE: A large-scale and decentralised application-level multicast infrastructure", IEEE Journal on Selected Areas in Communication (JSAC), Volume 20, Number 8, October 2002, [ pdf ] .

 

M. Castro, P. Druschel, A-M. Kermarrec and A. Rowstron, "One ring to rule them all: Service discovery and binding in structured peer-to-peer overlay networks", SIGOPS European Workshop, St. Emilion, France, September, 2002. [ pdf ] .

 

M. Castro, P. Druschel, Y. C. Hu and A. Rowstron, "Topology-aware routing in structured peer-to-peer overlay networks", International Workshop on Future Directions in Distributed Computing (FuDiCo), Bertinoro, Italy, June, 2002. [ pdf ] .

 

A. Rowstron, A-M. Kermarrec, M. Castro and P. Druschel, "SCRIBE: The design of a large-scale event notification infrastructure", Networked Group Communication (NGC'01), London, UK, November 2001. [ pdf ] .

 

R. Rodrigues, M. Castro, and B. Liskov, "BASE: Using Abstraction to Improve Fault Tolerance", Symposium on Operating Systems Principles (SOSP'01), Banff, Canada, October 2001, [ pdf ] (Award paper)

 

M. Castro, and B. Liskov, "Byzantine fault tolerance can be fast", International Conference on Dependable Systems and Networks (DSN'01), Goteborg, Sweden, July 2001, [ pdf ]

 

M. Castro, R. Rodrigues, and B. Liskov, "Using Abstraction to Improve Fault Tolerance", Workshop on Hot Topics in Operating Systems (HotOS'01), Elmau/Oberbayern, Germany, May 2001. [ pdf ] .

 

M. Castro, "Practical Byzantine Fault Tolerance", Technical Report MIT/LCS/TR-817. MIT Laboratory for Computer Science, Cambridge, MA, January 2001. [ pdf ] (Ph.D. Thesis, George M. Sprowls Award)

 

M. Castro, and B. Liskov, "Proactive Recovery in a Byzantine-Fault-Tolerant System", Symposium on Operating Systems Design and Implementation (OSDI'00), San Diego, USA, October 2000, [ pdf ] (Award paper)

 

B. Liskov, M. Castro, L. Shrira, and A. Adya, "Providing Persistent Objects in Distributed Systems", European Conference on Object-Oriented Programming (ECOOP'99), Lisboa, Portugal, June 1999, [ pdf ]

 

M. Castro and B. Liskov, "A Correctness Proof for a Practical Byzantine-Fault-Tolerant Replication Algorithm", Technical Memo MIT/LCS/TM-590, MIT Laboratory for Computer Science, Cambridge, MA, USA, Lisboa, June 1999, [ pdf ]

 

M. Castro, and B. Liskov, "Practical Byzantine Fault Tolerance", Symposium on Operating Systems Design and Implementation (OSDI'99), New Orleans, USA, February 1999, [ pdf ]

 

M. Castro, A. Adya, and B. Liskov, "Lazy Reference Counting for Transactional Storage Systems", Technical Memo MIT/LCS/TM-567, MIT Laboratory for Computer Science, Cambridge, MA, USA, November 1997. [ pdf ]

 

M. Castro, A. Adya, B. Liskov and A. C. Myers, "HAC: Hybrid Adaptive Caching for Distributed Storage Systems", Symposium on Operating System Principles (SOSP'97), Saint Malo, France, October 1997, [ pdf ]

 

A. Adya, M. Castro, B. Liskov, U. Maheshwari and L. Shrira , "Fragment Reconstruction: Providing Global Cache Coherence in a Transactional Storage System", International Conference on Distributed Computing Systems (ICDCS'97), Baltimore, Maryland, May 1997, [ pdf ]

 

M. Costa, P. Guedes, M. Sequeira, N. Neves and M. Castro, "Lightweight Logging for Lazy Release Consistent Distributed Shared Memory" Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation (OSDI'96), Seattle, WA, USA, October 1996, [ pdf ]

 

L. Shrira, B. Liskov, M. Castro and A. Adya, "How to Scale Transactional Storage Systems", SIGOPS European Workshop, Connemara, Ireland, September 1996. [ pdf ]

 

M. Castro, P. Guedes, M. Sequeira and M. Costa, "Efficient and Flexible Object Sharing" Proceedings of the International Conference on Parallel Processing (ICPP'96), Chicago, USA, August 1996. [ pdf ]

 

B. Liskov, A. Adya, M. Castro, M. Day, S.Ghemawat, R. Gruber, U. Maheshwari, A. Myers and L. Shrira, "Safe and Efficient Sharing of Persistent Objects in Thor", International Conference on Management of Data (SIGMOD'96), Montreal Canada, June 1996. [ pdf ]

 

B. Liskov, A. Adya, M. Castro and Q. Zondervan, "Type-Safe Heterogeneous Sharing can be Fast", International Workshop on Persistent Object Systems (POS'96), Cape May, USA, May 1996. [ pdf ]

 

L. Shrira, B. Liskov, M. Castro and A. Adya, "Fragment Reconstruction: A New Cache Coherence Scheme for Split Caching Storage Systems (Looking at the Doughnut and not the Hole)", International Workshop on Persistent Object Systems (POS'96), Cape May, USA, May 1996. [ pdf ]

 

N. Neves, M. Castro and P. Guedes, "A Checkpoint Protocol for an Entry Consistent Shared Memory System", Symposium on Principles of Distributed Computing (PODC'94), Los Angeles USA, August 1994. [ pdf ]

 

P. Guedes and M. Castro, "Distributed Shared Object Memory", Workshop on Workstation Operating Systems (now HotOS), Napa, CA, USA, October 1993. [ pdf ]

 

M. Castro, N. Neves, P. Trancoso and P. Sousa, "MIKE: a Distributed Object-oriented Programming Platform on top of the Mach Micro-Kernel", USENIX Mach Conference (MACHNIX'93), Santa Fe USA, April 1993. [ pdf ]