Thanks for the question. I understand you are experiencing error 3004 when attempting to update your iPhone. The following article addresses this error:
Errors 3000-3999 (3004, 3013, 3018, 3164, 3194, and so on): Error codes in the 3000 range generally mean that iTunes can't contact the update server (gs.apple.com) on ports 80 or 443.
1. Update to the latest version of iTunes.
2. Verify the computer's date and time are accurate.
3. Check that your security or firewall software isn't interfering with ports 80 or 443 or with the server gs.apple.com.
4. Follow these steps to troubleshoot security software. Often, uninstalling third-party security software will resolve these errors.
5. An entry in your hosts file may be redirecting requests to gs.apple.com (go to "Unable to contact the iOS software update server gs.apple.com" above).
6. Internet proxy settings can cause this issue. If you're using a proxy, try again without using a proxy.
7. Test restoring while connected to a known-good network.
Error 3004: If you're using a Mac, you may be able to resolve an error 3004 by quitting iTunes and using the following command in the command line: dscacheutil -flushcache.