這篇文章將為大家詳細講解有關(guān)golang中使用gmssl編譯不過的解決方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

此前在ubuntu上交叉編譯過openssl-1.0.2k,使用如下腳本實現(xiàn):
./config --prefix=/opt/openssl --cross-compile-prefix=arm-linux-gnueabihf- no-asm shared sed -i "s/ -m64//g" Makefile make make install
所有開發(fā)環(huán)境均通過svn管控,包括庫文件、工具等的建立過程,因此在用config生成Makefile文件后,使用腳本自動刪除arm編譯器不支持的m64選項。
當使用同樣的方法編譯gmssl后,在設(shè)備上生成秘鑰時出現(xiàn)運行時錯誤;openssl-1.1.1預覽版編譯后運行則是停止響應(yīng)。
經(jīng)過多方摸索,終于找到了原因所在:應(yīng)使用Configure配置目標平臺!新的編譯腳本如下:
./Configure --prefix=/opt/openssl --cross-compile-prefix=arm-linux-gnueabihf- no-asm shared linux-armv4 make make install
因為是arm設(shè)備,這里配置目標平臺為linux-armv4,其它平臺編譯方式相似,使用 ./Configure --help 能夠顯示支持的所有平臺。
此外,當指定arm平臺時,Makefile中不會出現(xiàn)不支持的m64選項,也就無需刪除。
使用新的編譯方式后,gmssl和openssl-1.1.1均能在arm設(shè)備上正常工作。
GmSSL-Go是GmSSL庫的Go語言接口綁定,為Go語言應(yīng)用提供密碼算法、X.509證書、SSL協(xié)議和Engine等功能。
GmSSL-Go以CGO方式將GmSSL的高層接口封裝為Go語言組件,是一個與GmSSL庫松耦合的輕量級的中間層,所有的密碼功能均由底層的GmSSL庫提供。
為何用GmSSL-Go
雖然Go語言的官方庫提供了常用的密碼算法包和SSL協(xié)議包,也存在一些第三方的純Go語言的密碼庫,在項目中集成GmSSL-Go仍然有很多不可替代的優(yōu)勢:
GmSSL-Go通過底層的GmSSL庫提供完整、豐富的國密算法、證書和SSL協(xié)議的支持。
GmSSL-Go可以通過Engine對象滿足國密標準的U盾、PCI-E加密卡等國產(chǎn)硬件密碼設(shè)備,提供系統(tǒng)的安全性、可用性和密碼合規(guī)性。
GmSSL-Go以CGO方式調(diào)用GmSSL庫的密碼算法實現(xiàn),相對于純Go語言實現(xiàn)在密碼算法上具有性能上的優(yōu)勢,請參考GmSSL Benchmark。
GmSSL-Go的功能和性能隨著GmSSL的升級獲得持續(xù)的改進。
看完這篇文章,你能夠獨立解決golang中使用gmssl編譯不過的問題了嗎?如果還想學到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,感謝各位的閱讀。!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
本文標題:golang中使用gmssl編譯不過的解決方法-創(chuàng)新互聯(lián)
轉(zhuǎn)載注明:http://www.chinadenli.net/article2/ccseoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、用戶體驗、定制開發(fā)、網(wǎng)站改版、App設(shè)計、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)