-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Support native Golang "fips140" mode #1696
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
Open
wadey
wants to merge
83
commits into
master
Choose a base branch
from
fips140
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 70 commits
Commits
Show all changes
83 commits
Select commit
Hold shift + click to select a range
4485c47
WIP support new Go fips140 module
wadey 3da3d41
log if fips140 in use
wadey 6da314a
WIP
wadey 31cc3a4
Merge remote-tracking branch 'origin/master' into fips140
wadey f6b206d
cleanup
wadey 0eb92dc
WIP
wadey fd3fa57
comments
wadey b418a08
cleanup
wadey 6fa1ecd
Merge remote-tracking branch 'origin/master' into fips140
wadey 2d5d86f
Merge remote-tracking branch 'origin/master' into fips140
wadey 08ee2ab
cleanup
wadey 243cf4a
Revert "cleanup"
wadey ef8b700
fix mismerge
wadey e6eeb37
fix smoke tests
wadey fcfbec4
log the fips140 mode and version
wadey f9532f4
requires go1.26
wadey 65450f9
need go1.26
wadey ae58085
cleanup, no GODEBUG needed
wadey 1403473
bump linter to support go1.26
wadey bdbd483
Revert "bump linter to support go1.26"
wadey 4ff9e97
Revert "need go1.26"
wadey d4d747f
no longer need go1.26 with this fix
wadey b79fdc2
better default
wadey 5dd566e
also support fips140v1.26
wadey 7f6976b
Merge remote-tracking branch 'origin/master' into fips140
wadey 441a67f
fix missing space
wadey a1b8954
update Makefile
wadey b5ad62a
Merge remote-tracking branch 'origin/master' into fips140
wadey 8671a4e
cleanup
wadey 0897f49
default GODEBUG=fips140=only
wadey c3e2a2b
better smoke
wadey cfcdcb0
use go1.26
wadey dd081ff
cleanup
wadey f1a8054
latest golanglint-ci
wadey c73245c
fix missing import
wadey 7c8a70b
fix smoke boringcrypto and fips140
wadey 1d17c78
fixup tests
wadey 56a09b7
fix
wadey cf5d73d
better check
wadey adb01f6
make the test match the code
wadey c7e0354
enforce GODEBUG=fips140=only
wadey 37b752b
WIP
wadey 90ea634
WIP
wadey 7cd3875
fix expected for fips140
wadey 06fb503
WIP
wadey d725e53
makefile cleanup
wadey f437c7d
more cleanup
wadey 32db819
cleanup
wadey 9709893
use testing log
wadey 69a6db7
cleanup unused test
wadey cb9547b
remove commented out code
wadey 3b30526
boringcrypto cleanup
wadey a383937
make the build tag clearer
wadey 69c6132
fix the tag
wadey 060b46f
better names
wadey 67da623
cleanup enforcement
wadey 7d087a6
add all fips140 platforms
wadey 92bd785
no mips64le
wadey 2efdcb0
fips140-all
wadey ac5a18e
use fips140-all in CI tests
wadey d42407c
dont need race detector on these extra smoke runs
wadey 81afed4
Merge remote-tracking branch 'origin/master' into fips140
wadey 90c7630
extract the internal FIPS GCM implementation
wadey 14c9288
Ensure Curve25519 and ChaChaPoly are not used in fips140 enforced mode
wadey 6675f5a
use go:debug to enable fips140=only
wadey 4e8733c
run all smoke tests with -race
wadey 3c1dd52
update README
wadey 3264ebf
cleanup
wadey 048fa3f
Merge remote-tracking branch 'origin/master' into fips140
wadey 6be3d22
cleanup nonce
wadey e16a31f
return err instead of panic
wadey 8d8cc4f
note that boringcrypto is deprecated
wadey 009d42b
Merge remote-tracking branch 'origin/master' into fips140
wadey e832250
fix fips140-all
wadey 0d91e3e
update PHONY
wadey fc950cf
one var for default fips version
wadey 69e5e8e
cleanup
wadey 00b498f
self-test the reflect code at init
wadey 0e1f534
test fips140.Enforced mode
wadey 738b4fa
cleanup
wadey 7c00c74
complain earlier if in FIPS-140 enforced mode
wadey bf2f26b
clean up empty line
wadey a5cb635
use P256 as the default curve for fips140 mode
wadey File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| //go:build fips140enforce | ||
|
|
||
| //go:debug fips140=only | ||
|
|
||
| package main |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| //go:build fips140enforce | ||
|
|
||
| //go:debug fips140=only | ||
|
|
||
| package main |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| //go:build fips140enforce | ||
|
|
||
| //go:debug fips140=only | ||
|
|
||
| package main |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,6 +1,6 @@ | ||
| module github.com/slackhq/nebula | ||
|
|
||
| go 1.25.0 | ||
| go 1.26 | ||
|
|
||
| require ( | ||
| dario.cat/mergo v1.0.2 | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
boringcryptooutputs with a suffix on the folder like:build/linux-amd64-boringcrypto/nebulafips140outputs to a colliding path with nonfips140:build/linux-amd64/nebula, seems like a good idea to push this intobuild/linux-amd64-fips140/nebula.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good catch! let me rework this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
added
release-fips140andbin-fips140for this