In this paper, we construct two verifiable attribute-based encryption (VABE) schemes. One is with a single authority, and the other is with multi authorities. Not only our schemes are proved secure as the previous ABE schemes, they also provide a verification property. Adding the verification property has a few advantages: first, it allows the user to immediately check the correctness of the keys, if not, he only needs the authority to resend the corresponding shares, especially, in multi-authority case, if the key does not pass the check, the user only needs to ask the particular authority to resend its own part, without need to go to all the authorities, this saves a lot of time when error appears; second, if the keys pass the verification but the user still does not rightly decrypt out the message, something might be wrong with the attributes or ciphertexts, then, the user has to contact with the encryptor. We formalize the notion of VABE and prove our schemes in our model. 1