Thorns

Thorns is an armor enchantment that causes attackers to be damaged when they deal damage to the wearer.

Guardians and pufferfish also have a thorn effect which inflicts damage when the spikes are out.

Usage
While wearing any piece of armor with the Thorns enchantment, the wearer has a  chance of inflicting - damage on anyone who attacks them, regardless of whether they were hit by a melee attack, arrow, or other projectile. This effect doesn't stack- it simply uses the highest Thorns level among all armor pieces.

Thorns applies a durability penalty to the armor. It reduces durability by an additional 3 points when inflicting damage. If multiple armor pieces are enchanted with Thorns, the durability penalty is applied to one piece chosen at random, regardless of what level of Thorns that piece has.

Using commands, the enchantment level can be increased. The maximum possible chance of dealing damage is 100% (at level 7). If the level of Thorns exceeds 10, then it deals  damage.

Obtaining
Thorns I, II, and III can be obtained naturally from drops or by combining the enchantment from a book. Thorns III can also be obtained by using an anvil to combine two Thorns II enchantments, or by combining the enchantment from a book obtained via trading with a villager. Thorns III can not appear on the enchantment table interface, but can be added as a side effect enchantment from a level 30 enchantment on armor.

Thorns can be applied to a non-armor item only by using commands or a third-party tool. When such an item is held in either hand, an attacker suffers damage according to the formula above but with no durability penalty.

History
荆棘