A planar, rigid substrate made from a porous, inorganic material coated with cationic polymer molecules for attachment of an array of biomolecules, such as DNA, RNA, oligonucleotides, peptides, and proteins. The substrate has a top surface with about at least 200 to about 200,000 times greater surface area than that of a comparable, non-porous substrate. The cationic polymer molecules are anchored on the top surface and in the pores of the porous material. In high-density applications, an array of polynucleotides of a known, predetermined sequence is attached to this cationic polymer layer, such that each of the polynucleotide is attached to a different localized area on the top surface. The top surface has a surface area for attaching biomolecules of approximately 387,500 cm2 / cm2 of area (˜7.5 million cm2 / 1×3 inch piece of substrate). Each pore of the plurality of pores in the top surface of the substrate has a pore radius of between about 40 Å to about 75 Å. Not only does the cationic coating in and over the pores of the substrate greatly increase the overall positive charge on the substrate surface, but also given the size of the pores provides binding sites to which biomolecules can better attach.