2017-05-18 95 views
1

我正在做一个项目,其中的流必须实时传输并以安全的方式传输到服务器。FFmpeg流加密

  1. SRTP https://www.ffmpeg.org/ffmpeg-protocols.html#srtp

    这工作得很好,但速度和质量都不是:

    因为它可以在文档中找到'加密'流使用有可能好。 (延迟3秒)。我将不胜感激改进(见下文)使用证书(https://www.ffmpeg.org/ffmpeg-protocols.html#tls

    究竟做TLS

  2. TLS?它是否甚至是加密的,还是只是为了验证流是否来自正确的源?

还有什么我可以用来实现足够的质量和速度?


PS:用3秒的延迟与AES SRTP的命令:与ffplay

ffmpeg -r 24 -f x11grab -s 1280x1024 -i :0.0 -c:v libx264 -crf 35 -pix_fmt yuv420p -threads 4 -preset fast -tune fastdecode -bsf:v h264_mp4toannexb -movflags +faststart -f rtp_mpegts -srtp_out_suite AES_CM_128_HMAC_SHA1_80 -srtp_out_params zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz "srtp://10.0.0.100:8888" 

I输出它:

ffplay -srtp_in_suite AES_CM_128_HMAC_SHA1_80 -srtp_in_params zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz srtp://client:8888 -fast -fs 

回答

0

两种协议之间的差别是非常小的和技术,但他们是不同的标准。 TLS使用更强大的加密算法,并且能够在不同的端口上工作。此外,TLS 1.0版不能与SSL 3.0版互操作。

Netscape最初开发了SSL(安全套接字层)协议以私下传输信息,确保消息完整性并保证服务器身份。 SSL主要通过对数据使用公钥/私钥加密工作。它通常用于Web浏览器,但SSL也可以用于电子邮件服务器或任何类型的客户端 - 服务器事务。例如,一些即时消息服务器使用SSL来保护对话。

互联网工程任务组(IETF)创建了TLS(传输层安全性)作为SSL的后继者。它最常用作电子邮件程序中的设置,但与SSL一样,TLS可以在任何客户端服务器事务中发挥作用。

+0

选中此项:https://security.stackexchange.com/questions/705/what-are-the-differences-between-the-versions-of-tls –