当前位置:  开发笔记 > 运维 > 正文

保护UDP - OpenSSL或GnuTls还是......?

如何解决《保护UDP-OpenSSL或GnuTls还是?》经验,为你挑选了2个好方法。

我需要保护我的UDP流量.据我所知,DTLS协议是最好的方法.还有一个 - IPsec - 但它看起来不适合我,因为它不容易使用,并且可能存在硬件问题.

我发现有些库已经实现了DTLS.所以现在我想选择 - OpenSSL还是GnuTls?你能告诉我什么更好用吗?有什么缺点或优点?或者可能有另一个实施DTLS支持的库?

谢谢.



1> Rom098..:

我发现了有关库和DTLS的以下事实.

    还有另一个支持DTLS的lib - CyaSSL,但它目前仅在测试模式下支持DTLS.

    虽然RFC 4347的日期是2006年4月,但自2005年以来,OpenSSL支持DTLS(v0.9.8).许多Linux发行版都包含此版本.OpenSSL API看起来很丑陋,但似乎DTLS实现稳定.

    GnuTls自2011年起支持DTLS(v3.0.0).看起来没有Linux包含此版本.(例如,Ubuntu 11.04使用v2.8.6,Ubuntu 11.10将使用v2.10.5,而不是v3.0.0.)没有关于何时使用v3.0的信息.它可以手动构建,但是它依赖于太多额外的库,这些库在某些分发中可能没有本机支持.

    看起来所有这些库都可以在其他平台上使用(例如Windows).

    已知的OpenSSL问题:OpenSSL默认为DTLS启用了压缩,但它不应该.OpenSSL v0.9.8 API不提供任何禁用压缩的方法.该方法应手动实施.

摘要:

谈到可用性,我个人更喜欢GnuTls API,但当时OpenSSL看起来更适合使用.



2> Steve-o..:

IPsec是最老的,因此最兼容和稳定,但需要来自系统管理员的任务,对初学者来说可能非常具有挑战性.DTLS正在解决应用程序方面的问题,程序员可以通过更少的更改来显着简化和集成现有环境.

OpenSSL和GnuTLS之间的选择几乎总是由于许可证.

OpenSSL许可包括广告条款:

3.所有提及此*软件功能或使用的广告材料必须显示以下声明:*"本产品包含由OpenSSL Project*开发的用于OpenSSL Toolkit的软件.(http://www.openssl.org/) "

来自维基百科的GnuTLS:

最初创建GnuTLS是为了允许GNU项目的应用程序使用安全协议,如TLS.虽然OpenSSL已经存在,但OpenSSL的许可证与GPL不兼容; [4]因此,GPL下的软件,如GNU软件,如果不进行GPL链接异常,就无法使用OpenSSL.

http://en.wikipedia.org/wiki/GnuTLS

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有