Trench warfare
Trench warfare prevailed on the Western Front from late 1914 until the Germans launched their Spring Offensive on 21 March 1918. After the buildup of forces in 1915, the Western Front became a stalemated struggle between equals, to be decided by attrition. Frontal assaults, and their associated casualties, became inevitable because the continuous trench lines had no open flanks. Casualties of the defenders matched those of the attackers, as vast reserves were expended in costly counter-attacks or exposed to the attacker's massed artillery. There were periods in which rigid trench warfare broke down, such as during the Battle of the Somme, but the lines never moved very far. The war would be won by the side that was able to commit the last reserves to the Western Front.
Trench code
The Germans started using trench codes in the spring of 1917, evolving into a book of 4,000 codewords that were changed twice a month, with different codebooks used on different sectors of the front. The French codebreakers were extremely competent at cracking ciphers but were somewhat inexperienced at cracking codes, which require a slightly different mindset. It took them time to get to the point where they were able to crack the German codes in a timely fashion.