It's a disastrous idea.
First of all, if you mean public as in "the whole world can know", I can't imagine anyone being comfortable with that. Advertisers, family members, people who don't like you, etc... surely you see the problem here.
If by public you mean "only within the company", even this approach will create resentment and hundreds of hours wasted in discussions and negotiations instead of doing productive work. People will constantly argue that they should be paid as much as "X", and then "X" will complain that she needs to be paid as much as "Y", etc...
As someone running a large organization, this is also a logistical nightmare since I usually have very good reasons to compensate X more than Y even if Y might think they should be paid the same amount.
Back to the topic, I've never cared what someone was paid at a previous employer, mainly because they can lie and there's no way to know. Besides, even as a hiring manager, I really think it's none of my business how much that previous employer valued this person.
What matters is here and now. I just ask people how much they want then I counter with what we're comfortable paying, and then we negotiate.
The only thing from past employers that matter is what the person used to do there.