Mở đăng ký khóa học Fullstack qua Zoom. Tham khảo tại đây

Thư Viện Câu Hỏi Phỏng Vấn

Tổng hợp các câu hỏi tuyển dụng thực tế theo nhiều cấp độ từ Entry đến Expert để bạn tự tin chinh phục nhà tuyển dụng.

Interactive Practice Tổng cộng 4,442 câu hỏi độc bản

Luyện Tập Phỏng Vấn Thử

Mô phỏng áp lực phỏng vấn thật với đồng hồ đếm ngược từng câu, tự đánh giá phản xạ và đo lường độ sẵn sàng của bạn.

Vui lòng đăng nhập để tham gia luyện tập và lưu tiến độ phỏng vấn.
Tất cả công nghệ .Net (39) ADO.NET (44) Agile scrum (33) Android (40) Angular (40) API Design (40) Arrays (40) ASP.NET (42) ASP.NET MVC (40) ASP.NET Web API (49) Availability & Reliability (40) Azure (49) Backtracking (40) Big-O Notation (35) Binary Tree (40) Bit Manipulation (40) Blockchain (45) C# (45) Caching (50) CAP Theorem (45) CDN (45) Concurrency (49) Cosmos DB (44) Cryptography (40) CSS (40) Data Structures (40) Databases (35) DDD (42) Dependency Injection (50) Design pattern (45) Devops (50) Divide & Conquer (40) Docker (43) Dynamic Programming (40) Entity Framework (40) Fibonacci Series (35) Flutter (40) Git (40) Go lang (40) Graph Theory (40) GraphQL (40) Greedy Algorithms (40) Hash Tables (40) Heaps and Maps (35) HTML (40) Ionic (45) IOS (45) Java (73) Javascript (81) jQuery (40) Kotlin (50) Kubernetes (11) Laravel (41) Layering & Middleware (44) Linked Lists (45) LINQ (40) Load Balancing (45) Microservices (44) Mongodb (45) MySQL (44) Net core (44) next.js (52) Node.js (40) NoSQL (48) Objective-C (40) OOP (44) Package Managerment (50) PHP (40) PostgreSQL (44) PWA (40) Python (41) Queues (44) React Native (48) React.js (45) Reactive Programming (50) Recursion (45) Redis (40) Ruby (44) Ruby on Rails (48) Rust (40) Searching (45) SOA (42) Software Architecture (44) Software Testing (40) Sorting (48) Spring (45) SQL (37) SQL Server (45) Stacks (44) Strings (50) Swift (45) System Design (56) Systems Design (7) T-SQL (39) Trees (49) Trie (35) Typescript (44) Unit testing (49) UX Design (50) Vue.js (50) Web security (40) WebSockets (49) Xamarin (40)
Khóa học Chuyên sâu Cryptography

Làm Chủ Phỏng Vấn & Nâng Cao Trình Độ Chuyên Nghiệp

Hệ thống khóa học thực chiến chuẩn Enterprise giúp bạn tự tin chinh phục mọi kỳ phỏng vấn kỹ thuật và thăng tiến thu nhập.

01

Trong kiến trúc hệ thống, tại sao việc sử dụng hàm băm (Hashing) với Salt không đủ để chống lại các cuộc tấn công Brute-force nếu không kết hợp với Key Stretching?

Junior

Bản chất vấn đề

Việc sử dụng Salt giúp chống lại Rainbow Table bằng cách tạo ra các giá trị băm duy nhất cho mỗi mật khẩu, ngay cả khi mật khẩu gốc giống nhau. Tuy nhiên, Salt không làm giảm tốc độ tính toán của kẻ tấn công khi chúng thực hiện Brute-force hoặc Dictionary Attack.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
02

Tại sao trong giao tiếp giữa các Microservices, việc sử dụng HTTPS thôi là chưa đủ để đảm bảo bảo mật toàn diện và tại sao cần áp dụng thêm cơ chế Message Level Encryption?

Junior

Giới hạn của HTTPS

HTTPS (TLS) chỉ bảo vệ dữ liệu khi đang truyền tải (Data in transit) trên đường truyền. Một khi dữ liệu đến được Service đích, nó sẽ được giải mã và lưu trữ trong bộ nhớ của Service đó.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
03

Trong quá trình triển khai hệ thống, tại sao việc quản lý khóa (Key Management) thường được coi là thách thức lớn hơn cả việc chọn thuật toán mã hóa?

Junior

Bản chất của Key Management

