Path ORAM is a practical Oblivious RAM construction that allows a client to retrieve or update encrypted data on a server without revealing the access pattern. It uses a binary tree structure where blocks are randomly assigned positions and must reside on the path to their position. The client maintains a position map and stash, while the server stores an encrypted binary tree. Access operations read the entire path, update the position map, and write the new path back to obliviously maintain the structure's invariants. Path ORAM achieves logarithmic bandwidth overhead, making it more efficient than previous ORAM schemes.