iPod Touch 3G – iPod3,1_4.0.2_8A400_Restore.ipsw
iPad 3G / WiFi – iPad1,1_3.2.2_7B500_Restore.ipsw
iPhone 3G – iPhone1,2_4.0.2_8A400_Restore.ipsw
iPhone 3GS – iPhone2,1_4.0.2_8A400_Restore.ipsw
iPhone 4 – iPhone3,1_4.0.2_8A400_Restore.ipsw
I highly suggest saving your SHSH blobs for 4.0.1 using TinyUmbrella before Apple stops signing 4.0.1 requests. As it currently stands, you won’t be able to restore 4.0.1 (or older) on any iPhone 4 or 3GS once Apple stops signing it. Saving your SHSH blobs allows you to cache Apple’s response which will enable you to revert to 4.0.1 in the future if you so desire. This really doesn’t have anything to do with jailbreaking, though jailbreakers may have more desire to revert to an older version than regular users. If you think you may ever need to revert to an older iOS version (e.g. to use an important app which hasn’t been updated yet), you’ll want to cache your SHSH blobs. If you do have a jailbroken phone, Cydia can automatically do this for you with its “make my life easier” option.