Mật mã học là gì và nó hoạt động như thế nào?

Tác giả Starlink, T.Năm 05, 2025, 11:45:10 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Bạn đã bao giờ tự hỏi làm thế nào dữ liệu trực tuyến và các cuộc trò chuyện của bạn được bảo mật khỏi tin tặc và kẻ xâm nhập không? Đó là công việc của mật mã, một công nghệ mà chúng ta dựa vào hàng ngày, thường là không nhận ra. Sau đây là cách mọi thứ hoạt động đằng sau hậu trường.


1. Mật mã học là gì?

Hãy tưởng tượng bạn gửi một ghi chú bí mật cho một người bạn trong lớp. Bạn không muốn bất kỳ ai khác đọc được nó, vì vậy bạn xáo trộn các chữ cái theo một cách đặc biệt mà chỉ bạn và bạn của bạn hiểu. Nói một cách ngắn gọn, đó là ý tưởng cơ bản đằng sau mật mã học. Nghệ thuật viết và giải mã bí mật.

Nhưng hãy chuyển từ lớp học sang Internet. Khi bạn gửi tin nhắn, mua sắm trực tuyến hoặc đăng nhập vào tài khoản ngân hàng, mật mã là thứ giữ thông tin của bạn an toàn khỏi những con mắt tò mò. Đó là lá chắn vô hình bảo vệ dữ liệu của bạn khi nó di chuyển qua các mạng, từ điện thoại của bạn đến đám mây và ngược lại.

Mật mã không phải là mới. Nó đã có từ hàng ngàn năm trước. Người Hy Lạp cổ đại đã sử dụng một thiết bị gọi là scytale, quấn một dải giấy da quanh một thanh để lộ ra một thông điệp ẩn. Julius Caesar nổi tiếng đã sử dụng một mã chuyển đổi chữ cái đơn giản, hiện được gọi là mật mã Caesar, để gửi các lệnh quân sự mà kẻ thù không thể đọc được trừ khi họ biết khóa bí mật.

Quay trở lại Thế chiến II, bạn sẽ thấy máy Enigma nổi tiếng do người Đức sử dụng và đã bị Alan Turing cùng nhóm của ông bẻ khóa (một phần), giúp kết thúc chiến tranh sớm hơn. Những ví dụ này cho thấy mật mã luôn là một công cụ mạnh mẽ.

Mật mã hiện đại không chỉ là việc ẩn tin nhắn. Nó còn là việc bảo vệ thông tin. Nó hoạt động để đạt được bốn mục tiêu chính:

    Tính bảo mật: Đảm bảo chỉ người nhận dự định mới có thể đọc được tin nhắn.
    Tính toàn vẹn: Đảm bảo tin nhắn không bị thay đổi hoặc giả mạo.
    Xác thực: Xác minh người gửi chính là người mà họ tuyên bố.
    Không thể chối cãi: Đảm bảo rằng sau này không ai có thể phủ nhận việc đã gửi tin nhắn.

Vì vậy, mật mã không chỉ là bí mật. Nó là sự tin tưởng rằng tin nhắn của bạn được an toàn, dữ liệu của bạn được nguyên vẹn và người ở đầu bên kia thực sự là người mà họ nói họ là.

Một thuật ngữ có liên quan chặt chẽ đến mật mã học là phân tích mật mã. Trong khi mật mã học là khoa học về việc tạo ra và sử dụng mã để bảo mật thông tin, phân tích mật mã là khoa học về việc phá vỡ các mã đó. Mật mã học là thuật ngữ rộng hơn bao gồm cả hai. Nói một cách đơn giản, mật mã học liên quan đến việc tạo ra các phương pháp mã hóa và giải mã, trong khi phân tích mật mã tập trung vào việc tìm hiểu cách vượt qua các phương pháp đó.

2. Các loại mật mã

