From d20342bd4fd63a9d098678c4a954c40fe48b7af7 Mon Sep 17 00:00:00 2001 From: patrick-scho Date: Sun, 13 Apr 2025 21:57:53 +0200 Subject: [PATCH] update hash buffer --- src/main.zig | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main.zig b/src/main.zig index 29bedcf..d35221e 100644 --- a/src/main.zig +++ b/src/main.zig @@ -163,19 +163,18 @@ fn decode(text: []const u8) !std.BoundedArray(u8, 1024) { const Chirp = struct { const PostsPerPage = 10; const UsersPerPage = 10; + var HashBuffer = std.mem.zeroes([1024 * 1024 * 50]u8); pub fn hash_password(password: []const u8) !PasswordHash { var hash_buffer = try PasswordHash.init(128); // TODO: choose buffer size - // TODO: dont allocate on stack, maybe zero memory? - var buffer: [1024 * 10]u8 = undefined; - var alloc = std.heap.FixedBufferAllocator.init(&buffer); + var alloc = std.heap.FixedBufferAllocator.init(&HashBuffer); // TODO: choose limits const result = try std.crypto.pwhash.argon2.strHash(password, .{ .allocator = alloc.allocator(), - .params = std.crypto.pwhash.argon2.Params.fromLimits(1000, 1024), + .params = std.crypto.pwhash.argon2.Params.owasp_2id, }, hash_buffer.slice()); try hash_buffer.resize(result.len); @@ -184,8 +183,7 @@ const Chirp = struct { } pub fn verify_password(password: []const u8, hash: PasswordHash) bool { - var buffer: [1024 * 10]u8 = undefined; - var alloc = std.heap.FixedBufferAllocator.init(&buffer); + var alloc = std.heap.FixedBufferAllocator.init(&HashBuffer); if (std.crypto.pwhash.argon2.strVerify(hash.constSlice(), password, .{ .allocator = alloc.allocator(), -- 2.50.1