QT的QDtlsClientVerifier类的使用
此類實現服務器端DTLS cookie的生成和驗證。
QDtlsClientVerifier類實現服務器端DTLS cookie的生成和驗證。數據報安全協議極易受到各種“拒絕服務”攻擊的影響。根據RFC 6347第4.2.1節,這是兩種較常見的攻擊類型:
攻擊者發送一系列握手啟動請求,從而導致服務器分配過多的資源并可能執行昂貴的加密操作。
攻擊者使用偽造的受害者源發送一系列握手啟動請求,從而使服務器充當放大器。通常,服務器會使用證書消息答復受害計算機,該消息可能很大,因此,數據報文會淹沒受害計算機。
作為對這些攻擊的對策,RFC 6347第4.2.1節提出了服務器可以部署的無狀態cookie技術:
響應初始ClientHello消息,服務器發送一個HelloVerifyRequest,其中包含一個cookie。該cookie是一種加密哈希,它是使用客戶端的地址,端口號和服務器的機密(這是一種加密強度很高的偽隨機字節序列)生成的。
可達DTLS客戶端應以包含此cookie的新ClientHello消息進行回復。
當服務器收到帶有cookie的ClientHello消息時,它將如上所述生成新的cookie。將此新cookie與ClientHello消息中的cookie進行比較。
在Cookie相等的情況下,客戶端被視為真實客戶端,服務器可以繼續執行TLS握手過程。
注意:DTLS服務器不需要使用DTLS cookie。
QDtlsClientVerifier旨在與QUdpSocket配合使用,如以下代碼摘錄所示:
總結
以上是生活随笔為你收集整理的QT的QDtlsClientVerifier类的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QT的QDtls类的使用
- 下一篇: QT的QEasingCurve类的使用