I've had a look on-line at the
Bitcoin wiki and
Lighthouse Git Hub page and can't seem to find a direct answer to these questions, hopefully this is not a repeat post.
I think I understand how lighthouse transactions are formed and verify differently through their use of SIGHASH_ALL and SIGHASH_ANYONECANPAY; the person who wishes to receive donations in an all or nothing capacity creates a transaction with an output spending to their address, where the inputs are effectively blank and then submitted by donors. Assuming I have this right I have two questions:
1. How can a recipient of pledges be sure that their pledges cannot be spent before they redeem their Lighthouse transaction - I'm guessing that they can't and they are reliant on their view of the blockchain and what the latest transaction sitting in all the miners' memory pools are to make sure all the Lighthouse transition's inputs are still valid and have not been spent. So this would be resolved (aside of malicious behaviour) by having an agreed end and start time for funding.
2. I've heard people say that transaction malleability is a benefit to the Lighthouse pledging system. Can someone please explain how this would work?