Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [An toàn thông tin] Chuyển giao lãng quên (Oblivious Transfer) 1-trong-2

    OT 1-trong-2 dựa trên RSA

    Bên gửi có khóa RSA (N,e,d)(N,e,d)(N,e,d) và hai thông điệp m0,m1m_0, m_1m0​,m1​; bên nhận chọn bit bbb và muốn học đúng mbm_bmb​ mà bên gửi không biết bbb.

    Giao thức (giá trị "ngẫu nhiên" cho sẵn để kết quả xác định):

    1. Bên gửi công bố x0,x1x_0, x_1x0​,x1​.
    2. Bên nhận chọn kkk, gửi v=(xb+ke) mod Nv = (x_b + k^{e}) \bmod Nv=(xb​+ke)modN.
    3. Bên gửi gửi m0′=m0+(v−x0)dm_0' = m_0 + (v-x_0)^{d}m0′​=m0​+(v−x0​)d, m1′=m1+(v−x1)d(modN)m_1' = m_1 + (v-x_1)^{d} \pmod Nm1′​=m1​+(v−x1​)d(modN).
    4. Bên nhận tính mb=(mb′−k) mod Nm_b = (m_b' - k) \bmod Nmb​=(mb′​−k)modN.

    Chỉ với nhánh bbb thì (v−xb)d=k(v-x_b)^d = k(v−xb​)d=k, nên chỉ giải mã được mbm_bmb​.

    Ví dụ

    Bên nhận với bbb cho trước phục hồi đúng mbm_bmb​.

    • Định dạng đầu vào:

      Một dòng: N e d x0 x1 m0 m1 b k.

    • Ràng buộc đầu vào:

      (N,e,d)(N,e,d)(N,e,d) là khóa RSA hợp lệ, 0≤xi,mi,k<N0 \le x_i, m_i, k < N0≤xi​,mi​,k<N, b∈{0,1}b \in \{0,1\}b∈{0,1}.

    • Định dạng đầu ra:

      Một số nguyên: thông điệp mbm_bmb​ mà bên nhận học được.

    Ví dụ:

    Đầu vào:

    3233 17 2753 1234 2222 99 150 1 77

    Đầu ra:

    150

    Giải thích:

    Với $b=1$, đại lượng $(v-x_1)^d = k$, nên $m_1' - k = m_1 = 150$.

    Đang tải editor...