mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-29 10:57:44 +09:00 
			
		
		
		
	Safe compare password (timing attack) (#338)
This commit is contained in:
		
				
					committed by
					
						 Lunny Xiao
						Lunny Xiao
					
				
			
			
				
	
			
			
			
						parent
						
							db6a4e9fbf
						
					
				
				
					commit
					c8f300b2cd
				
			| @@ -8,6 +8,7 @@ import ( | ||||
| 	"bytes" | ||||
| 	"container/list" | ||||
| 	"crypto/sha256" | ||||
| 	"crypto/subtle" | ||||
| 	"encoding/hex" | ||||
| 	"errors" | ||||
| 	"fmt" | ||||
| @@ -368,7 +369,7 @@ func (u *User) EncodePasswd() { | ||||
| func (u *User) ValidatePassword(passwd string) bool { | ||||
| 	newUser := &User{Passwd: passwd, Salt: u.Salt} | ||||
| 	newUser.EncodePasswd() | ||||
| 	return u.Passwd == newUser.Passwd | ||||
| 	return subtle.ConstantTimeCompare([]byte(u.Passwd), []byte(newUser.Passwd)) == 1 | ||||
| } | ||||
|  | ||||
| // UploadAvatar saves custom avatar for user. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user