It isn't a bad idea but I think it isn't doable. Also, it does not address the problem of repressing political speech. Organizations will still want to speak out and speaking out takes money. There is no way around that.
Full and prompt public disclosure of donors is a minimal step.
But how about the "hidden agenda" groups? How can they be required to be honest?