"I have no idea how I won," said Halep, who lost in last year's final to Caroline Wozniacki. "It's so tough to explain what happened on court."
The Romanian appeared to be cruising to victory after claiming the first set 6-3 and winning the first three games of the second set.
But Kenin, who captured the Hobart International tournament just before the Australian Open, dug in to force a tiebreak. The 20-year-old won it seven points to five.
And just as she appeared on the brink of a famous upset, she cracked. Halep reeled off four games on the trot to take the decider 6-4.
The 27-year-old will play a rather more illustrious American in the third round in the shape of Venus Williams.
The seven-time Grand Slam champion moved into the third round following a three set win over Alizé Cornet.
After levelling the match, Cornet capitulated. Williams raced through the third set 6-0.
Serena Williams, seeded 16th, was equally ruthless. She walloped Eugenie Bouchard 6-2, 6-2 in 70 minutes to set up a third round meeting with Dayana Yastremska.
The 18-year-old from Ukraine is playing in her first Australian Open.
Williams, 37, who has won the title seven times, played in Melbourne for the first time two years before her opponent was born.