Secure Program Synthesis