Chuyển đến nội dung chính
Quỳnh Giang
Quay lại

Thiết kế Secure Beamforming và Phát Nhiễu Nhân tạo (Artificial Noise) trong Massive MIMO

Chỉnh sửa trang

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:

  1. 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.
  2. 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 PmaxP_{\max} thành hai phần:

                  +----------------------------------------------+
                  |                 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ó MM ăng-ten. Kênh truyền đến Bob là vector hBCM×1\mathbf{h}_B \in \mathbb{C}^{M \times 1}. Alice xây dựng ma trận chiếu không gian null VnCM×(M1)\mathbf{V}_n \in \mathbb{C}^{M \times (M-1)} thỏa mãn điều kiện trực giao hoàn hảo:

hBHVn=01×(M1)\mathbf{h}_B^H \mathbf{V}_n = \mathbf{0}_{1 \times (M-1)}

Tín hiệu phát tổng hợp xCM×1\mathbf{x} \in \mathbb{C}^{M \times 1} từ Alice có dạng:

x=Psws+PnM1Vnz\mathbf{x} = \sqrt{P_s} \mathbf{w} s + \sqrt{\frac{P_n}{M-1}} \mathbf{V}_n \mathbf{z}

Trong đó:


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:

yB=hBHx+nB=PshBHws+PnM1hBHVn=0z+nBy_B = \mathbf{h}_B^H \mathbf{x} + n_B = \sqrt{P_s} \mathbf{h}_B^H \mathbf{w} s + \sqrt{\frac{P_n}{M-1}} \underbrace{\mathbf{h}_B^H \mathbf{V}_n}_{=\mathbf{0}} \mathbf{z} + n_B

yB=PshBs+nBy_B = \sqrt{P_s} \|\mathbf{h}_B\| s + n_B

Nhờ tính chất trực giao của Null-Space, nhiễu nhân tạo z\mathbf{z} 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 hE\mathbf{h}_E độc lập thống kê với hB\mathbf{h}_B, hE\mathbf{h}_E hầu như không nằm trong không gian null của Vn\mathbf{V}_n (hEHVn0\mathbf{h}_E^H \mathbf{V}_n \neq \mathbf{0}). Tín hiệu thu được tại Eve là:

yE=PshEHws+PnM1hEHVnz+nEy_E = \sqrt{P_s} \mathbf{h}_E^H \mathbf{w} s + \sqrt{\frac{P_n}{M-1}} \mathbf{h}_E^H \mathbf{V}_n \mathbf{z} + n_E

Tỷ số SINR (Signal-to-Interference-plus-Noise Ratio) tại Eve bị “bóp nghẹt”:

γE=PshEHw2PnM1hEHVn2+σE2\gamma_E = \frac{P_s |\mathbf{h}_E^H \mathbf{w}|^2}{\frac{P_n}{M-1} \|\mathbf{h}_E^H \mathbf{V}_n\|^2 + \sigma_E^2}

Khi số lượng ăng-ten MM lớn, theo định lý giới hạn, hEHVn2(M1)βE\|\mathbf{h}_E^H \mathbf{V}_n\|^2 \to (M-1) \beta_E, do đó:

γEPshEHw2PnβE+σE2\gamma_E \approx \frac{P_s |\mathbf{h}_E^H \mathbf{w}|^2}{P_n \beta_E + \sigma_E^2}

Khi tăng công suất nhiễu PnP_n, γE0\gamma_E \to 0, khiến dung lượng kênh nghe lén CE0C_E \to 0 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 (PsP_s vs PnP_n)

Bài toán tối ưu hóa Secrecy Rate được phát biểu như sau:

maxPs,Pn0[log2(1+PshB2σB2)log2(1+PshEHw2PnβE+σE2)]\max_{P_s, P_n \ge 0} \left[ \log_2\left(1 + \frac{P_s \|\mathbf{h}_B\|^2}{\sigma_B^2}\right) - \log_2\left(1 + \frac{P_s |\mathbf{h}_E^H \mathbf{w}|^2}{P_n \beta_E + \sigma_E^2}\right) \right]

s.t.Ps+PnPmax\text{s.t.} \quad P_s + P_n \le P_{\max}

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 (PsP_s)30% - 40% công suất cho nhiễu nhân tạo (PnP_n) khi số lượng ăng-ten M64M \ge 64.


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:

  1. 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.
  2. 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:


Chỉnh sửa trang
Chia sẻ bài viết:

Bài viết trước
Physical-Layer Security in Massive MIMO: Fundamentals, Secrecy Capacity, and Channel Hardening
Bài viết tiếp theo
Проектирование защищенного диаграммообразования и искусственного шума (AN) в Massive MIMO