Concealing Backdoors in Federated Learning by Trigger-Optimized Data Poisoning