Optical photons present many interesting aspects in the context of the research for suitable physical representations of quantum bits. Photons are chargeless particles, and do not interact strongly with each other, or even with most matter. They can be guided along long distances with low loss in optical fibers, delayed efficiently using phase shifters, and combined easily using beamsplitters. Photons exhibit typical quantum phenomena, such as the interference produced in two-slit experiments. Furthermore, in principle, photons can be made interact with each other if carefully handled. There are many practical problems with this approach; nevertheless it presents, beyond what has already been noted, an appealing conceptual simplicity.The purpose of this work is to present - at least, in its fundamental principles - a set of optical photon quantum gates that is universal for quantum computation. To do so, we begin by gathering the necessary mathematical and physical tools. We discuss canonical quantization for the electromagnetic field, and we formalize in an abstract context the characteristic properties of every realization of the Fock canonical commutation relationships (CCR). We analize the class of the spaces where it is possible to give such a realization, and that naturally lend themselves to host the physical model of our interest. Once acquired these bases, we turn ourselves to a particular optic system, the Mach-Zehnder interferometer, and we study the general properties of this system and of its essential constituents. At this point we choose a particular encoding of quantum bit and we look at the optical devices just discussed as elements of a quantum circuit. We then discuss the fundamental ideas that may guide the implementation of some important quantum gates: Hadamard gate, $\pi/8$ gate and controlled-NOT. We conclude by showing that these three quantum gates form a universal set of gates for quantum computation.