Mật mã có nhiều loại khác nhau, mỗi loại có mục đích và tính cách riêng. Về bản chất, tất cả các loại đều nhằm mục đích giữ thông tin an toàn. Nhưng cách chúng thực hiện khác nhau tùy thuộc vào cách sử dụng khóa (mã bí mật).

2.1. Mật mã khóa đối xứng

Hãy nghĩ về mật mã khóa đối xứng như một cuốn nhật ký bị khóa sử dụng một chìa khóa duy nhất để mở và đóng. Bạn và bạn của bạn đều có cùng một chìa khóa và đó là cách bạn trao đổi tin nhắn bí mật. Cùng một chìa khóa được sử dụng để mã hóa (xáo trộn) và giải mã (giải mã) tin nhắn.

Giả sử Alice muốn gửi một tin nhắn bí mật cho Bob. Cả hai đều có chung một khóa, chẳng hạn như mật khẩu. Alice sử dụng khóa đó để mã hóa tin nhắn và Bob sử dụng cùng một khóa để giải mã tin nhắn. Một số lược đồ mã hóa bất đối xứng phổ biến là Data Encryption Standard (DES), 3DES (Triple DES) và Advanced Encryption Standard (AES).

Mã hóa khóa đối xứng khá nhanh và hiệu quả. Nếu bạn có lượng dữ liệu lớn, thì loại mã hóa này phù hợp hơn. Nhưng một thách thức lớn là cả hai bên đều cần có cùng một khóa. Chia sẻ khóa đó một cách an toàn trước khi giao tiếp có thể rất khó khăn.

2.2. Mã hóa khóa bất đối xứng

Đối với loại mã hóa này, hãy nghĩ đến một hộp thư bị khóa. Bất kỳ ai cũng có thể thả một lá thư vào đó, nhưng chỉ người có chìa khóa mới có thể mở được. Đó là ý tưởng đằng sau mật mã bất đối xứng, còn được gọi là mật mã khóa công khai. Mỗi người có hai khóa: khóa công khai (chia sẻ với thế giới) và khóa riêng (giữ bí mật).

