GNU Libidn is an implementation of the Stringprep, Punycode and IDNA specifications defined by the IETF Internationalized Domain Names (IDN) working group, used for internationalized domain names. Currently the Nameprep, Kerberos 5 and XMPP Stringprep profiles are supported.