Trong bài viết trước, chúng ta đã tìm hiểu cách hiện tượng Channel Hardening và tính trực giao tiệm cận giúp bảo vệ thông tin khi trạm gốc (BS) có số lượng ăng-ten cực lớn. Tuy nhiên, trong thực tế, hai bài toán nguy hiểm luôn đe dọa an toàn mạng không dây:
- Kẻ nghe lén bị động (Passive Eavesdropper): Kẻ nghe lén ẩn nấp và hoàn toàn không phát sóng, khiến trạm gốc không có thông tin trạng thái kênh (CSI) của Eve.
- Kẻ tấn công chủ động (Active Pilot Contamination Attack): Kẻ xấu phát cùng chuỗi huấn luyện (pilot) trong pha ước lượng kênh đường lên, làm sai lệch bộ tạo búp sóng (precoder) đường xuống của trạm gốc hướng thẳng về phía kẻ xấu!
Để giải quyết bài toán này, kỹ thuật Phát Nhiễu Nhân tạo trong Không gian Null (Null-Space Artificial Noise - AN) kết hợp với Secure Beamforming là giải pháp tối ưu hàng đầu.
1. Nguyên lý Null-Space Artificial Noise (AN)
Ý tưởng cốt lõi của AN do Goel và Negi đề xuất là: Trạm gốc Alice chia tổng công suất phát thành hai phần:
- Phần công suất dành cho tín hiệu thông tin hữu ích .
- Phần công suất dành cho tín hiệu nhiễu ngẫu nhiên được thiết kế nằm chính xác trong Không gian triệt tiêu (Null-Space) của kênh truyền người dùng hợp pháp Bob.
+----------------------------------------------+
| Alice (BS) |
| Tín hiệu phát: x = w * s + V_n * z |
+----------------------------------------------+
/ \
Búp sóng thông tin w / \ Nhiễu nhân tạo V_n * z
hướng tới Bob / \ bắn tràn không gian
v v
+-------------------+ +--------------------+
| Bob (Hợp pháp) | | Eve (Nghe lén) |
| h_B^H * V_n = 0 | | h_E^H * V_n != 0 |
| => Nhiễu = 0 | | => Eve bị mù bởi |
| Nhận tin rõ nét | | nhiễu cực mạnh |
+-------------------+ +--------------------+
Biểu diễn toán học
Giả sử trạm gốc có ăng-ten. Kênh truyền đến Bob là vector . Alice xây dựng ma trận chiếu không gian null thỏa mãn điều kiện trực giao hoàn hảo:
Tín hiệu phát tổng hợp từ Alice có dạng:
Trong đó:
- là vector MRT beamforming.
- là vector nhiễu Gauss độc lập chuẩn hóa.
- là ràng buộc tổng công suất.
2. Tín hiệu Nhận được tại Bob và Eve
2.1. Tại người dùng hợp pháp Bob
Tín hiệu thu được tại Bob:
Nhờ tính chất trực giao của Null-Space, nhiễu nhân tạo hoàn toàn bị triệt tiêu 100% tại Bob. Tỷ số tín hiệu trên tạp âm (SNR) của Bob không hề bị suy giảm bởi AN!
2.2. Tại kẻ nghe lén Eve
Do kênh truyền độc lập thống kê với , hầu như không nằm trong không gian null của (). Tín hiệu thu được tại Eve là:
Tỷ số SINR (Signal-to-Interference-plus-Noise Ratio) tại Eve bị “bóp nghẹt”:
Khi số lượng ăng-ten lớn, theo định lý giới hạn, , do đó:
Khi tăng công suất nhiễu , , khiến dung lượng kênh nghe lén bất kể khoảng cách từ Eve tới trạm gốc là bao nhiêu!
3. Tối ưu hóa Phân bổ Công suất ( vs )
Bài toán tối ưu hóa Secrecy Rate được phát biểu như sau:
Bằng phương pháp đạo hàm Karush-Kuhn-Tucker (KKT), tỷ lệ phân bổ công suất tối ưu thông thường đạt khoảng 60% - 70% công suất cho tín hiệu hữu ích () và 30% - 40% công suất cho nhiễu nhân tạo () khi số lượng ăng-ten .
4. Chống Tấn công Pilot Contamination Chủ động
Khi Eve phát tín hiệu pilot giả mạo để làm ô nhiễm ước lượng kênh của Bob:
- Phát hiện Bất thường Năng lượng (Energy Ratio Detection): Trạm gốc Massive MIMO so sánh tỷ lệ năng lượng giữa các khe thời gian để nhận diện sự có mặt của sóng gây ô nhiễm.
- Lọc Không gian Góc tới (Angle-of-Arrival - AoA Subspace Filtering): Khai thác mảng ăng-ten cực lớn để phân tách miền góc giữa hướng đến của Bob và Eve, từ đó chiếu kênh vào miền góc an toàn.
5. Thuật toán Mô phỏng trên Python
import numpy as np
def simulate_artificial_noise_pls(M=64, P_total=1.0, power_split=0.7, trials=1000):
"""
Mô phỏng Secure Beamforming với Null-space Artificial Noise
- P_total: Tổng công suất phát
- power_split: Tỷ lệ công suất cho tín hiệu (P_s = power_split * P_total)
"""
P_s = power_split * P_total
P_n = (1.0 - power_split) * P_total
sigma2 = 0.01 # Công suất tạp âm
secrecy_rates = []
for _ in range(trials):
# Kênh Rayleigh
h_B = (np.random.randn(M, 1) + 1j * np.random.randn(M, 1)) / np.sqrt(2)
h_E = (np.random.randn(M, 1) + 1j * np.random.randn(M, 1)) / np.sqrt(2)
# MRT Precoding vector cho Bob
w = h_B / np.linalg.norm(h_B)
# Tạo cơ sở không gian Null của h_B bằng SVD hoặc Gram-Schmidt
# h_B^H * V_n = 0
Q, _ = np.linalg.qr(h_B, mode='complete')
V_n = Q[:, 1:] # (M, M-1) trực giao với h_B
# SNR tại Bob (Nhiễu AN triệt tiêu hoàn toàn)
gamma_B = (P_s * (np.linalg.norm(h_B) ** 2)) / sigma2
C_B = np.log2(1 + gamma_B)
# SINR tại Eve (Chịu toàn bộ nhiễu AN)
an_leakage = np.linalg.norm(h_E.conj().T @ V_n) ** 2 / (M - 1)
sig_eve = np.abs(h_E.conj().T @ w) ** 2
gamma_E = float((P_s * sig_eve) / (P_n * an_leakage + sigma2))
C_E = np.log2(1 + gamma_E)
R_s = max(0.0, float(C_B - C_E))
secrecy_rates.append(R_s)
return np.mean(secrecy_rates)
print("=== KẾT QUẢ MÔ PHỎNG SECURE BEAMFORMING & AN ===")
for split in [0.99, 0.8, 0.7, 0.5, 0.3]:
rate = simulate_artificial_noise_pls(M=64, P_total=1.0, power_split=split)
print(f"Tỷ lệ P_s: {split*100:2.0f}% | P_n: {(1-split)*100:2.0f}% -> Dung lượng bí mật R_s: {rate:.3f} bps/Hz")
6. Lời kết
Kỹ thuật Null-Space Artificial Noise kết hợp với kiến trúc Massive MIMO tạo nên một lá chắn vật lý vững chắc:
- Bob nhận được tín hiệu sạch hoàn hảo không bị ảnh hưởng bởi nhiễu AN.
- Eve bị “gây mù” toàn diện bởi trường nhiễu phát tán trong không gian trực giao.
- Hệ thống đạt được khả năng bảo mật thông tin tối thượng ngay cả trong điều kiện không có thông tin kênh (CSI) của kẻ nghe lén.