The defender has been in talks for several months, with his current deal due to expire in the summer.
The 23-year-old returned from a knee injury which kept him out for nearly two years against Exeter City in January and was determined to stay at Anfield.
He said: “It’s brilliant – it’s something I’ve always wanted to do since I was a child.
“I think this is my third professional contract with Liverpool now, so I’m really happy.
“I’ve been through a lot in the last two years with the injury, and maybe a few people thought my future was in doubt, but I’ve worked hard and this is a bonus at the end of it.”
We use your sign-up to provide content in ways you've consented to and to improve our understanding of you. This may include adverts from us and 3rd parties based on our understanding. You can unsubscribe at any time. Read our Privacy Policy