"In a recent study published by the Academy of Management Journal, Prof. Peter Bamberger of Tel Aviv University's Recanati School of Business and Dr. Elena Belogolovsky of Cornell University's School of Industrial and Labor Relations have published a study that explains why pay secrecy is likely to hurt an individual's work performance and prompt top talent to seek new employment. They conclude that pay secrecy weakens the perception by employees that a performance improvement will be accompanied by a pay increase. It also finds that high-performing workers are more sensitive than others when they perceive no link between performance and pay; suggesting that pay secrecy could limit a company's ability to retain top talent."
So who, if anybody, benefits from pay secrecy?
Back in 90 or so I was working for a government contractor. When I was hired I was told in no uncertain terms that discussing salary with co-workers was grounds for immediate termination.
Yet, our job title was printed on our business cards. And on the bulletin board, in the section marked "stuff we have to post for legal reasons", was a chart showing the salary range for each job title. Pretty narrow ranges too, like "Senior Software Engineer" was $60-%63k.