GNU Libidn是Stringprep,Punycode和IDNA 2003规范的完整记录的实现。Libidn的目的是对国际化域名进行编码和解码。本地C,C#和Java库在GNU通用通用公共许可证版本2.1或更高版本下可用。

请注意,GNU libidn2 是GNU libidn的后继者。它带有IDNA 2008和TR46实现,还为GNU libidn提供了一个兼容性层。

该库包含通用的Stringprep实现。包括Nameprep,iSCSI,SASL,XMPP和Kerberos V5的配置文件。支持通过IDNA进行Punycode和ASCII兼容编码(ACE)。包括定义顶级域(TLD)特定验证表以及将字符串与这些表进行比较的机制。还包括一些TLD的默认表。

Stringprep API包含两个主要功能,一个用于将数据从系统的本机表示形式转换为UTF-8,另一个用于执行Stringprep处理。在API中为您的应用程序添加新的Stringprep配置文件非常简单。Punycode API由一种编码功能和一种解码功能组成。IDNA API由ToASCII和ToUnicode函数以及一个用于将整个域名与ACE编码形式相互转换的高级接口组成。TLD API包括一组从域字符串中提取TLD名称的函数,一组用于根据TLD名称定位要使用的正确TLD表的函数以及一组针对TLD表验证字符串的核心函数,以及一些实用程序包装程序可以在一个调用中执行所有步骤。

例如,GNU SASL和Shishi使用该库来处理用户名和密码。Libidn可以内置到GNU Libc中,以为IDN处理启用新的系统范围的getaddrinfo标志。

Libidn是为GNU / Linux系统开发的,但是可以在20多个Unix平台(包括Solaris,IRIX,AIX和Tru64)和Windows上运行。该库是用C编写的,API(的一部分)也可以从C ++,Emacs Lisp,Python和Java访问。包含本机Java和C#端口。

还包括一个命令行工具,一些自检,代码示例等,所有这些工具均已获得GNU通用公共许可证3.0版或更高版本的许可。

Libidn 简介 对国际化域名进行编码和解码相关推荐

  1. 手机号码转码_中文域名转码,中文域名PunyCode编码转换,中文域名在线转码工具,Punycode编码在线转换工具...

    中文域名分为两类: 1.一类是域名后缀为英文字母的国际中文域名和别国中文域名,比如:中文.com,中文.net,中文.biz,中文.cc,中文.hk,中文.tm,中文.tv,中文.tw: 2.一类是域 ...

  2. 国际化域名 idn linux,国际化域名(IDN)

    1) 什么是国际化域名 (IDN)? 国际化域名(IDN) 是使用本地语言字符或非英语语言例如中文,日文,韩文,丹麦文,德文的域名或是网址. 2) WebNIC提供哪几种国际化域名 (IDN)? We ...

  3. 国际化域名 idn linux,CLUB中文国际化域名(IDN)9月开放注册

    [IT168 资讯]2016年9月6日,.CLUB顶级域名将正式对外开放中文IDN域名的注册.IDN的中文被译作国际化域名,简单的来说,使用者可以使用中文字符加上.CLUB域名后缀作为网站网址..CL ...

  4. 【转】python 字符编码与解码——unicode、str和中文:UnicodeDecodeError: 'ascii' codec can't decode...

    原文网址:http://blog.csdn.net/trochiluses/article/details/16825269 摘要:在进行python脚本的编写时,如果我们用python来处理网页数据 ...

  5. Go语言 Yaml编码和解码

    介绍 YAML Ain't Markup Language,一种非常简介的非标记语言,可以快速的对Yaml进行编码和解码. 官网地址:https://gopkg.in/yaml.v2 GoDoc:ht ...

  6. python2发送http不编码_[转]Python 2.x中常见字符编码和解码方面的错误及其解决办法...

    Python 2.x中的字符编码,设计的的确不好,导致初学者,甚至是即使用Python很长时间的人,都会经常遇到字符编解码方面的错误. 下面就把一些常见情,尽量的都整理出来,并给出相应的解决办法. 看 ...

  7. Python的编码与解码

    转自: http://www.cnblogs.com/huxi/archive/2010/12/05/1897271.html 一. 字符编码简介 1.1. ASCII ASCII(American  ...

  8. lua处理url编码与解码

    参考 lua urlencode urldecode URL encoding(Others-Community)https://titanwolf.org/Network/Articles/Arti ...

  9. Python学习笔记(6):JSON的编码和解码

    简介 JSON是一种轻量级的数据交换格式,它具有格式简单,易于读写,易于解析等优点.wiki中是这样定义JSON的: In computing, JavaScript Object Notation ...

最新文章

  1. 气象gis 解决方案_杜邦可持续解决方案全方位智能化应急管理系统解决方案
  2. IIS5.1错误,启动时WEB服务提示:服务器没有及时响应启动或控制请求 之终极解决方案。...
  3. Python selenium —— 用chrome的Mobile emulation模拟手机浏览器测试手机网页
  4. Abp vNext发布v2.3!
  5. 风机桨叶故障诊断(一) 样本的获取
  6. win10死机频繁怎么解决
  7. c#-SimHash匹配相似-算法
  8. java项目中build path的设置
  9. zookeeper核心面试问题及解答
  10. shiro721复现
  11. 换ip 电脑ip切换 ip修改 支持xp win7 win10
  12. 20160213为王伟写的挪点号,也可以叫它为文字避让
  13. CS144 Lab1:StreamReAssemer
  14. CF918D: MADMAX 题解
  15. 2017新型智慧城市建设的五“新”级策略
  16. linux mysql cnf_mysql在linux下查看my.cnf位置的方法
  17. 拼多多 标题 html,【拼多多如何变成新用户】拼多多老用户变新用户教程_拼多多砍价网...
  18. 我的物联网项目(十六) 项目工程
  19. 计算机专业课app,‎App Store 上的“计算器-新版计算机”
  20. 计算机毕业设计java+jsp鲜花销售商城信息网站(源码+系统+mysql数据库+Lw文档)

热门文章

  1. OpenFlow Switch —— 软件架构
  2. Linux_Samba详解
  3. Linux_文件系统磁盘分区
  4. vue-cli3.0控制台体验
  5. python requests.packages.urllib3问题记录
  6. NEC使用C+L EDFA在超过1.1万公里的海底光缆中首次实现50Tb传输
  7. Xcode+OpenCV3.4.0 折腾(2)
  8. php纯面向过程--论坛
  9. [译]ElasticSearch数据类型--string类型已死, 字符串数据永生
  10. 使用cqengine进行集合检索