golang / go

The Go programming language
https://go.dev
BSD 3-Clause "New" or "Revised" License
122.69k stars 17.49k forks source link

x/crypto: freeze and deprecate a few more packages #65250

Open FiloSottile opened 7 months ago

FiloSottile commented 7 months ago

Over the years we did some significant cleanups of x/crypto packages (#30141, #31044, #36646, #44226).

I propose we do one last round, marking as Deprecated

and marking as Frozen

This leaves a pretty healthy list of non-Deprecated non-Frozen packages, which would be suitable for moving into the stdlib (ignoring x509roots for a moment since it's a special snowflake).

/cc @golang/security

Packages summary

Package Imported by Current state Proposed state
acme 496    
acme/autocert 2161    
argon2 1037    
bcrypt 15602    
blake2b 2500    
blake2s 255    
blowfish 881 Deprecated Deprecated
bn256 20 Deprecated Deprecated
cast5 501 Deprecated Deprecated
chacha20 258    
chacha20poly1305 2399    
cryptobyte 647    
cryptobyte/asn1 377    
curve25519 1916 Wrapper Frozen
ed25519 2142 Wrapper Frozen
hkdf 2208    
internal/wycheproof - Internal Internal
md4 764 Deprecated Deprecated
nacl/auth 21   Frozen
nacl/box 1041    
nacl/secretbox 1934    
nacl/sign 73   Frozen
ocsp 926    
openpgp/... 1897 Deprecated Deprecated
otr 15 Notice Frozen
pbkdf2 5239    
pkcs12 832 Frozen Frozen
poly1305 504 Deprecated Deprecated
ripemd160 3531 Deprecated Deprecated
salsa20 283    
salsa20/salsa 662   Deprecated
scrypt 2381    
sha3 10791    
ssh 14420    
ssh/agent 2236    
ssh/knownhosts 590    
ssh/terminal 8278 Deprecated Deprecated
ssh/test 0   Deprecated
tea 188 Deprecated Deprecated
twofish 266 Deprecated Deprecated
x509roots/nss 0    
x509roots/fallback 11 Submodule Submodule
xtea 219 Deprecated Deprecated
xts 10 Notice Frozen
rsc commented 7 months ago

This proposal has been added to the active column of the proposals project and will now be reviewed at the weekly proposal review meetings. — rsc for the proposal review group

rsc commented 6 months ago

Have all remaining concerns about this proposal been addressed?

Mark as Deprecated:

Mark as Frozen:

rsc commented 6 months ago

Based on the discussion above, this proposal seems like a likely accept. — rsc for the proposal review group

Mark as Deprecated:

Mark as Frozen:

rsc commented 6 months ago

No change in consensus, so accepted. 🎉 This issue now tracks the work of implementing the proposal. — rsc for the proposal review group

Mark as Deprecated:

Mark as Frozen:

dolmen commented 5 months ago

( @FiloSottile Please edit the proposal to add links to the documentation of each package like [golang.org/x/crypto/ssh/test](https://pkg.go.dev/golang.org/x/crypto/ssh/test) )