Thuật toán mã hóa như AES-256 đã được chứng minh là an toàn về mặt toán học. Điểm yếu của hệ thống thường nằm ở cách quản lý khóa (Key Lifecycle Management).

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
04

Sự khác biệt giữa mã hóa dữ liệu (Encryption) và mã hóa toàn vẹn (Signing) là gì, và tại sao việc nhầm lẫn giữa hai khái niệm này dẫn đến lỗ hổng bảo mật?

Junior

Phân biệt khái niệm

  1. Encryption (Mã hóa): Mục tiêu là tính bảo mật (Confidentiality). Chỉ người có khóa giải mã mới đọc được nội dung.
  2. Signing (Ký số): Mục tiêu là tính toàn vẹn (Integrity) và xác thực (Authenticity). Đảm bảo dữ liệu không bị thay đổi và xác nhận người gửi là ai.

Rủi ro khi nhầm lẫn

  • Nếu bạn chỉ mã hóa mà không ký, kẻ tấn công có thể thay đổi nội dung mã hóa (Bit-flipping attack) mà hệ thống không phát hiện được.
  • Nếu bạn chỉ ký mà không mã hóa, dữ liệu vẫn ở dạng rõ (Plaintext), kẻ tấn công có thể đọc được thông tin nhạy cảm.

Best Practice

Trong các hệ thống Enterprise, luôn áp dụng nguyên tắc 'Encrypt-then-Sign' hoặc sử dụng các chế độ mã hóa tích hợp xác thực như AES-GCM để đảm bảo cả hai yếu tố cùng lúc.

05

Tại sao việc sử dụng cùng một khóa mã hóa cho nhiều mục đích khác nhau (Key Reuse) lại là một sai lầm nghiêm trọng trong thiết kế hệ thống?

Junior

Rủi ro của Key Reuse

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
06

Trong quá trình xây dựng API đăng nhập cho ứng dụng web, tại sao lập trình viên Junior tuyệt đối không được tự xây dựng thuật toán mã hóa tùy chỉnh (Custom Cryptography) mà phải sử dụng các thư viện chuẩn đã được kiểm định?

Junior

Bản chất vấn đề

Trong ngành phát triển phần mềm, có một nguyên tắc vàng trong bảo mật được phát biểu bởi Kerckhoffs: "Hệ thống phải được bảo mật ngay cả khi mọi chi tiết về hệ thống, trừ khóa, đều là công khai". Một lỗi phổ biến mà các lập trình viên cấp độ Junior thường mắc phải là tự viết ra các hàm mã hóa riêng (Custom Cryptography) dựa trên việc xáo trộn chuỗi, dịch bit, XOR với một chuỗi cố định, hoặc tự kết hợp các hàm băm cơ bản.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
07

Khi thiết kế hệ thống lưu trữ thông tin thẻ tín dụng hoặc dữ liệu cá nhân định danh (PII) trong cơ sở dữ liệu, tại sao chúng ta phải sử dụng mã hóa khả nghịch (Reversible Encryption) như AES thay vì sử dụng hàm băm (Hashing) như SHA-256?

Junior

Trong kiến trúc hệ thống Enterprise, việc lựa chọn giữa mã hóa (Encryption) và hàm băm (Hashing) phụ thuộc hoàn toàn vào nghiệp vụ truy xuất dữ liệu.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
08

Trong lập trình ứng dụng web, thế nào là hiện tượng Timing Attack liên quan đến việc so sánh chuỗi (như token hoặc mật khẩu mã hóa) và cách lập trình viên Junior cần khắc phục?

Junior

Timing Attack là một loại tấn công kênh kề (Side-channel Attack) trong đó kẻ tấn công đo lường thời gian mà hệ thống phản hồi để suy luận ra các thông tin mật như chữ ký số, token hoặc mật khẩu.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
09

Khi làm việc với mã hóa đối xứng AES (Advanced Encryption Standard), việc lựa chọn chế độ vận hành (Cipher Mode) giữa CBC và GCM có ý nghĩa gì đối với bảo mật hệ thống?

Junior

Trong mật mã học hiện đại, việc chọn sai chế độ vận hành của AES có thể dẫn đến việc dữ liệu bị giả mạo mà hệ thống không thể phát hiện ra, ngay cả khi dữ liệu đó đã được mã hóa.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
10

Trong hệ thống xác thực phân tán, tại sao việc ký số JSON Web Token (JWT) bằng thuật toán bất đối xứng RS256 lại được ưa chuộng hơn HS256 trong kiến trúc Microservices có nhiều bên thứ ba tiêu thụ API?

Junior

