Skip to main content
Profile image for John Crain

John Crain

SVP & Chief Technology Officer

United States of America


John is responsible for leading ICANN organization (org)’s efforts to improve knowledge about the identifiers ICANN helps coordinate and disseminate this information to the Internet community. He is also responsible for oversight of the Internet Assigned Numbers Authority (IANA) functions.

A member of the org executive team, John works with staff and the community to enable and enhance capabilities that improve the overall security, stability, and resiliency of the Internet’s identifier systems and associated infrastructures. He also represents ICANN in operational and technical dialogues and forums to ensure the community’s engagement with these programs.

Prior to his time at ICANN org, John worked as part of the executive management team at RIPE NCC in Amsterdam. RIPE NCC is the regional Internet registry (RIR) that provides Internet resource allocations for Europe and surrounding areas. John has been directly involved in the administration of Internet identifiers since his start at RIPE NCC in 1995 and has worked in all areas of Internet Protocol (IP) address administration. John also has extensive experience in Domain Name System (DNS) administration and managing Internet infrastructure services. Before becoming involved in Internet administration, John worked as a design engineer in composite materials research and development. In that role, John was also responsible for local area networking of computer aided design systems and for writing and developing custom software applications.

Domain Name System
Internationalized Domain Name ,IDN,"IDNs are domain names that include characters used in the local representation of languages that are not written with the twenty-six letters of the basic Latin alphabet ""a-z"". An IDN can contain Latin letters with diacritical marks, as required by many European languages, or may consist of characters from non-Latin scripts such as Arabic or Chinese. Many languages also use other types of digits than the European ""0-9"". The basic Latin alphabet together with the European-Arabic digits are, for the purpose of domain names, termed ""ASCII characters"" (ASCII = American Standard Code for Information Interchange). These are also included in the broader range of ""Unicode characters"" that provides the basis for IDNs. The ""hostname rule"" requires that all domain names of the type under consideration here are stored in the DNS using only the ASCII characters listed above, with the one further addition of the hyphen ""-"". The Unicode form of an IDN therefore requires special encoding before it is entered into the DNS. The following terminology is used when distinguishing between these forms: A domain name consists of a series of ""labels"" (separated by ""dots""). The ASCII form of an IDN label is termed an ""A-label"". All operations defined in the DNS protocol use A-labels exclusively. The Unicode form, which a user expects to be displayed, is termed a ""U-label"". The difference may be illustrated with the Hindi word for ""test"" — परीका — appearing here as a U-label would (in the Devanagari script). A special form of ""ASCII compatible encoding"" (abbreviated ACE) is applied to this to produce the corresponding A-label: xn--11b5bs1di. A domain name that only includes ASCII letters, digits, and hyphens is termed an ""LDH label"". Although the definitions of A-labels and LDH-labels overlap, a name consisting exclusively of LDH labels, such as"""" is not an IDN."