The document describes CS2, a searchable cryptographic cloud storage system. It discusses building blocks like searchable symmetric encryption (SSE), proofs of storage, and search authenticators. It outlines limitations of previous approaches and ideas to address them, such as making SSE dynamic and adaptively secure. The CS2 system uses a combination of these techniques to enable standard and assisted search on encrypted cloud data. It defines protocols formally and presents experimental results for a C++ implementation, finding that verification is the main bottleneck and office documents perform best. Overall, CS2 achieves practical search on encrypted cloud storage through new cryptographic techniques and protocol designs.