mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 03:18:24 +00:00 
			
		
		
		
	Remove SHA1 for support for ssh rsa signing (#31857)
https://github.com/go-fed/httpsig seems to be unmaintained. Switch to github.com/42wim/httpsig which has removed deprecated crypto and default sha256 signing for ssh rsa. No impact for those that use ed25519 ssh certificates. This is a breaking change for: - gitea.com/gitea/tea (go-sdk) - I'll be sending a PR there too - activitypub using deprecated crypto (is this actually used?)
This commit is contained in:
		| @@ -17,7 +17,7 @@ import ( | ||||
| 	"code.gitea.io/gitea/modules/log" | ||||
| 	"code.gitea.io/gitea/modules/setting" | ||||
|  | ||||
| 	"github.com/go-fed/httpsig" | ||||
| 	"github.com/42wim/httpsig" | ||||
| 	"golang.org/x/crypto/ssh" | ||||
| ) | ||||
|  | ||||
| @@ -205,7 +205,7 @@ func doVerify(verifier httpsig.Verifier, sshPublicKeys []ssh.PublicKey) error { | ||||
| 		case strings.HasPrefix(publicKey.Type(), "ssh-ed25519"): | ||||
| 			algos = []httpsig.Algorithm{httpsig.ED25519} | ||||
| 		case strings.HasPrefix(publicKey.Type(), "ssh-rsa"): | ||||
| 			algos = []httpsig.Algorithm{httpsig.RSA_SHA1, httpsig.RSA_SHA256, httpsig.RSA_SHA512} | ||||
| 			algos = []httpsig.Algorithm{httpsig.RSA_SHA256, httpsig.RSA_SHA512} | ||||
| 		} | ||||
| 		for _, algo := range algos { | ||||
| 			if err := verifier.Verify(cryptoPubkey, algo); err == nil { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user