]> Cypherpunks.ru repositories - gostls13.git/blob - README
Use GoGOST's PublicKey wrappers
[gostls13.git] / README
1 This is a fork of Go with:
2
3 * crypto/x509 supporting GOST 34.10-2012
4   X.509 certificates and PKCS#8 private keys
5 * crypto/tls supporting GOST TLS 1.3
6
7 GOST-related crypto/tls.SignatureSchemes are not enabled by default,
8 simply because it will fail native unittests. crypto/tls also does not
9 provide ability to control TLS 1.3 CipherSuite choice and GOST-related
10 suites are not enabled by default too. You can use tls.GOSTInstall() for
11 enabling all of that.
12
13 Pay attention that:
14
15 * GOST X.509 certificates uses reversed digest (relatively to native
16   gogost/gost3410 output) during signing, so you should use
17   gogost/gost3410.PrivateKeyReverseDigest crypto.Signer
18 * GOST TLS 1.3 uses both reversed digest and signature values, so you
19   should use gogost/gost3410.PrivateKeyReverseDigestAndSignature in that case
20 * GoGOST is quite slow, do not expect high performance
21
22 Look at src/crypto/x509/x509_test.go and src/crypto/tls/gost_test.go
23 for example usage.
24
25 ./gogost-install script helps installing GoGOST directly into Go's
26 source code tree. Then build Go with ordinary steps. Some unittests,
27 related to dependency checks, will fail as expected.