這個週末利用了一些空檔時間,替 libfetch 加上了 RFC 2617 的 Digest authentication scheme 支援。原先的 libfetch 只支援 Basic authentication scheme,這使得帳號密碼的 Base64 會以明碼的形式在網路上傳遞,這是一件有點危險的事情,有心人士只要在你和主機中間,就有機會攔截到你的帳號密碼。Digest authentication scheme 利用了 nonce 和 MD5,把帳號密碼多做了一次加密處理,所以可以保護帳號密碼即使被攔截到也非常難以被破解。
我實作的部分並沒有涵蓋全部 RFC 2617 提到的範圍,但是已經足以和 apache 的 mod_digest_auth 溝通。剩下來還沒實作的部分,包括非 MD5 的加密演算法,以及 qop=auth-int 的全文加密部分。
動手以前問了一下 phk,他說據他所知沒人碰這一塊,所以我就把程式寫一寫,丟到 GNATS,剩下的就交給 des 啦。

0 意見:
張貼意見