- Dịch vụ kiểm tra rò rỉ dữ liệu Have I Been Pwned đã được làm mới hoàn toàn
- Cùng với thiết kế mới, các chức năng của những trang web chính đã được thay đổi và cải thiện đáng kể
- Chức năng tìm kiếm trở nên trực quan hơn, đồng thời tăng cường hướng dẫn về cách kiểm tra tài khoản và các trường hợp vi phạm dữ liệu khác nhau
- Nhiều tính năng mới và cải tiến như bảng điều khiển người dùng, tìm kiếm tên miền, tài liệu API đã được bổ sung
- Hiệu năng web và bảo mật được triển khai trên hạ tầng đám mây hiện đại, mang lại trải nghiệm nhanh và an toàn hơn cho người dùng
Giới thiệu và bối cảnh
- Have I Been Pwned (sau đây gọi là HIBP) 2.0 đã chính thức ra mắt dưới diện mạo hoàn toàn mới sau thời gian dài phát triển
- Commit đầu tiên được thực hiện vào tháng 2/2023, sau giai đoạn soft launch và mã nguồn mở vào tháng 3/2024, trang web nay được mở lại với kiến trúc được xây dựng lại toàn diện và nhận diện thương hiệu mới
- Toàn bộ cấu trúc và chức năng của trang đã được cải tổ, đồng thời cửa hàng merchandise cũng được mở
Chức năng tìm kiếm
- Ô tìm kiếm nổi bật ở trang chủ, tính năng tiêu biểu của HIBP, đã được cải tiến để trực quan hơn và có thêm điểm nhấn mới mẻ (hiệu ứng confetti)
- Để tránh tạo cảm giác nặng nề và tiêu cực trong trải nghiệm người dùng, dịch vụ tập trung cung cấp thông tin thực tiễn dựa trên sự thật
- Tìm kiếm username và số điện thoại đã bị loại bỏ khỏi website (nhưng vẫn giữ nguyên trên API)
- Tìm kiếm dựa trên địa chỉ email phù hợp hơn về mặt phân tích cú pháp, cảnh báo và tính nhất quán của dịch vụ
- Số điện thoại và username gây gánh nặng xử lý dữ liệu cao nhưng hầu như không được dùng trong thực tế, nên đã bị loại bỏ để giảm nhầm lẫn
Trang tình huống vi phạm dữ liệu
- Mỗi vụ vi phạm dữ liệu giờ đây đều có trang chi tiết riêng
- So với trước đây, bố cục trực quan và dễ nhìn hơn, cung cấp hướng dẫn cụ thể và có thể hành động về mức độ ảnh hưởng và cách ứng phó
- Dự kiến sẽ bổ sung thêm thông tin theo từng khu vực thông qua hợp tác với các tổ chức khác (ví dụ: NCSC)
- Trong tương lai, trang này sẽ bổ sung các thông tin chi tiết như hỗ trợ 2FA, passkey và hướng dẫn phù hợp cho từng người dùng
Bảng điều khiển
- Nhiều chức năng trước đây như kiểm tra vi phạm nhạy cảm, quản lý tên miền, quản lý đăng ký đã được hợp nhất vào một bảng điều khiển thống nhất
- Bảng điều khiển hiện được truy cập dựa trên xác minh email, và trong tương lai sẽ bổ sung thêm các phương thức xác thực mới như passkey
- Đây cũng mở ra khả năng phát triển thành một nền tảng có thể mở rộng thêm các tính năng như cảnh báo cho tài khoản gia đình
Chức năng tìm kiếm tên miền
- Tính năng xác minh/tìm kiếm tên miền đã được thiết kế lại hoàn toàn, với UI gọn gàng hơn và hỗ trợ nhiều bộ lọc như chỉ xem các vụ rò rỉ mới nhất
- Kiến trúc được xây dựng dưới dạng ứng dụng single-page app (SPA) hoàn chỉnh, và kết quả tìm kiếm được cung cấp nhanh chóng dưới dạng JSON thông qua API
- Quy trình xác minh quyền sở hữu tên miền cũng đã được đơn giản hóa lại
- Các phương thức xác thực ngoài email sẽ được cải tiến riêng trong thời gian tới
API
- Trong lần cập nhật này, API hoàn toàn không có thay đổi hay gián đoạn nào
- Tài liệu API đang chuẩn bị áp dụng công cụ Scalar dựa trên OpenAPI, nhưng hiện tại vẫn giữ tài liệu cũ và thống nhất lại theo phong cách mới
- Sau này sẽ chuyển sang tài liệu hiện đại hơn dựa trên Scalar
Merchandise và sticker
- Cửa hàng vật phẩm thương hiệu HIBP đã chính thức mở, bắt đầu bán các sản phẩm như áo thun (dựa trên Teespring, không có lợi nhuận biên)
- Sticker vẫn tiếp tục được bán qua cửa hàng Sticker Mule, và artwork được mở nguồn để mọi người có thể tự do sử dụng
Công nghệ và hạ tầng
- Backend của trang chạy trên Microsoft Azure, sử dụng App Service, Functions, Hyperscale SQL, Storage và nhiều dịch vụ khác
- Ứng dụng web chính được viết bằng C# và .NET 9.0, ASP.NET MVC (.NET Core)
- Cloudflare được sử dụng hiệu quả cho WAF, caching, Turnstile (chống bot), R2 storage và nhiều thành phần khác
- Ở frontend, giao diện hiện đại được xây dựng dựa trên Bootstrap mới nhất, SASS và TypeScript
- Nhờ đóng góp của các thành viên nòng cốt như nhà phát triển Ingiber ở Iceland, sản phẩm đạt được độ hoàn thiện cao và UI đẹp mắt
- Dung lượng trang web và số lượng request đã được cắt giảm lần lượt khoảng 28% và 31%, giúp tối ưu hiệu quả hơn so với 11 năm trước
- Tracking, dữ liệu quảng cáo và các thành phần không cần thiết đã bị loại bỏ hoàn toàn, thể hiện sự coi trọng quyền riêng tư của người dùng
Ứng dụng AI
- Trong quá trình xây dựng lại website lần này, Chat GPT đã được sử dụng tích cực để giải quyết nhiều vấn đề phát triển như CSS, gợi ý icon, cấu hình Cloudflare và các điểm đặc thù của .NET Core
- Nhờ các đề xuất nhanh và khả năng tự động hóa mã, nhóm phát triển đã trải nghiệm mức cải thiện năng suất rất lớn
- AI cũng cho thấy độ chính xác và tính hữu ích cao trong các tác vụ như di chuyển hệ thống nhanh và tự động hóa công việc
Hành trình phát triển và kết luận
- Nhiều công việc ít nhìn thấy như cập nhật tài liệu pháp lý đã tiêu tốn rất nhiều thời gian và chi phí
- Trước và sau khi ra mắt, nhiều bản sửa lỗi khẩn cấp và các đợt phát hành lặp lại đã được thực hiện để xử lý vấn đề nhanh chóng
- Dự án đã hoàn tất việc tái khởi động trong khi vẫn giữ vững tính chuyên môn, khả năng mở rộng và sự dễ chịu của dịch vụ
- HIBP là thành quả của niềm đam mê được đổ vào từ năm 2013, chiếm một phần tư cuộc đời, và phiên bản 2.0 được kỳ vọng sẽ trở thành bước nhảy vọt mới cho dịch vụ cộng đồng này
1 bình luận
Ý kiến trên Hacker News
passwordtrong dữ liệu JSON có thể chỉ bị xem như một trường bình thường khác, và nếu API hoặc hệ thống logging ghi lại toàn bộ request body thì vấn đề thực sự có thể phát sinh. Việc lưu trực tiếp mật khẩu không salt vào kho mật khẩu thì hiếm hơn, nhưng ví dụ nếu tại API gateway của một ứng dụng Android, một flow như “tìm lại mật khẩu” không được đánh dấu là thông tin nhạy cảm thì vấn đề tương tự vẫn có thể xảy ra; đây là chia sẻ từ kinh nghiệm thực tế