Select Page

Mã hóa AES và Blowfish trong VPN

Mã hóa AES và Blowfish trong VPN

Mạng riêng ảo (VPN) sử dụng mã hóa để bảo vệ quyền riêng tư của bạn. Trong bài viết này tôi sẽ giới thiệu đến AES và Blowfish, là hai công cụ mã hóa được sử dụng nhiều trong các dịch vụ VPN.

VPN cần chặn các tác nhân bên ngoài như đọc, thay đổi, khóa hoặc thay thế nội dụng từ các kết nối Internet của bạn. Họ làm được điều này bằng cách ẩn toàn bộ dữ liệu và thông tin quản trị kết nối đi qua máy tính và các máy chủ web mà nó giao tiếp. Điều này làm được bằng mã hóa.

mã hóa aes và blowfish trong vpn

Có nhiều chiều hướng tấn công có thể xâm nhập vào thông tin liên lạc của bạn và vị vậy VPN cần sử dụng ba loại mã hóa. Đó là:

  1. Mã hóa đối xứng (Symmetric encryption) để bảo vệ dữ liệu trong lúc vận chuyển.
  2. Mã hóa khóa công khai (Public key encryption) để phân phối khóa mã hóa kênh dữ liệu.
  3. Thuật toán băm (Hashing) để xác nhận tính toàn vẹn của dữ liệu.

Xem thêm: Cơ chế bảo mật trong Linux

Trong bài hướng dẫn này, bạn sẽ tìm hiểu thêm về ba phương thức bảo vệ này và cách VPN sử dụng chúng. Hệ thống an toàn nhất cho các dịch vụ VPN được gọi là OpenVPN. Đây là một thư viện các chức năng mang lại toàn bộ giao thức của các quy trình bảo mật khi các nhà phát triển viết phần mềm VPN. Hệ thống này có lợi thế là nguồn mở để bất kỳ ai cũng có thể đọc được mã nguồn, điều đó có nghĩa là các nhà sản xuất phần mềm VPN không bị lộ các phương pháp mã hóa. Bài viết này cũng sẽ nói rõ về phương pháp mã hóa sử dụng OpenVPN.

Mã hóa đối xứng

Mã hóa đối xứng là loại mật mã lâu đời nhất trên thế giới. Đây là một hệ thống mật mã được sử dụng đầu tiên vào thời La Mã. Dữ liệu được chuyển đổi bằng thuật toán. Một biến trong thuật toán là yếu tố làm thay đổi kết quả của mã hóa. Đây là những gì được gọi là “chìa khóa”.

Đặc điểm nhận dạng của mã hóa đối xứng là bạn cần có mật mã ánh xạ thay thế để mã hóa và giải mã văn bản được mã hóa. Đây là lý do tại sao nó được gọi là đối xứng trực tiếp – cùng một khóa được sử dụng bởi cả hai bên. Loại mật mã này còn được gọi là mã hóa “shared key” hoặc “shared secret”.

Các thuật toán phổ biến nhất dùng trong VPN là:

  • AES
  • Blowfish

Thuật toán AES

Tiêu chuẩn mã hóa nâng cao (Advanced Encryption Standard – AES) được tạo ra bởi hai nhà mật mã học người Bỉ, Vincent Rijmen và Joan Daemen. Hai ông đã tạo ra một mật mã được gọi là Rijndael và họ đã điều chỉnh để tạo thành AES. Sự cần thiết của AES đã được xác định bởi Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ (US National Institute for Standards and Technology – NIST). Viện được giao nhiệm vụ xác định các hệ thống an toàn có thể sử dụng cho Chính phủ Hoa Kỳ và tất cả các cơ quan có liên quan.

Xem thêm: Bảo vệ mật khẩu an toàn chỉ với sáu bước

Mã hóa này được các chính phủ trên toàn thế giới tin tưởng và có lẽ là hệ thống mã hóa tốt nhất để tìm kiếm khi bạn chọn VPN. Có một số người không thích mã hóa AES, vì họ cho rằng Hoa Kỳ đã chỉnh sửa lại công cụ này. Họ nghi ngờ rằng chính phủ Hoa Kỳ đã thêm vào backdoor (Cửa hậu) để Hoa Kỳ có thể dễ dàng truy cập vào hệ thống của những bên đang sử dụng công cụ này. Mặc dù có những tin đồn như vậy, nhưng cho đến nay vẫn chưa có bằng chứng về backdoor này.

AES là một khối mật mã phá vỡ các luồng dữ liệu thành các mảng 128 bits, là 16 bytes. Các khóa có thể dài 128, 192 và 256 bits. Mỗi khối là một lưới gồm 4 bytes trên 4 bytes. Số lần chuyển đổi phụ thuộc vào độ dài của khóa:

  • 128-bit key: 10 vòng,
  • 192-bit key: 12 vòng,
  • 256-bit key: 14 vòng.

Mỗi vòng chuyển đổi là một trong bốn thao tác: biến đổi thông qua xor bitwise với khóa, bước thay thế, dịch chuyển hàng và trộn cột.

AES được sử dụng bởi nhiều nhà phát hành VPN lớn gồm ExpressVPN, NordVPN, CyberGhost, IPVanish, PrivateVPN, Surfshark, VyprVPN, ZenMate, PureVPN, StrongVPN, VPNArea, SaferVPN, Ivacy, GooseVPN, Windscribe, và HideMyAss.

Mã hóa Blowfish

Một số người không tin tưởng chính phủ Hoa Kỳ khi sử dụng AES, cho nên họ đã tìm một loại mã hóa khác và trong đó có Blowfish.

Blowfish là mã hóa dữ liệu mặc định trong OpenVPN. Tuy nhiên, AES cũng trong đó và hầu hết các VPN lựa chọn AES thay vì Blowfish.

Blowfish là sự thay thế cho các VPN khi họ không muốn sử dụng AES. Người tạo ra mật mã, Bruce Schneier, ông đã không đăng ký bằng sáng chế là để mọi người sử dụng nó miễn phí. Đây là lý do mà nó được đưa vào OpenVPN miễn phí và nguồn mở.

Còn nhiều loại mã hóa khác được sử dụng trong VPN và tôi sẽ đề cập đến trong các bài viết sau và sẽ cụ thể hơn.

Bài viết được dịch từ tài liệu trong Private Data.

About The Author

Pao Pevil

Cuộc sống này đối với tôi là màu đen tối vô tận. Đen tối đó che chở, bảo vệ và tôi tôn thờ nó. Ánh sáng có thể cho chúng ta sự sống, nhưng đêm tối mới cho chúng ta sự vĩnh hằng. Máu thịt tôi là Quỷ dữ, tôi muốn sống với cội gốc của mình. Linh hồn tôi là Bóng tối, tôi muốn là chính tôi.

Trackbacks/Pingbacks

  1. Mã hóa PKE và TLS trong VPN - Pao Pevil - […] […]

Leave a Reply

Subscribe

Nhận bài viết, thông tin mới qua Email bằng cách nhập Email của bạn vào ô dưới.

Join 7 other subscribers