Bạn sử dụng khóa công khai của ai đó để khóa tin nhắn, nhưng chỉ có khóa riêng của họ mới có thể mở khóa. Nếu Alice muốn gửi tin nhắn cho Bob, cô ấy mã hóa tin nhắn đó bằng khóa công khai của Bob. Chỉ có Bob mới có thể giải mã tin nhắn đó vì chỉ có anh ấy có khóa riêng phù hợp. Khi bạn truy cập một trang web an toàn (https://), trình duyệt và máy chủ của bạn sẽ sử dụng mật mã khóa công khai để trao đổi khóa một cách an toàn trước khi chuyển sang mã hóa nhanh hơn.

Mã hóa khóa bất đối xứng có lợi thế hơn mã hóa khóa đối xứng vì bạn không cần phải chia sẻ khóa trước. Nó cũng giúp xác minh xem tin nhắn có đến từ đúng người hay không. Tuy nhiên, nó chậm hơn mã hóa khóa đối xứng và đòi hỏi nhiều sức mạnh tính toán hơn.

2.3. Hàm băm

Hàm băm giống như dấu vân tay kỹ thuật số cho dữ liệu. Nó lấy bất kỳ dữ liệu đầu vào nào, cho dù đó là mật khẩu, tệp hay email, và biến nó thành chuỗi ký tự có độ dài cố định. Ngay cả một thay đổi nhỏ trong dữ liệu đầu vào cũng cung cấp cho bạn một giá trị băm hoàn toàn khác.

Nhưng đây là phần quan trọng: Bạn không thể đảo ngược quá trình. Băm là một chiều. Không thể quay lại dữ liệu gốc. Giả sử bạn nhập mật khẩu của mình trên một trang web. Mật khẩu không được lưu trữ trực tiếp. Thay vào đó, hệ thống lưu trữ băm. Khi bạn đăng nhập lại, mật khẩu của bạn sẽ được băm và so sánh với mật khẩu đã lưu trữ. Nếu chúng khớp, bạn sẽ vào được.

Một số thuật toán băm phổ biến bao gồm SHA-256, tạo ra giá trị băm 256 bit và MD5, tạo ra số thập lục phân 128 bit. Các hàm băm được sử dụng rộng rãi trong lưu trữ mật khẩu, kiểm tra tính toàn vẹn của tệp và bảo mật blockchain.

3. Nơi sử dụng mật mã

Mật mã học ở khắp mọi nơi xung quanh chúng ta. Nếu có nơi nào trên Internet mà dữ liệu của bạn cần được bảo mật, thì có lẽ mật mã học đang hoạt động.

3.1. Bảo mật Internet (HTTPS, SSL/TLS)

Khi bạn truy cập một trang web bắt đầu bằng https://, mật mã sẽ được ẩn sau, đảm bảo kết nối là riêng tư và an toàn. Giao thức SSL/TLS sử dụng mã hóa để giữ dữ liệu của bạn an toàn khỏi tin tặc khi truyền qua internet.

3.2. Ứng dụng nhắn tin

Bạn có bao giờ để ý thấy thông báo " Mã hóa đầu cuối " trong ứng dụng trò chuyện của mình không? Điều đó có nghĩa là chỉ bạn và người bạn đang nói chuyện mới có thể đọc được tin nhắn, ngay cả nhà cung cấp ứng dụng cũng không thể xem được. Các ứng dụng như WhatsApp, Signal và iMessage dựa vào mã hóa mạnh để giữ cho các cuộc trò chuyện được riêng tư.

3.3. Chữ ký số và chứng chỉ

Mật mã giúp xác minh danh tính trực tuyến. Chữ ký số chứng minh rằng một tài liệu hoặc tin nhắn thực sự đến từ một người cụ thể và nó không bị thay đổi. Tương tự như vậy, chứng chỉ SSL đảm bảo bạn đang kết nối đến trang web thực chứ không phải trang web giả mạo.

3.4. Tiền điện tử và Blockchain

Bitcoin, Ethereum và các loại tiền điện tử khác sẽ không tồn tại nếu không có mật mã. Các giao dịch được bảo mật bằng mã hóa khóa công khai và blockchain sử dụng hàm băm mật mã để đảm bảo không ai có thể can thiệp vào hồ sơ.

3.5. Bảo vệ dữ liệu đám mây

Khi bạn lưu trữ tệp trên đám mây, như Google Drive hoặc Dropbox, mã hóa sẽ giữ cho dữ liệu của bạn an toàn khỏi bị truy cập trái phép. Ngay cả khi ai đó hack máy chủ, các tệp được mã hóa sẽ vô dụng nếu không có khóa giải mã.

3.6. Xác thực an toàn

Đăng nhập bằng mật khẩu? Điều đó được hỗ trợ bằng hàm băm và mã hóa. Thêm xác thực hai yếu tố (2FA) và các bước mật mã lại được thực hiện, tạo mã an toàn, xác minh mã thông báo và bảo vệ thông tin đăng nhập của bạn.

3.7. Ngân hàng và Thanh toán trực tuyến

Cho dù bạn đang sử dụng thẻ ghi nợ, Apple Pay hay ứng dụng công nghệ tài chính, mật mã đảm bảo thông tin tài chính của bạn được bảo mật. Hệ thống thanh toán sử dụng mã hóa và chữ ký số để xác minh giao dịch và ngăn chặn gian lận.

4. Tại sao chúng ta cần mật mã

Chúng ta đang sống trong một thế giới mà hầu như mọi thứ, như mua sắm, giao dịch ngân hàng, trò chuyện và thậm chí là mở khóa cửa trước nhà bạn, đều diễn ra trực tuyến. Nếu không có mật mã, tất cả thông tin đó sẽ bị lộ, giống như gửi bưu thiếp thay vì phong bì dán kín. Mật mã giữ cho dữ liệu nhạy cảm (như mật khẩu, số thẻ tín dụng và tin nhắn cá nhân) được ẩn khỏi tin tặc, kẻ lừa đảo và kẻ nghe lén.

Nhưng không chỉ là về tính bí mật. Mật mã học cũng đảm bảo rằng thông tin bạn gửi hoặc nhận không bị thay đổi trong quá trình truyền tải (tính toàn vẹn của dữ liệu). Rằng người bạn đang giao dịch là người mà họ nói họ là (xác thực). Và rằng các hành động như ký hợp đồng hoặc thực hiện thanh toán không thể bị từ chối sau đó (không thể chối bỏ). Tóm lại, mật mã học xây dựng lòng tin mà chúng ta cần để hoạt động trong một xã hội kỹ thuật số, âm thầm hoạt động ở chế độ nền để giữ mọi thứ an toàn, riêng tư và đáng tin cậy.

5. Mã hóa hoạt động như thế nào

Về bản chất, mã hóa là quá trình biến dữ liệu có thể đọc được, được gọi là văn bản thuần túy, thành thứ hoàn toàn không thể đọc được, được gọi là văn bản mã hóa, để chỉ có người có đúng khóa mới có thể đảo ngược quá trình và hiểu lại được. Quá trình đảo ngược đó được gọi là giải mã.

Hãy nghĩ về mã hóa như khóa một tin nhắn trong hộp. Bạn cần một chìa khóa để khóa nó và một chìa khóa để mở nó. Tùy thuộc vào loại mã hóa (bạn còn nhớ đối xứng so với bất đối xứng không?), bạn có thể sử dụng cùng một khóa cho cả hai hoặc hai khóa riêng biệt.

Ví dụ, trong mã hóa đối xứng, Alice và Bob đều có cùng một khóa. Alice khóa tin nhắn (mã hóa) và gửi cho Bob, người mở khóa (giải mã) bằng cùng một khóa đó. Trong mã hóa bất đối xứng, Bob có khóa công khai và khóa riêng. Alice sử dụng khóa công khai của Bob để mã hóa tin nhắn. Chỉ có khóa riêng của Bob mới có thể giải mã được, vì vậy ngay cả khi ai đó chặn được, họ cũng không thể mở khóa nếu không có khóa riêng đó.

Giả sử bạn đang mua sắm trực tuyến. Khi bạn vào một trang web an toàn, trình duyệt và trang web sẽ thực hiện bắt tay nhanh chóng đằng sau hậu trường bằng cách sử dụng mã hóa bất đối xứng để trao đổi khóa được chia sẻ một cách an toàn. Sau khi hoàn tất, họ chuyển sang mã hóa đối xứng để tăng tốc mọi thứ. Điều này đảm bảo mọi thứ bạn nhập, chẳng hạn như thông tin thẻ tín dụng, thông tin vận chuyển, đều được giữ riêng tư từ đầu đến cuối.

Vì vậy, trong khi mã hóa có vẻ như là phép thuật, thì nó thực sự là toán học thông minh, logic chính xác và các hệ thống được thử nghiệm tốt, tất cả đều hoạt động cùng nhau để giữ cho cuộc sống số của chúng ta được an toàn. Và đối với hầu hết chúng ta, điều tuyệt vời nhất là chúng ta thậm chí không phải lo lắng về điều đó. Nó chỉ hoạt động.

Thật đáng kinh ngạc khi mật mã cứu chúng ta mỗi ngày trong cuộc sống trực tuyến của chúng ta, thậm chí không cần chúng ta can thiệp. Vẫn còn nhiều điều cần tìm hiểu về nó, chẳng hạn như Mật mã hậu lượng tử và sự phát triển của các phương pháp mã hóa hiện tại.