The LaLiga leaders were largely untroubled by last season's beaten finalists at the Allianz Stadium as they claimed a result that guarantees they go through to the knockout phase as winners of Group D.
Head coach Ernesto Valverde sprung a shock before the match by naming Messi among the substitutes, with Paulinho selected in the number 10 role in a robust-looking system.
Barca official Guillermo Amor explained pre-match that Messi was simply being rested before the weekend clash with LaLiga's second-placed side Valencia, and his absence did little to upset Barca's rhythm as they controlled the game for long spells in Turin, albeit without troubling Gianluigi Buffon too often.
Messi came on in the second half to try to unlock a Juve defence that was without the injured Giorgio Chiellini, but there was no way through against the Serie A champions, who are a point above third-place Sporting CP in the group ahead of the final matchday.
For Barca, attention can now turn to the top-of-the-table clash at Mestalla on Sunday, with their knockout spot secure.
Douglas Costa shot straight at Marc-Andre ter Stegen from inside the penalty area after only two minutes but Barcelona were largely in control of the first half-hour, the midfield quartet of Andres Iniesta, Ivan Rakitic, Sergio Busquets and Paulinho dictating the play well.
It was Rakitic who came closest to a first-half breakthrough, sending a deep free-kick off the right-hand post, before Paulinho failed to turn the rebound on target.
Barca had shouts for a penalty in the 30th minute when Paulinho went over a challenge from Miralem Pjanic, but the referee showed a deserved yellow card to the Brazilian for a fairly blatant dive.
Paulo Dybala had struggled to get involved in the first 45 minutes but he came close to giving Juve the lead just before the break, collecting Alex Sandro's pass on the break before surging into the box and firing narrowly over the crossbar.
0 - Luis Suarez was the player with the fewest passes attempted (9) and touches (14, none in the opposite box) in this first half. Alone. pic.twitter.com/vVZurYkQkX— OptaJose (@OptaJose) November 22, 2017
Barca resumed their control of proceedings after the break, with Luis Suarez going close with a free-kick, but Valverde nonetheless introduced Messi for Gerard Deulofeu in the 55th minute.
Dybala and Gonzalo Higuain lashed half-chances wide but Barca's control of possession was almost unchallenged, with Juve apparently content to sit deep and hold on for the draw.
Messi almost provided the killer pass to give Barca the breakthrough, with Juan Cuadrado messing up his attempt to head the Argentine's long pass back to Buffon, but Lucas Digne failed to capitalise on the opportunity.
Juve showed more attacking endeavour in the closing stages and Ter Stegen made a fine low save to deny Dybala in stoppage time, but the draw means Massimiliano Allegri's side must beat Olympiacos on December 5 to ensure they stay above Sporting and reach the last 16.
Key Opta stats:
- Barcelona have failed to win in all of their six away games against Juventus in European competitions (D3 L3).
- The Blaugrana have recorded goalless draws in back-to-back games in Champions League for the first time ever.
- Barcelona are unbeaten in their last 18 games in all competitions, their best run since March 2016, when they registered their longest ever run (39).
- Marc-Andre ter Stegen has kept more clean sheets than any other LaLiga goalkeeper this season in all competitions (12).
- The German goalkeeper has saved 23 of the last 24 shots on target he has faced for Barcelona in all competitions (96%).
- Lionel Messi has equalled Roberto Carlos as South American player with the most appearances in the Champions League (129 apiece).