日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

php gmssl,golang gmssl编译不过

發(fā)布時(shí)間:2023/12/10 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php gmssl,golang gmssl编译不过 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

此前在ubuntu上交叉編譯過openssl-1.0.2k,使用如下腳本實(shí)現(xiàn): (推薦學(xué)習(xí):go)./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文件后,使用腳本自動(dòng)刪除arm編譯器不支持的m64選項(xiàng)。

當(dāng)使用同樣的方法編譯gmssl后,在設(shè)備上生成秘鑰時(shí)出現(xiàn)運(yùn)行時(shí)錯(cuò)誤;openssl-1.1.1預(yù)覽版編譯后運(yùn)行則是停止響應(yīng)。

經(jīng)過多方摸索,終于找到了原因所在:應(yīng)使用Configure配置目標(biāo)平臺(tái)!新的編譯腳本如下:./Configure --prefix=/opt/openssl --cross-compile-prefix=arm-linux-gnueabihf- no-asm shared linux-armv4

make

make install

因?yàn)槭莂rm設(shè)備,這里配置目標(biāo)平臺(tái)為linux-armv4,其它平臺(tái)編譯方式相似,使用 ./Configure --help 能夠顯示支持的所有平臺(tái)。

此外,當(dāng)指定arm平臺(tái)時(shí),Makefile中不會(huì)出現(xiàn)不支持的m64選項(xiàng),也就無需刪除。

使用新的編譯方式后,gmssl和openssl-1.1.1均能在arm設(shè)備上正常工作。

GmSSL-Go是GmSSL庫的Go語言接口綁定,為Go語言應(yīng)用提供密碼算法、X.509證書、SSL協(xié)議和Engine等功能。

GmSSL-Go以CGO方式將GmSSL的高層接口封裝為Go語言組件,是一個(gè)與GmSSL庫松耦合的輕量級(jí)的中間層,所有的密碼功能均由底層的GmSSL庫提供。

為何用GmSSL-Go

雖然Go語言的官方庫提供了常用的密碼算法包和SSL協(xié)議包,也存在一些第三方的純Go語言的密碼庫,在項(xiàng)目中集成GmSSL-Go仍然有很多不可替代的優(yōu)勢:

GmSSL-Go通過底層的GmSSL庫提供完整、豐富的國密算法、證書和SSL協(xié)議的支持。

GmSSL-Go可以通過Engine對象滿足國密標(biāo)準(zhǔn)的U盾、PCI-E加密卡等國產(chǎn)硬件密碼設(shè)備,提供系統(tǒng)的安全性、可用性和密碼合規(guī)性。

GmSSL-Go以CGO方式調(diào)用GmSSL庫的密碼算法實(shí)現(xiàn),相對于純Go語言實(shí)現(xiàn)在密碼算法上具有性能上的優(yōu)勢,請參考GmSSL Benchmark。

GmSSL-Go的功能和性能隨著GmSSL的升級(jí)獲得持續(xù)的改進(jìn)。

總結(jié)

以上是生活随笔為你收集整理的php gmssl,golang gmssl编译不过的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。