Constructing pairing-free certificateless public key encryption with keyword search