1. A non-transitory computer-readable medium storing computer-executable instructions that, in response to execution, cause a device comprising a processor to perform operations, comprising: accessing an original version of a first item of media; generating a first set of hash values describing the content of the original version of the first item of media; modifying an original orientation of the original version of the first item of media to generate a modified version of the first item of media having a modified orientation, the modified orientation being, relative to the original orientation, one from the group consisting of: a vertically flipped orientation, a horizontally flipped orientation, a diagonally flipped orientation, and a vertically and a horizontally flipped orientation; generating a second set of hash values describing the content of the modified version of the first item of media; computing a final hash by hashing at least a portion of each of the first and the second sets of hash values; generating a flip-resistant fingerprint based, at least, on the final hash; and comparing the flip-resistant fingerprint to a second fingerprint of a second item of media to identify the second item of media as being a duplicate or near-duplicate of the first item of media.