# 4.4. Module signing-desktop

Đây là ứng dụng Client-side dành riêng cho máy nhân sự, giúp khắc phục nhược điểm trình duyệt web không thể đọc trực tiếp cổng USB vật lý.

- **Nhiệm vụ:**
    
    
    - Chạy nền một Web Server cục bộ (`http://localhost:6868/api/desktop/*`) tiếp nhận lệnh ký từ màn hình trình duyệt Web Portal e-Office.
    - Nhận biết và quét (Scan) các USB Token (PKCS#11) đang gắn trên máy tính thông qua file <span class="context-scope-mention"><span class="inline-flex items-center gap-0.5 rounded-md align-middle text-sm font-medium transition-[opacity,background-color] cursor-pointer hover:bg-gray-500/20 select-text translate-y-[-1px]" draggable="true"><span class="inline-flex break-all leading-tight">token-config.json</span></span></span>.
    - Hiển thị giao diện người dùng (UI) tối giản bằng Java Swing / FlatLaf giúp người dùng: 
        - Chọn chứng thư số cá nhân.
        - Nhập mã PIN an toàn.
        - Xem thanh tiến trình Loading khi file đang xử lý.
    - Gắn hình ảnh chữ ký và ráp kết quả trả về cho Frontend.
- **Thành phần kỹ thuật nổi bật:**
    
    
    - `/ui`: Chứa các cửa sổ Pop-up, `CertificateListDialog`, `TokenProfileDialog`.
    - `/controller` &amp; `/service`: Tiếp nhận API Custom và điều phối gọi Token.