A two-dimensional code authenticating device for authenticating a self-authentication two-dimensional code generated based on a two-dimensional code comprising an information area (Cd) expressing predetermined information by a distribution pattern of cells, and a correction area (Ce) expressing correcting information for correcting an error by a distribution pattern of cells, the two-dimensional code authenticating device including a two-dimensional code reading means for reading the generated two-dimensional code and obtaining the correcting information, characterized in that the self-authentication two-dimensional code is generated by: obtaining a first correction bit string (1, l i) from a portion of the correction area (Ce) of the two-dimensional code, and acquiring a second correction bit string (m, m i) from another portion of the correction area (Ce); calculating an exclusive OR between the first correction bit string (1, l i) and the second correction bit string (m, m i); and replacing the portion of the correction area (Ce) including the first correction bit string (l, l i) with a bit string calculated by the exclusive OR; the two-dimensional code authenticating device further including: error detecting means for detecting the bit string calculated by the exclusive OR between the first correction bit string (l, l i) and the second correction bit string (m, m i) as an error, using the correcting information obtained by the two-dimensional code reading means; and two-dimensional code authenticating means for determining whether the self-authentication two-dimensional code is falsified, by determining if a bit string (m') calculated by an exclusive OR between the first correction bit string (l, l i) included in the correcting information and the bit string detected as the error by the error detecting means does not match the second correction bit string (m, m i) included in the correcting information, and determining that the self-authentication two-dimensional code is not falsified if the bit strings (m', m, m i) match. obtaining a first correction bit string (1, l i) from a portion of the correction area (Ce) of the two-dimensional code, and acquiring a second correction bit string (m, m i) from another portion of the correction area (Ce); calculating an exclusive OR between the first correction bit string (1, l i) and the second correction bit string (m, m i); and replacing the portion of the correction area (Ce) including the first correction bit string (l, l i) with a bit string calculated by the exclusive OR; the two-dimensional code authenticating device further including: error detecting means for detecting the bit string calculated by the exclusive OR between the first correction bit string (l, l i) and the second correction bit string (m, m i) as an error, using the correcting information obtained by the two-dimensional code reading means; and two-dimensional code authenticating means for determining whether the self-authentication two-dimensional code is falsified, by determining if a bit string (m') calculated by an exclusive OR between the first correction bit string (l, l i) included in the correcting information and the bit string detected as the error by the error detecting means does not match the second correction bit string (m, m i) included in the correcting information, and determining that the self-authentication two-dimensional code is not falsified if the bit strings (m', m, m i) match. error detecting means for detecting the bit string calculated by the exclusive OR between the first correction bit string (l, l i) and the second correction bit string (m, m i) as an error, using the correcting information obtained by the two-dimensional code reading means; and two-dimensional code authenticating means for determining whether the self-authentication two-dimensional code is falsified, by determining if a bit string (m') calculated by an exclusive OR between the first correction bit string (l, l i) included in the correcting information and the bit string detected as the error by the error detecting means does not match the second correction bit string (m, m i) included in the correcting information, and determining that the self-authentication two-dimensional code is not falsified if the bit strings (m', m, m i) match.