Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
After several months of development, we finally completed the development of the first test version of the GMBrowser which supports GM TLS and sm2 certificate.
You can now download it and have try.
This test version only supports OSX.
Windows & Linux version will be released in the future.
For a long time, finally we release GmSSL 2.0. Here is the tested new features:
Note: build with the latest master branch code, not this pre-release!!!
- Build on Windows /Linux/Mac.
- Standard SM2 certificate generation and verification.
- TLS 1.2 cipher suite
- API compatible with OpenSSL-1.1.0.
- New SKF and SDF Framework.
- SM2/3/4 benchmark support with
- New Go wrapper of the EVP API (partial).
- Full feature Java wrapper of the EVP API.
There are many other algorithms and features in developing or not fully tested are not listed.
Pre-built binaries for Linux and Windows is given:
gmsslis built on Ubuntu Server 16.04 as 64-bit binary
gmssl.exeis built on Windows 7 with VC2013 as 64-bit binary
GmSSL.classis the GmSSL java class
libgmssljni.sois the native library for
GmSSL.classfor Ubuntu Server 16.04 64-bit
- GmSSL Java API 采用JNI实现，
java -Djava.library.path=./ GmSSL
- GmSSL Java API是对EVP API的简单封装，程序逻辑和数据格式等同与
GmSSL 1.3.0 Binary Release for Mac
The GmSSL 1.3.0 binary release for Linux and Mac includes:
gmsslcommand line tool
openssl.cnf- configure file
include- header files
lib- static libraries
Install on Linux
cp openssl.cnf /usr/local/ssl/ cp -r include/openssl /usr/local/include/ cp lib/linux-x86_64/*.a /usr/local/lib/ cp apps/linux-x86_64/gmssl /usr/local/bin/ chmod +x /usr/local/bin/gmssl
Install on Mac
cp openssl.cnf /usr/local/ssl/ cp -r include/openssl /usr/local/include cp lib/darwin64-x86_64/*.a /usr/local/lib/ cp apps/darwin64-x86_64/gmssl /usr/local/bin/ chmod +x /usr/local/bin/gmssl
With this version, the SM2/SM3/SMS4 algorithms can be accessed from both inner API (such as
openssl/sm2.h) or the abstract EVP API. Access these algorithms from EVP API is preferred for several reasons:
- The inner API might lack some of the functions, such as cipher modes.
- With EVP API the application can change algorithms on the fly.
- The EVP API is more stable, GmSSL will change the inner API as required.