Spring 23/07/2026 8 phút

BCrypt chậm 52ms là TÍNH NĂNG, và nó lặng lẽ bỏ qua mọi ký tự sau byte thứ 72

Băm mật khẩu như một ổ khoá một chiều nặng và quay chậm có chủ đích: kiểm được chìa nhưng không đọc ngược ra chìa. Đo BCrypt theo từng mức cost, giới hạn 72 byte, DelegatingPasswordEncoder, và cách đổi thuật toán mà không bắt ai đặt lại mật khẩu.

Spring 22/07/2026 7 phút

Thêm một phụ thuộc là mọi endpoint bị khoá — và Spring Security chỉ là 15 bộ lọc xếp hàng, không phép màu

Spring Security như một bộ lọc nước nhiều tầng: nước qua một dãy lõi cố định, mỗi lõi lọc đúng một thứ, sai thứ tự là hỏng cả dãy — và cái van cuối mặc định ĐÓNG. Mười lăm bộ lọc in ra thật, năm header tự bật, và cấu hình đúng thứ tự.