Trong kiến trúc Microservices, việc quản lý và phân phối khóa bí mật đóng vai trò quyết định đến độ an toàn của toàn bộ hệ thống xác thực.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
11

Khi thiết kế cơ chế lưu trữ mật khẩu người dùng trong cơ sở dữ liệu, tại sao các thuật toán Hashing thông thường như MD5, SHA-1 hoặc thậm chí SHA-256 lại không còn an toàn và tiêu chuẩn Enterprise yêu cầu sử dụng các thuật toán như Argon2 hoặc bcrypt?

Junior

Mật khẩu người dùng là mục tiêu tấn công hàng đầu của tin tặc. Việc lựa chọn sai hàm băm có thể dẫn đến việc toàn bộ cơ sở dữ liệu mật khẩu bị giải mã chỉ trong vài giây.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
12

Trong quá trình phát triển ứng dụng web, tại sao việc sử dụng các hàm băm thông thường như MD5 hoặc SHA-1 để lưu trữ mật khẩu người dùng lại cực kỳ nguy hiểm và giải pháp thay thế chuẩn Enterprise cho cấp độ Junior là gì?

Junior

Bản chất vấn đề

Các thuật toán băm (Hashing) cũ như MD5 và SHA-1 có tốc độ tính toán rất nhanh và không có cơ chế chống lại việc dò tìm bằng bảng băm tính sẵn (Rainbow Table) hoặc tấn công brute-force. Khi cơ sở dữ liệu bị rò rỉ, kẻ tấn công có thể dễ dàng khôi phục lại mật khẩu gốc trong thời gian ngắn.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
13

Khi xây dựng API xác thực, sự khác biệt cốt lõi giữa mã hóa đối xứng (Symmetric Encryption) như AES và mã hóa bất đối xứng (Asymmetric Encryption) như RSA là gì? Khi nào Junior nên chọn loại nào trong hệ thống?

Junior

Phân tích cốt lõi

  1. Mã hóa đối xứng (Symmetric - ví dụ AES):

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
14

Tại sao việc sử dụng khóa bí mật (Secret Key) tĩnh đượchardcode trực tiếp trong mã nguồn (Source Code) của ứng dụng là một lỗi bảo mật nghiêm trọng và cách quản lý khóa an toàn trong môi trường Enterprise là gì?

Junior

Vấn đề bảo mật

Việc hardcode các khóa mã hóa, JWT Secret, hoặc Database Password vào trong source code sẽ dẫn đến rủi ro lớn khi mã nguồn bị lộ trên các hệ thống quản lý mã nguồn công khai hoặc bị rò rỉ nội bộ. Kẻ tấn công có thể dễ dàng giải mã toàn bộ dữ liệu hoặc giả mạo phiên đăng nhập.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
15

Trong giao tiếp API giữa các dịch vụ, làm thế nào để đảm bảo tính toàn vẹn dữ liệu (Data Integrity) và chống lại tấn công giả mạo yêu cầu (Replay Attack) bằng cơ chế HMAC?

Junior

Cơ chế hoạt động của HMAC

HMAC (Hash-based Message Authentication Code) kết hợp một hàm băm mật mã (như SHA-256) với một khóa bí mật chia sẻ giữa Client và Server. Nó đảm bảo rằng dữ liệu không bị chỉnh sửa trên đường truyền và xác thực đúng nguồn gốc gửi.

Nội dung chi tiết câu trả lời, phân tích kỹ thuật chuyên sâu, mã nguồn minh họa và các trường hợp ngoại lệ chỉ dành riêng cho học viên Unicode E-learning...

Để mở khóa toàn bộ giải pháp chi tiết và tài liệu hướng dẫn phỏng vấn, vui lòng nâng cấp tài khoản hoặc tham gia gói Learning Pass để truy cập không giới hạn.

// Mã nguồn và kiến trúc giải pháp bị ẩn đối với tài khoản chưa nâng cấp...
High-Ticket Mentoring
Cần Mentor Phỏng Vấn Thử 1-1 & Tối Ưu CV?

Mô phỏng phỏng vấn kỹ thuật thực tế 1-1 qua Google Meet, nhận xét chi tiết điểm mạnh/yếu và sửa CV trực tiếp cùng giảng viên Unicode.

AI Resume Scanner
Kiểm Tra CV Chuẩn ATS Miễn Phí

Tải CV của bạn lên để hệ thống AI rà soát từ khóa kỹ năng, định dạng và tính điểm chuẩn nhà tuyển dụng.

vừa nâng cấp PRO khóa 1 phút trước   Tìm hiểu khóa học