The 25-year-old goalie was a restricted free agent and avoided a salary arbitration hearing.
Kahkonen was 14-14-4 with a 2.87 goals-against average and .912 save percentage in 36 games (33 starts) for the Sharks and Minnesota Wild last season. He went 2-6-1 with a 2.86 GAA and .916 save percentage in 11 games (10 starts) after he was acquired in a trade with the Wild on March 21.
RELATED: [NHL Free Agent Tracker]
"Kaapo has shown potential to be a No. 1 goaltender in the NHL, and impressed us when he joined our team in the last part of the season," Sharks general manager Mike Grier said. "We are excited to have him with us."
Selected by Minnesota in the fourth round (No. 109) of the 2014 NHL Draft, Kahkonen is 33-23-5 with a 2.88 GAA, .908 save percentage and two shutouts in 65 games (61 starts) for the Sharks and Wild.
The Sharks also signed forward Luke Kunin on Monday to a two-year contract. Financial terms were not disclosed.
Kunin, 24, who was a restricted free agent, was acquired in a trade with the Nashville Predators on July 8 for forward John Leonard and a third-round pick in the 2023 NHL Draft.
Kunin had 22 points (13 goals, nine assists) in 82 games for the Predators last season and one assist in four postseason games.
"Luke is a physical player with high energy and pace to his game who can chip in offensively," Grier said. "He also brings several strong leadership qualities on and off the ice, previously serving as captain for the U.S. National team and the University of Wisconsin."
The trade was the first involving a player made by Grier, the first Black general manager in NHL history, who was hired by the Sharks on July 5.
Selected by Minnesota with the No. 15 pick in the 2016 NHL Draft, Kunin has 93 points (46 goals, 47 assists) in 251 games with the Wild and Predators and five points (four goals, one assist) in 14 playoff games.