-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Align with upstream how we enable OpenSSL backend #548
Comments
I've updated the description with some new findings. The main change is that |
Here's a tester program I ran in a CBL-Mariner container based on a Go package main
import (
"crypto/sha256"
"fmt"
"strings"
)
func main() {
s := fmt.Sprintf("%#+v\n", sha256.New())
fmt.Printf("%q %v\n", s[:20], strings.Contains(s, "openssl"))
} # GOEXPERIMENT=opensslcrypto go build main.go && GOFIPS=1 ./main
"&openssl.sha256Hash{" true
# GOEXPERIMENT=opensslcrypto GOFIPS=1 go build main.go && ./main
"&sha256.digest{h:[8]" false
# go build main.go && GOEXPERIMENT=opensslcrypto GOFIPS=1 ./main
"&sha256.digest{h:[8]" false We only have OpenSSL-backed crypto if:
|
Done in #598 |
Context: #501
Go team has merged
dev.boringcrypto
intomaster
, and for this they have improved how boringcrypto is enabled.There is no official documentation yet available, this is what I inferred by going through the code:
GOEXPERIMENT=boringcrypto ./make.bash
[source]. Will use boringcrypto by default.boringcrypto
build tag [source].GOEXPERIMENT=boringcrypto
set.GOEXPERIMENT=none
set.Our plan for Microsoft Go toolchain is to follow the upstream pattern, with these additional features:
opensslcrypto
.GOFIPS=0
orGOLANG_FIPS=0
.The text was updated successfully, but these errors were encountered: