Since making his first team debut in 2006, Brown has made 286 appearances in all formats for Sussex amassing over 8,000 runs and 457 wicketkeeping dismissals.
After taking the reins on a temporary basis midway through the 2017 season, the 29-year-old was appointed as Sussex’s 52nd club captain in March.
The keeper-batsman is Sussex’s leading run-scorer in this season’s Championship, scoring 346 runs at an average of 49.42.
Brown said: “I’m very pleased to commit my future to the club. I am excited by the challenge of captaincy and I’m determined to help lead the club in the right direction. I feel as a club we are making good progress and I’m looking forward to all the challenges that lie ahead both as a captain and a player.
“It’s my ambition to win trophies with my home club and I hope we’ll be able to realise this ambition in the near future.”
Sussex head coach Jason Gillespie added: “Ben is a hugely important member of our squad and he has led the side very well in the Championship and one-day competition so far this season. It’s a challenging job being a top-order batsman, keeper and captain, and I’ve been really impressed with how Ben has handled that responsibility.
“I’m really looking forward to working with him and watching him continue to grow in the seasons to come.”