7. Session Key System

Tạo Session Key:

  • Session Key được tạo hoàn toàn trên máy người chơi bằng:

const sessionWallet = ethers.Wallet.createRandom();
  • Private key không bao giờ gửi về server, đảm bảo ví gốc hoàn toàn an toàn.

  • Hệ thống chỉ biết địa chỉ ví của Session Key, không biết private key.

Bảo mật:

  • Session Key sử dụng entropy 256-bit.

  • Độ khó brute-force: 2^256, tương đương với private key MetaMask hoặc các ví Ethereum phổ biến.

  • Điều này nghĩa là hacker không thể đoán private key trong thực tế.

Giới hạn sử dụng:

  • Chỉ dùng để đặt cược hoặc sử dụng dịch vụ DODEN.IO.

  • Không dùng để rút USDT tùy ý.

  • Bị giới hạn bởi:

    1. Permit từ ví gốc (EIP-2612)

    2. Session limit do người chơi đặt.

  • Thời gian hiệu lực: 24 giờ kể từ khi tạo.

Số tiền tối đa có thể dùng:

Tính an toàn khi Session Key bị lộ:

  • Hacker chỉ có thể chơi game hoặc sử dụng token trong hạn mức.

  • Không thể vượt quá hạn mức đã định.

  • Không thể chiếm quyền truy cập ví gốc.

Khuyến nghị: huỷ Session Key ngay sau khi chơi xong.

Ví dụ:

  • Permit cấp bởi ví gốc: 1.000 USDT

  • Session limit do người chơi đặt: 200 USDT

Khi đó, Session Key chỉ có thể dùng tối đa: min(1000, 200) = 200 USDT.

Last updated