目前,SIP協(xié)議RFC3261中關(guān)于Authentication一直使用的是RFC2671規(guī)范。但是HTTP Digest Access Authentication(RFC7616) 基本上拋棄了舊的RFC2671,增加了新的算法支持,稱之為Hash Algorithms for HTTP Digest Authentication。因此,SIP協(xié)議也需要對其新的認(rèn)證方式進(jìn)行更新來符合RFC7616規(guī)范。
通常情況下,選擇什么樣的算法無非取決于三個方面的因素:
- 計算速度:算法的計算速度取決于算法本身的復(fù)雜程度。復(fù)雜算法當(dāng)然會降低計算速度。
- hash值大。航(jīng)過計算后生成的hash數(shù)值大小。
- 安全性:經(jīng)過碰撞處理以后,collision的值相對比較高的,安全性則比較好。
根據(jù)一些測試的對比數(shù)據(jù)來看,SHA256在collision方面具有很大優(yōu)勢,安全性相對比較好:
另外,MD5已經(jīng)使用了將近20年的時間,因為軟件技術(shù)的發(fā)展,硬件技術(shù)的發(fā)展,加上一定的時間,模擬出基本上一致的MD5 collision已經(jīng)是完全可能的,所以安全性問題更加嚴(yán)重。一些技術(shù)專家認(rèn)為,從理論上和實際環(huán)境中, MD5已經(jīng)存在問題。Aniruddha Shrotri對此問題發(fā)表多一篇非常著名的文章,此文章討論了MD5從理論上和實際生產(chǎn)過程中,如何模擬出一個假的證書的處理方式。
MD5 – The hash algorithm is now Broken!!!
https://cryptocrats.com/crypto/md5-the-hash-algorithm-is-now-broken/
前幾年比較轟動的安全技術(shù)事件是中國著名學(xué)者王小云破解MD5的算法的新聞。這些技術(shù)的突破對MD5本身提出來非常大的考驗。
MD5碰撞的演化之路
https://www.freebuf.com/articles/93780.html
因此,因為MD5存在的這種問題,HTTP也準(zhǔn)備使用新的認(rèn)證算法來支持新的互聯(lián)網(wǎng)技術(shù)。前面我們已經(jīng)說過,因為SIP RFC3261的認(rèn)證也是借用的HTTP的認(rèn)證方式,因此,RFC3261也必須需要更新來支持新的認(rèn)證方式。在準(zhǔn)備更新的RFC3261中,為了在SIP中更新Digest Authentication,RFC7616中增加了對SHA-256 和 SHA-512/256 算法的支持,增加了一個“qop”參數(shù)設(shè)置。
在新更新的RFC3261中,增加了對幾個方面的支持:
關(guān)于使用多個SIP Authentication時的UAC和UAS對WWW-Authenticate和Proxy-Authenticate 頭的處理和處理順序邏輯。
提供了對Forking處理的指導(dǎo)。
如果有任何的Update,SIP BNF更新處理。
關(guān)于最新的RFC3261對Digest Authentication Scheme的支持,讀者可以閱讀最新狀態(tài)內(nèi)容:
The Session Initiation Protocol (SIP) Digest Authentication Scheme draft-ietf-sipcore-digest-scheme-08
https://tools.ietf.org/html/draft-ietf-sipcore-digest-scheme-08?fbclid=IwAR3BVafXLXItktdtV0wR3Zy4SHbjZh1EYbkXK4TsVtqXJc0gJ0L-L1qt2t8#section-2
當(dāng)然,如果RFC3261更新以后,除了MD5支持向后兼容以外,保證了舊產(chǎn)品的認(rèn)證兼容方式以外,SIP產(chǎn)品廠家和基于SIP的開發(fā)需要增加對最新算法的支持。接下來,就是編寫相關(guān)的代碼模塊支持最新的Digest Authentication Scheme。
參考資料:
https://tools.ietf.org/html/draft-ietf-sipcore-digest-scheme-08?fbclid=IwAR3BVafXLXItktdtV0wR3Zy4SHbjZh1EYbkXK4TsVtqXJc0gJ0L-L1qt2t8
http://cseweb.ucsd.edu/~mihir/papers/gb.pdf
https://tools.ietf.org/html/rfc2617
https://tools.ietf.org/html/rfc7616
關(guān)注微信公眾號:asterisk-cn,獲得有價值的Asterisk行業(yè)分享
Asterisk freepbx,F(xiàn)reeSBC技術(shù)文檔: www.freepbx.org.cn
融合通信商業(yè)解決方案,協(xié)同解決方案首選產(chǎn)品:www.hiastar.com
Asterisk/FreePBX中國合作伙伴,官方qq技術(shù)分享群(3000人):589995817