Skip to content

Commit 447f988

Browse files
committed
feat: add DANGEROUSLY_DISABLE_PBKDF2_ITERATION option for demo
1 parent 5a06310 commit 447f988

File tree

3 files changed

+7
-0
lines changed

3 files changed

+7
-0
lines changed

.env.template

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,9 @@ VERBOSE=false
6060
NODE_OPTIONS="--max-old-space-size=8192"
6161
# Enable rate limitting
6262
THROTTLER_ENABLED=true
63+
# Disable iteration for password hashing (not recommended for production)
64+
# See https://pages.nist.gov/800-63-3/sp800-63b.html
65+
# DANGEROUSLY_DISABLE_PBKDF2_ITERATION=
6366

6467
## ---------------------------------
6568
## DEVELOPMENT

apps/api/src/app.module.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ import { UsersModule } from './users/users.module';
3434
inject: [ConfigurationService],
3535
isGlobal: true,
3636
useFactory: (configurationService: ConfigurationService) => ({
37+
pbkdf2Params: {
38+
iterations: configurationService.get('DANGEROUSLY_DISABLE_PBKDF2_ITERATION') ? 1 : 100_000
39+
},
3740
secretKey: configurationService.get('SECRET_KEY')
3841
})
3942
}),

apps/api/src/configuration/configuration.schema.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ export const $Configuration = z
1414
.object({
1515
API_DEV_SERVER_PORT: z.coerce.number().positive().int().optional(),
1616
API_PROD_SERVER_PORT: z.coerce.number().positive().int().default(80),
17+
DANGEROUSLY_DISABLE_PBKDF2_ITERATION: $BooleanString.default(false),
1718
DEBUG: $BooleanString,
1819
GATEWAY_API_KEY: z.string().min(32),
1920
GATEWAY_DEV_SERVER_PORT: z.coerce.number().positive().int().optional(),

0 commit comments

Comments
 (0)