Johnson had dived at the feet of Rochester’s Harrison Hume and caught the player as he slid out. The referee immediately blew for a penalty, though the subsequent dismissal was harsh.
Rusthall’s leading scorer Luke Adams took over in goal and guessed the right way for the spot-kick but could only push the ball onto the inside of the post and it went in to give the visitors the lead after a half in which three of their players were shown yellow cards.
Rusthall regrouped at half-time with young central defender Robbie Bissett taking over in goal and Adams returning to the heart of the attack.
Despite being down to 10 men the Rustics dominated from the restart and it was no surprise when they equalised on 50 minutes through Reuel Powell-Downey.
However, on 66 minutes Rochester broke down the left and a driven cross was diverted into the net off the head of a defender to put the visitors ahead 2-1.
Rusthall worked hard to get back into the game and came close from a corner in the 86th minute when a superb header was cleared off the line.
Rochester remain top of the Southern Counties East League Division One but fourth-placed Rusthall have four games in hand on the leaders.
The Rustics now visit bottom-of-the-table Kent Football United in Dartford on Saturday (December 7, kick-off 3pm).