I use symmetric encryption in emacs 24 and somewhere along the line the variable named epa-file-cache-passphrase-for-symmetric-encryption seems to have disappeared from emacs. I am going crazy entering the passphrase twice each time I try to save or open a file. I must have missed some big change but google does not seem to be helping much figure out what I need to do to get some sort of caching of the passphrase during a session.
I cannot comment on Emacs 24, but here's how I solved this for Emacs 25:
By default epa in Emacs 25 uses gpg2 (GnuPG 2.x). According to the Epa manual, caching with gpg2 requires gpg-agent.
For some reason, I had to enable pinentry in the minibuffer, see: Enabling minibuffer pinentry with Emacs 25 and GnuPG 2.1 on Ubuntu Xenial
The documentation string for the variable
epa-file-cache-passphrase-for-symmetric-encryption states that it has no effect with GnuPG 2.0. I don't know whether that is literally for 2.0, but if it is, it's certainly misleading as with GnuPG 2.1.11 (default on Ubuntu Xenial), you have to set it to t in order to enable password caching for symmetric encryption.
To prevent EPG from prompting for a key every time you save a file, put the following at the top of your file:
-*- epa-file-encrypt-to: ("firstname.lastname@example.org") -*-