May 10, 2006

Embedded SSL Libraries

之前的 blog [軟體多樣性對嵌入式系統的影響],提到 Jim Higgins 的文章,並以 [OpenSSL] 為例,說明軟體多樣性,而就 Embedded 應用來說,以下列舉我用過的 Embedded SSL libraries: 面對琳瑯滿目的解決方案與其規格,該如何取捨呢?之前的 blog [從 OpenSSL 談 SSL Programming 的抽象化] 提過 SSL programming model 大致的樣貌。包含 OpenSSL 在內,我用過了以上五個 SSL libraries,授權方式先跳過,因為有 dual-licensing 的情況,但都是自由軟體。就我的認知,[Cryptlib] 與 [MatrixSSL] 性質較為接近,簡單來說,這兩項都是從實做 Crypto algorithms 作出發,前者的完整度高,就 SSL/TLS 應用來說,可視為 OpenSSL 的替代 library,不過處理 I/O 的部份就沒有 OpenSSL 那樣便利,而 [MatrixSSL] 的 API 設計很精簡,其 footprint 也適合 Embedded 應用,不過軟體整合時,還得一併處理瑣碎的 I/O,這兩者都有商業開發支援。

[yaSSL] 是另一個不錯的解決方案,有 C 與 C++ 的實做,為了降低軟體整合的困難度,還提供了 OpenSSL 的 API subset,footprint 也很精簡,也提供商業開發支援。最後是 [axTLS],這個專案非常有趣,因為不只有 SSL/TLS library,還提供了 Embedded Web server (名為 Anti-Web),系統模組化相當不錯,可以透過 menuconfig 挑選合適的組態,另外,內建的 Anti-Web 也支援 CGI/PHP,跟前述的 SSL libraries 相比,[axTLS] 在 SSL crypto algorithm 的功能性是最少的,僅有最基本的實做,但是對功能專一的 Embedded 應用來說,反而是不錯的選擇。
由 jserv 發表於 May 10, 2006 11:15 AM
迴響

Jserv大哥
這篇文章小弟會部分轉貼到freesf的網站喔
向您告知一聲
如果覺得不妥的話,將會把它刪除

droger 發表於 May 11, 2006 11:44 AM