I think you would be better off having only your checkout pages being secure. Search engines see http: and https: as being different websites, so you have the possibility of splitting the benefits of internal linking among two sites, not to mention potential duplicate content problems.
https: also takes longer to load. So, unless you're a bank, where users might want to see the padlock during their entire session, using https: only for checkout is a good idea. Just make sure that once you do this there's no way to leave the checkout area to another portion of your site under https.
This usually happens when your standard navigation doesn't specify a protocol. Therefore the links on the checkout pages use https, while those on normal pages use http. By specifying http:// in your navigation, you eliminate the problem. You might also consider disallowing robot access to your checkout pages in robots.txt.