Canada finished first in the round-robin portion of the tournament and advanced to a semifinal match Saturday against Switzerland. Canada has yet to surrender a goal after beating Japan 10-0 in its opening game Wednesday.
After a goalless first period, Sabrina Harbec opened the scoring for Canada. Harbec beat German goaltender Viona Harrer with a shot after being set up by Chouinard's centring pass.
Canada then exploded for four goals in the third period, whit Chouinard scoring just 27 seconds in.
Johnston made it 3-0 for Canada as she was sent in alone by Melanie Gagnon and managed to sneak the puck between Harrer's glove and pad.
Meghan Agosta, who had been foiled on two earlier breakaways, scored to increase Canada's lead to 4-0.
Bobbi Ross capped the scoring for the Canadians.
Shannon Szabados turned aside 12 shots for Canada to earn the shutout.
Harrer made 39 saves for Germany.