Posts by Collection

portfolio

publications

Group Oblivious Message Retrieval

Published in In preparation for submission to Crypto 2023, 2022

This paper is a is to leverage a third-party server to scan through the bullet board on behalf of recipients and retrieve the pertinent messages without knowing who is asking for the messages or which messages it sends back. We further consider the scenario when senders want to address a single message to a group of recipients either pre-formed or chosen on-flight by senders.

Download here

Published in , 1900

talks

teaching

COMS W3107 - Clean Object-Oriented Design

Undergraduate course, Columbia University, Computer Science Department, 2021

A course in designing, documenting, coding, and testing robust computer software, according to object-oriented design patterns and clean coding practices. Taught in Java.Object-oriented design principles include: use cases; CRC; UML; javadoc; patterns (adapter, builder, command, composite, decorator, facade, factory, iterator, lazy evaluation, observer, singleton, strategy, template, visitor); design by contract; loop invariants; interfaces and inheritance hierarchies; anonymous classes and null objects; graphical widgets; events and listeners; Java’s Object class; generic types; reflection; timers, threads, and locks.

COMS W4156 - Advanced Software Engineering

Graduate Course, Columbia University, Computer Science Department, 2022

A course in software lifecycle using frameworks, libraries and services. Major emphasis on software testing. Centers on a team project.