7
5
A pay-to-script-hash/P2SH full redeem script can be up to 520-bytes in size. Just to clarify, prior to being revealed/spent, is the redeem script stored in the spender/Bob's wallet or elsewhere?
The developer guide says:
"When Bob wants to spend the output, he provides his signature along with the full (serialized) redeem script in the signature script." (https://bitcoin.org/en/developer-guide#p2sh-scripts)
Soroushjp states:
"The redeem script itself is only revealed, checked against the redeem script hash, and evaluated during the spending transaction." (http://www.soroushjp.com/2014/12/20/bitcoin-multisig-the-hard-way-understanding-raw-multisignature-bitcoin-transactions/)
Antonpuolous states:
"P2SH shifts the burden in data storage for the long script from the output (which is in the UTXO set and therefore affect memory) to the input (only stored on the blockchain)." (2014:133)
(This question asks almost the same thing: Where the P2SH script gets written?)
(There's an unintended relationship with this question "Storing scripts (smart contracts) outside the blockchain", insofar as the location of redeem scripts.)

Just to clarify, do you mean where the full script is stored by the one who builds it until he decides to spent the UTXOs locked by its has? (All the UTXOs that contain that specific hash as the output scriptPubkey)? – sr-gi – 2017-03-22T13:10:35.427
Yes, literally where is it stored/kept until it is revealed for spend? In the diagram, is says Bob's computer. I just want to nail down where/how it is stored in a typical usage scenario. – Colman McMahon – 2017-03-22T13:28:29.943