A system for generating a secure tag, comprising: at least one processor; and at least one non-transitory memory containing instructions that, when executed by the at least one processor, cause an authentication server to perform operations comprising: receiving a stylesheet describing a class of secure tags; obtaining a numeric seed; generating a secure tag layout using the numeric seed and the stylesheet, the secure tag layout specifying a combination of tag feature options based on the numeric seed and stylesheet; receiving tag data; generating a secure tag encoding the tag data by selecting the tag feature options according to values of the tag data; generating a perceptual hash of the secure tag; storing the hash and an identifier for the secure tag in a database; and labelling an object with the secure tag or incorporating the secure tag into a digital product, characterized in that generating the secure tag encoding the tag data by selecting the tag feature options comprises: selecting first tag feature options according to values of first tag data, the selection of the first tag feature options creating second tag feature options, and selecting the second tag feature options according to values for second tag data. at least one processor; and at least one non-transitory memory containing instructions that, when executed by the at least one processor, cause an authentication server to perform operations comprising: receiving a stylesheet describing a class of secure tags; obtaining a numeric seed; generating a secure tag layout using the numeric seed and the stylesheet, the secure tag layout specifying a combination of tag feature options based on the numeric seed and stylesheet; receiving tag data; generating a secure tag encoding the tag data by selecting the tag feature options according to values of the tag data; generating a perceptual hash of the secure tag; storing the hash and an identifier for the secure tag in a database; and labelling an object with the secure tag or incorporating the secure tag into a digital product, characterized in that generating the secure tag encoding the tag data by selecting the tag feature options comprises: selecting first tag feature options according to values of first tag data, the selection of the first tag feature options creating second tag feature options, and selecting the second tag feature options according to values for second tag data. receiving a stylesheet describing a class of secure tags; obtaining a numeric seed; generating a secure tag layout using the numeric seed and the stylesheet, the secure tag layout specifying a combination of tag feature options based on the numeric seed and stylesheet; receiving tag data; generating a secure tag encoding the tag data by selecting the tag feature options according to values of the tag data; generating a perceptual hash of the secure tag; storing the hash and an identifier for the secure tag in a database; and labelling an object with the secure tag or incorporating the secure tag into a digital product, characterized in that generating the secure tag encoding the tag data by selecting the tag feature options comprises: selecting first tag feature options according to values of first tag data, the selection of the first tag feature options creating second tag feature options, and selecting the second tag feature options according to values for second tag data. selecting first tag feature options according to values of first tag data, the selection of the first tag feature options creating second tag feature options, and selecting the second tag feature options according to values for second tag data.