On the Achievability of Simulation-Based Security for Functional Encryption