Lattice Based Encryption