In an emailed statement, al-Shabab said the attack was revenge for Western intelligence operations in Somalia.
The Daallo Airlines Airbus 321 with 74 passengers on board made an emergency landing in the capital Mogadishu after the explosion shortly after take-off.
One person, said to be the bomber, was reportedly blown out of the plane.
The explosion happened about 15 minutes into the flight, when the plane was only at around 11,000ft (3,350m) and the cabin was not yet pressurised.
Most of the passengers had originally been booked on a Turkish Airlines flight but the flight was cancelled due to bad weather a few hours before take-off, Turkish Airlines said.
In its statement, al-Shabab said it had targeted Turkish Airlines because it said the Nato state was supporting Western operations in Somalia.
But the group admitted it had failed in its aim of bringing down the flight.
Somali authorities have released a video showing a passenger being given a laptop that they believe contained the bomb.
In the video, a man in an orange hi-visibility vest is shown walking with a man in a blue shirt holding what looks like a laptop. Another man in a hat approaches them and it is alleged that the laptop is handed over.
More than 20 people have been arrested in connection with the incident, the Somali government said.