mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-31 06:21:11 +00:00 
			
		
		
		
	[SECURITY] default to pbkdf2 with 320,000 iterations
Conflicts: modules/auth/password/hash/setting.go modules/auth/password/hash/setting_test.go
This commit is contained in:
		
					parent
					
						
							
								c70177613e
							
						
					
				
			
			
				commit
				
					
						0995034558
					
				
			
		
					 3 changed files with 14 additions and 7 deletions
				
			
		|  | @ -439,8 +439,8 @@ INTERNAL_TOKEN= | |||
| ;;Classes include "lower,upper,digit,spec" | ||||
| ;PASSWORD_COMPLEXITY = off | ||||
| ;; | ||||
| ;; Password Hash algorithm, either "argon2", "pbkdf2", "scrypt" or "bcrypt" | ||||
| ;PASSWORD_HASH_ALGO = pbkdf2 | ||||
| ;; Password Hash algorithm, either "argon2", "pbkdf2"/"pbkdf2_v2", "pbkdf2_hi", "scrypt" or "bcrypt" | ||||
| ;PASSWORD_HASH_ALGO = pbkdf2_hi | ||||
| ;; | ||||
| ;; Set false to allow JavaScript to read CSRF cookie | ||||
| ;CSRF_COOKIE_HTTP_ONLY = true | ||||
|  |  | |||
|  | @ -3,7 +3,14 @@ | |||
| 
 | ||||
| package hash | ||||
| 
 | ||||
| const DefaultHashAlgorithmName = "pbkdf2" | ||||
| // DefaultHashAlgorithmName represents the default value of PASSWORD_HASH_ALGO | ||||
| // configured in app.ini. | ||||
| // | ||||
| // It is NOT the same and does NOT map to the defaultEmptyHashAlgorithmSpecification. | ||||
| // | ||||
| // It will be dealiased as per aliasAlgorithmNames whereas | ||||
| // defaultEmptyHashAlgorithmSpecification does not undergo dealiasing. | ||||
| const DefaultHashAlgorithmName = "pbkdf2_hi" | ||||
| 
 | ||||
| var DefaultHashAlgorithm *PasswordHashAlgorithm | ||||
| 
 | ||||
|  |  | |||
|  | @ -28,11 +28,11 @@ func TestCheckSettingPasswordHashAlgorithm(t *testing.T) { | |||
| 		}) | ||||
| 	} | ||||
| 
 | ||||
| 	t.Run("pbkdf2_v2 is the default when default password hash algorithm is empty", func(t *testing.T) { | ||||
| 	t.Run("pbkdf2_hi is the default when default password hash algorithm is empty", func(t *testing.T) { | ||||
| 		emptyConfig, emptyAlgo := SetDefaultPasswordHashAlgorithm("") | ||||
| 		pbkdf2v2Config, pbkdf2v2Algo := SetDefaultPasswordHashAlgorithm("pbkdf2_v2") | ||||
| 		pbkdf2hiConfig, pbkdf2hiAlgo := SetDefaultPasswordHashAlgorithm("pbkdf2_hi") | ||||
| 
 | ||||
| 		assert.Equal(t, pbkdf2v2Config, emptyConfig) | ||||
| 		assert.Equal(t, pbkdf2v2Algo.Name, emptyAlgo.Name) | ||||
| 		assert.Equal(t, pbkdf2hiConfig, emptyConfig) | ||||
| 		assert.Equal(t, pbkdf2hiAlgo.Name, emptyAlgo.Name) | ||||
| 	}) | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue