The 25-year-old Kohli, batting at the coveted number 4 position left vacant by retired batting icon Sachin Tendulkar, notched up his fifth Test century to steer the visitors to a comfortable 255 for five at close on a bouncy Wanderers track.
Ajinkya Rahane (43 batting) and skipper Mahendra Singh Dhoni (17 batting) were at the crease on an eventful opening day which saw the beleaguered Indian batting line-up giving a good account of themselves despite their only warm-up game being abandoned due to a wet outfield.
Kohli, India's premier batsman, hit 18 sweetly timed boundaries in his 181-ball knock with the standout shot being a pull off the fast and furious Steyn. He played some flowing drives, played the square cut well and was severe on leg-spinner Imran Tahir, who was repeatedly pulled towards the deep mid-wicket boundary.
His shot selection was admirable as he was ready to leave a lot of deliveries but didn't forget to punish the loose balls.
Also Read
As he took charge of taking on the Proteas attack, he was well complemented by Cheteshwar Pujara (25) during their 89-run third wicket stand before he was unfortunately run-out due to a horrible mix-up.
Rahane, playing only his second Test, also showed good temperament during their fifth-wicket stand of 68 runs as the young Mumbai batsman grew in confidence with passage of time.
Kohli was finally out giving a catch to Duminy at covers off Kallis' bowling. Each bowler of the South African pace quartet got a wicket each.