The 33-year-old wicketkeeper-batter revealed he would be leaving Sussex late last year after over two decades with the club.
Brown progressed through the youth set-up at Sussex before he was made captain of their County Championship and List A sides in 2017 – roles he held until July 2021.
The right-hander possesses an impressive red ball record, averaging 40.41 since his first-class debut in 2007, including 22 hundreds.
In 2021’s LV= Insurance County Championship he averaged 51.36 from 12 matches and no other player scored more centuries than his four. Last year he was the Championship’s seventh highest runscorer with 976 at 51.36.
Denver Hume: Portsmouth's expensive forgotten man and why former Sunderland defender really could be one for the future
'Real driving force... lion-hearted display... classy presence' - Neil Allen's Portsmouth ratings from 3-0 Carabao Cup win at Cardiff
'We wanted to show him a bit of love' - Portsmouth-based Spurs fans' terrific gesture to ensure Dane Scarlett feels at home on the south-coast
League One latest: Portsmouth linked duo set for Oxford United and Lincoln moves, Southampton prospect joins Blues rivals as Ipswich land former Blackpool and Derby veteran
'We’ve got a real problem': Portsmouth boss reveals headache after career first at Cardiff
Brown can expect to take his place in a Hampshire batting order including captain James Vince, Ian Holland and Nick Gubbins, who all scored over 750 Championship runs in 2021. Joe Weatherley, Tom Alsop, Liam Dawson and Aneurin Donald will all be aiming for a batting slot as well.
Across all formats, Brown has amassed 10,843 runs from 318 matches for Sussex, whilst also taking 543 catches and 40 stumpings.
Giles White, Hampshire’s Director of Cricket, said: ‘Ben’s arrival is exciting news.
‘He brings many qualities and has a particularly impressive red-ball record; we are confident he’ll be a great addition to the squad.’
Brown added: ‘I am extremely proud and humbled to sign for Hampshire.
‘To be joining such a talented playing squad and to have the opportunity to work with the club’s impressive coaching staff is a privilege.
‘I’m looking forward to being able to call The Ageas Bowl my home ground and am hugely grateful to everyone at Hampshire for the opportunity to do so.
‘I’m excited to be joining the group next week and to play my part in pushing for trophies and silverware over the coming years.’
Brown has played alongside one of Hampshire’s players before - Liam Dawson was a colleague when he made four England U19 Test appearances in 2007 and 2008.
In April 2015 Brown scored an unbeaten 144, batting at No 7, as Sussex defeated Hampshire by an innings at The Ageas Bowl. At the same ground, he retired on 100 in a pre-season friendly between the two counties three years later.
Brown’s maiden List A century arrived last summer when, opening the innings, he scored 105 in a Royal London Cup tie against Middlesex.