I am struggling to understand the proof of security in the UC-framework of the OT by PVW.
The cases I don't understand are the cases where:
i) Both parties are corrupted. In this case, they say that the simulator just lets the adversary generate and exchange all the messages. But isn't the simulator supposed to extract their inputs? What does the simulator sends to the ideal functionality in this case? How is this case indistinguishable from the ideal-world execution?
ii) Both parties are honest. In this case, they say that the simulator just simulates internally the protocol between the parties and delivers the exchanged messages to the adversary in the real-world. I don't quite understand how this simulation is indistinguishable from the ideal-world execution because the simulator does not have access to the inputs of the parties in the ideal world. So, it is unlikely that the parties in the simulated protocol end up with the same inputs and outputs. What am I missing in this case?
Thanks!