"Many of the Church Fathers since John have written of the mystery of the identity of the Anti-Christ.
If John had just known it, why hadn't he revealed it to them?"
He did. That's what "666" meant. 666 the name of the beast in code. Numbers were used instead of letters sometimes, and there was a table of the value of each letter commonly used. Ancient grafitti and other writings from this time period still exist which show this technique used.
The name of Nero in Hebrew was "Nrwn Qsr" (pronounced Neron Kaiser). If you take each letter of this Hebrew name and add its equivalent number together, you come up with the number 666. As with hash tables for cryptography, it's impossible to decode this from the result, so it makes a very safe way to give an indication of someone's identify without giving their name. The Hebrew readers of John's writings would have made the association quite easily. And the chances of this number coincidentally being the same as the result for "Nrwn Qsr" are incredibly small.
Many Bibles have in the footnote that some manuscripts use "616" instead of "666". 616 would have been code for Nero's name in Latin, which many of the readers would have been more familiar with.
BTW, other writings from that period refer to Nero's nickname as "The Beast".
I believe you missed the point.
If John wrote 666 and knew the person who fulfilled it, and it was in his own era, then why did he not just say, "It was so and so."
Then we wouldn't have all these Christians of his era and that immediately afterwards going around wondering who the Anti-Christ WOULD BE WHEN he got around to showing up some day in the future.