Kehittäjä | Simon Josefsson, GNU-projekti |
---|---|
Viimeinen versio |
2.3.0 (14. marraskuuta 2019) 1,36 (22. heinäkuuta 2020) |
Tallettaa | git.savannah.gnu.org/cgit/libidn.git ja gitlab.com/libidn/libidn2.git |
Kirjoitettu | VS |
Käyttöjärjestelmä | GNU / Linux , BSD ( d ) , Microsoft Windows ja macOS |
Ympäristö | GNU / Linux , FreeBSD , NetBSD , OpenBSD , GNU , Unix , Solaris , IRIX , AIX , Tru64 , MS Windows |
Tyyppi | Ohjelmistokirjasto |
Lisenssi | GNU LGPL |
Dokumentointi | www.gnu.org/software/libidn/manual |
Verkkosivusto | www.gnu.org/software/libidn/ |
GNU Libidn on ohjelmistokirjasto kansainvälistettyjen verkkotunnusten koodaamiseen ja dekoodaamiseen Stringprep- , Punycode- ja IDNA-määritysten mukaisesti . Sen on kehittänyt ja ylläpitäjä Simon Josefsson osana GNU-projektia . Kirjasto on kirjoitettu C- kielellä, ja osa sovellusliittymästä on saatavana myös C ++ , Emacs Lisp , Python ja Java . Toteutus Java- ja C # -järjestelmissä tarjotaan natiivisti ja jaetaan GNU Lesser General Public License -lisenssin ehtojen mukaisesti .
Tämän kirjaston nimi oli Libstringprep ennen kuin siitä tuli GNU-projekti.
Kirjasto sisältää yleisen Stringprep-toteutuksen . Jotkut profiilit Nameprep (in) , iSCSI , XMPP ja Kerberos version 5 sisältyvät myös. Punycode ja ACE ( ASCII Compatible Encoding ) kansainvälistetyn verkkotunnuksen yhteydessä ovat tuettuja. Mukana on mekanismi, jolla määritetään ylätason toimialueen ( TLD ) validointitaulukot ja verrataan näiden taulukoiden merkkijonoja . Joidenkin aluetunnusten oletustaulukot ovat jopa mukana.
Stringprep API koostuu kahdesta " tärkein " toimintoja , ensimmäinen muuntamiseksi dataa järjestelmän natiivi edustus UTF-8 , ja toinen stringprep käsittelyä. Tämä yksinkertaistaa Stringprep-profiilin käyttöä sovelluksessa .
Punycode API koostuu kahdesta toimintoja, toinen koodaus, ja toinen dekoodaamiseksi.
IDNA API koostuu kahdesta koodaa toimintoja, jotka, ensimmäinen ASCII , toinen Unicode , sekä korkean tason rajapinnan muuntamisessa verkkotunnuksia ja niiden ACE ( ASCII -ohjelman Encoding ) edustus.
TLD API sisältää useita toimintoja, jolla uutetaan aluetunnus nimet verkkotunnuksen edustettuna jouset, toiset paikallistamiseen oikea TLD pöydän käytettäväksi oikeassa aluetunnus, toiset validoida merkkijonoa on aluetunnus pöytä, ja useat sovittimen toiminnot suorittamaan kaikki nämä vaiheet yhdellä puhelulla.
GNU SASL ja GNU Shishi käyttävät GNU Libidniä käyttäjänimien ja salasanojen käsittelyyn.