Điểm:0

Câu hỏi đơn giản về chương trình BGV

lá cờ pk

Trong khi tôi đang cố gắng tự triển khai lược đồ BGV, tôi thấy rằng tôi thực sự bối rối về mã hóa và giải mã lược đồ. Đây là sự hiểu biết của tôi:

Để cho $p$ là một mô đun bản rõ và $q$ là một mô đun bản mã (chúng là nguyên tố cùng nhau). Để cho $\mathbb{Z}_{m} = (-m/2, m/2] \cap \mathbb{Z}$ là tập cố định của các đại diện modulo $m$$[\cdot]_{m}: \mathbb{Z} \to \mathbb{Z}_{m}$ được modulo $m$ bản đồ. Để cho $R = \mathbb{Z}[x] / (x^{n} + 1)$, $R_{m} = \mathbb{Z}_{m}[x]/(x^{n}+1)$ như thường lệ ($n$ là lũy thừa của 2). Tôi sẽ bỏ qua những thứ cấp độ và bootstrapping.

  • tạo khóa
  1. $a \leftarrow U_{q}$, ở đâu $U_{q}$ là phân bố đều trên $R_{q}$
  2. $s \leftarrow \{-1, 0, 1\}^{n}$
  3. $e \leftarrow GD(\sigma)^{n}$, ở đâu $GD(\sigma)$ là một phân phối Gaussian (rời rạc) với độ lệch chuẩn $\sigma$
  4. $b = [as + pe]_{q} \in R_{q}$$pk = (a, b) \in R_{q}^{2}$
  • mã hóa:
  1. $r \leftarrow \{-1, 0, 1\}^{n}$, với $P(X=0) = 1/2$$P(X=-1) = P(X=1) = 1/4$.
  2. $e_0, e_1 \leftarrow GD(\sigma)^{n}$.
  3. thông điệp $m \in R_{p}$
  4. $c_{0} = [br + pe_{0} + m]_{q} \in R_{q}$
  5. $c_{1} = [ar + pe_{1}]_{q} \in R_{q}$
  6. mã hóa $m$ như $\mathrm{Enc}(m) = (c_{0}, c_{1}) \in R_{q}^{2}$
  • giải mã
  1. Đối với một bản mã $(c_{0}, c_{1})$, giải mã nó thành $[[c_{0} - c_{1}s]_{q}]_{p}\in R_{p}$.

Tôi hiểu làm thế nào điều này được dự định $\mathrm{Dec}(\mathrm{Enc}(m)) = m$, nhưng khi tôi thử làm một số mẫu đồ chơi bằng tay của chính mình, tôi thấy rằng bây giờ tôi đang thiếu một thứ gì đó. Điều tôi nghĩ là, có hai mô-đun (bản rõ và bản mã) và việc sử dụng cả hai thực sự khiến việc giải mã không thành công. Điều này là do $[[x]_{q} + [y]_{q}]_{p} \neq [[x+y]_{q}]_{p}$$[[x]_{q}[y]_{q}]_{p} \neq [[xy]_{q}]_{p}$ nói chung. Đặc biệt, nếu $x + pe \not\in \mathbb{Z}_{q}$, sau đó giảm modulo $q$ sẽ làm $[[x+pe]_{q}]_{p} \neq [[x]_{q}]_{p}$ dẫn đến việc giải mã không thành công.Tôi nghĩ rằng tôi đang thiếu một cái gì đó thực sự đơn giản nhưng tôi không thể tìm ra.

Điểm:1
lá cờ ph

Bạn phải chọn q để tiếng ồn trong bản mã không bị tràn. Ví dụ, nếu $p = 2$$n = 256$ bạn có thể dùng $q = 7681$ (được lấy từ Kyber). Có nhiều cách khởi tạo có thể, và điểm quan trọng là chuẩn $||c_0 - c_1 s||_\infty = ||p (e r + e_2 - e_1 s) + m||_\infty$ ít hơn $q/2$.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.