New application scenarios (most notably arising from cloud computing) have given rise to a host of new security concerns. Unsurprisingly, classical notions of encryption leave much to be desired for dealing with these new application scenarios and concerns. Motivated by these concerns, we develop novel encryption systems that provide vastly greater functionality than classical notions of encryption. In particular, we focus on two broad research directions: Functional encryption and Efficient Secure Encodings of Computation. In functional encryption, instead of encrypting a message to an individual user, one can encrypt a general function f. If a receiving user possesses certain credentials X, then it obtains a secret key SK-X corresponding to those credentials. When this user obtains a ciphertext that is an encryption of f, by applying the decryption algorithm it obtains f(X), and no more. Efficient Secure Encodings of Computation is a totally new notion that has fundamental applications to novel expressive encryption schemes including functional encryption with public keys (recently introduced by the PI under the terminology ?Worry-Free Encryption?), and most notably controlled Homomorphic Encryption -- where expressive homomorphisms are possible on ciphertexts, but the initial encryptor can control what homomorphisms are allowed.