
Coppersmith Splitting System(CSS) | 可變參數的Splitting System(PSS) | 參數相依的Splitting System(PDSS) |
| 定義 假設\(m\)和\(t\)都是偶數且\(0<t<m\),定義\((m,t)\)的splitting system是符合以下2點的數對\((X,\cal{B})\) 1.集合\(X\)有\(m\)個元素,集合\(\cal{B}\)有\(\displaystyle \frac{m}{2}\)個\(X\)的子集合,\(\cal{B}\)稱為區塊(blocks)。 2.對所有\(X\)的子集合\(Y\),\(Y\)有\(t\)個元素,存在一個區塊\(B\)使得\(B\)和\(Y\)的交集個數為\(\displaystyle \frac{t}{2}\)。 | 定義 假設\(m\)、\(t\)和\(t_s\)和都是整數且\(0<t<m\)、\(0\le t_s \le t\),定義\((m,t,t_s)\)的可變參數splitting system是符合以下2點的數對\((X,\cal{B})\) 1.集合\(X\)有\(m\)個元素,集合\(\cal{B}\)有\(\displaystyle \Bigg\lfloor\; \frac{t_s m}{t}\Bigg\rfloor\;\)個\(X\)的子集合,\(\cal{B}\)稱為區塊(blocks)。 2.對所有\(X\)的子集合\(Y\),\(Y\)有\(t\)個元素,存在一個區塊\(B\)使得\(B\)和\(Y\)的交集個數為\(\displaystyle t_s\)。 | 定義 假設\(m\)、\(t\)、\(t_1\)、\(t_2\)、\(m_1\)和\(m_2\)和都是整數且\(0<t<m\)、\(t=t_1+t_2\)、\(\displaystyle m_1=\frac{t_1m}{t}\)、\(\displaystyle m_2=\frac{t_2m}{t}\)、,定義\((m,m_1,m_2,t_1,t_2)\)的可變參數splitting system是符合以下2點的數對\((X,\cal{B})\) 1.集合\(X\)有\(m\)個元素\((m=m_1+m_2)\),集合\(\cal{B}\)有\(m_2\)個\(X\)的子集合,\(\cal{B}\)稱為區塊(blocks)。 2.對所有\(X\)的子集合\(Y\),\(Y\)有\(t\)個元素,存在一個區塊\(B\)使得\(B\)和\(Y\)的交集個數為\(\displaystyle t_2\)。 |
| 產生\(\displaystyle (\frac{m}{2};m,t)\)的Coppersmith splitting system方法 令\(X=Z_m\),定義 \(B_i=\{\;i+j\pmod{m}:0\le j\le m/2-1\}\;\) \(\cal B\)\(=\{\;B_i:0\le i \le m/2-1\}\;\) | 產生\(\displaystyle (m;m,t,t_s)\)的可變參數splitting system方法 令\(X=Z_m\),定義 \(B_i=\{\;i+j\pmod{m}:0\le j\le \Bigg\lfloor\;\frac{t_sm}{t}\Bigg\rfloor\;-1\}\;\) \(\cal B\)\(=\{\;B_i:0\le i \le m-1\}\;\) | 產生\(\displaystyle (m;m_1,m_2,t_1,t_2)\)的參數相依splitting system方法 令\(X=Z_m\),定義 \(B_i=\{\;i+j\pmod{m}:0\le j\le m_2\}\;\) \(\cal B\)\(=\{\;B_i:0\le i \le m_2-1\}\;\) |
| 以\(m=8,t=4\)為例(解\(x\)有8位元,其中有4個1,分成2個1和2個1分別列舉) \(X=Z_m=\{\;0,1,2,3,4,5,6,7\}\;\),\(B_0=\{\;0,1,2,3\}\;\),\(B_1=\{\;1,2,3,4\}\;\),\(B_2=\{\;2,3,4,5\}\;\),\(B_3=\{\;3,4,5,6\}\;\),\(\cal B\)\(=\{\;B_0,B_1,B_2,B_3\}\;\) 子集合\(Y=\{\;0,2,4,6\}\;\)有4個元素,存在\(B_0,B_1,B_2,B_3\)和\(Y\)交集2個元素。 子集合\(Y=\{\;1,3,5,7\}\;\)有4個元素,存在\(B_0,B_1,B_2,B_3\)和\(Y\)交集2個元素。 子集合\(Y=\{\;0,1,6,7\}\;\)有4個元素,存在\(B_0\)和\(Y\)交集2個元素。 子集合\(Y=\{\;0,2,5,7\}\;\)有4個元素,存在\(B_0\)和\(Y\)交集2個元素。 子集合\(Y=\{\;4,5,6,7\}\;\)有4個元素,存在\(B_2\)和\(Y\)交集2個元素。 | 以\(m=8,t=4,t_s=1\)為例(解\(x\)有8位元,其中有4個1,分成1個1和3個1分別列舉) \(X=Z_m=\{\;0,1,2,3,4,5,6,7\}\;\),\(B_0=\{\;0,1\}\;\),\(B_1=\{\;1,2\}\;\),\(B_2=\{\;2,3\}\;\),\(B_3=\{\;3,4\}\;\),\(B_4=\{\;4,5\}\;\),\(B_5=\{\;5,6\}\;\),\(B_6=\{\;6,7\}\;\),\(B_7=\{\;7,0\}\;\),\(\cal B\)\(=\{\;B_0,B_1,B_2,B_3,B_4,B_5,B_6,B_7\}\;\) 子集合\(Y=\{\;0,2,4,6\}\;\)有4個元素,存在\(B_0,B_1,B_2,B_3,B_4,B_5,B_6,B_7\)和\(Y\)交集1個元素。 子集合\(Y=\{\;1,3,5,7\}\;\)有4個元素,存在\(B_0,B_1,B_2,B_3,B_4,B_5,B_6,B_7\)和\(Y\)交集1個元素。 子集合\(Y=\{\;0,1,6,7\}\;\)有4個元素,存在\(B_0,B_1,B_5,B_6,B_7\)和\(Y\)交集1個元素。 子集合\(Y=\{\;0,2,5,7\}\;\)有4個元素,存在\(B_0,B_1,B_2,B_4,B_5,B_6,B_7\)和\(Y\)交集1個元素。 子集合\(Y=\{\;4,5,6,7\}\;\)有4個元素,存在\(B_3,B_4,B_5,B_6,B_7\)和\(Y\)交集1個元素。 | 以\(m=8,t=4,t_1=3,t_2=1,m_1=6,m_2=2\)為例(解\(x\)有8位元,其中有4個1,分成3個1和1個1分別列舉) \(X=Z_m=\{\;0,1,2,3,4,5,6,7\}\;\),\(B_0=\{\;0,1\}\;\),\(B_1=\{\;1,2\}\;\),\(B_2=\{\;2,3\}\;\),\(B_3=\{\;3,4\}\;\),\(B_4=\{\;4,5\}\;\),\(B_5=\{\;5,6\}\;\),\(B_6=\{\;6,7\}\;\),\(B_7=\{\;7,0\}\;\),\(\cal B\)\(=\{\;B_0,B_1,B_2,B_3,B_4,B_5,B_6,B_7\}\;\) 子集合\(Y=\{\;0,2,4,6\}\;\)有4個元素,存在\(B_0,B_1,B_2,B_3,B_4,B_5,B_6,B_7\)和\(Y\)交集1個元素。 子集合\(Y=\{\;1,3,5,7\}\;\)有4個元素,存在\(B_0,B_1,B_2,B_3,B_4,B_5,B_6,B_7\)和\(Y\)交集1個元素。 子集合\(Y=\{\;0,1,6,7\}\;\)有4個元素,存在\(B_0,B_1,B_5,B_6,B_7\)和\(Y\)交集1個元素。 子集合\(Y=\{\;0,2,5,7\}\;\)有4個元素,存在\(B_0,B_1,B_2,B_4,B_5,B_6,B_7\)和\(Y\)交集1個元素。 子集合\(Y=\{\;4,5,6,7\}\;\)有4個元素,存在\(B_3,B_4,B_5,B_6,B_7\)和\(Y\)交集1個元素。 |
void main()
{
for(i=0;i<5;i++)
{printf(i);
}
}| 離散對數問題 Discrete Logarithm Problem,DLP \( a^x \equiv b \pmod p \),解\( x \) | 橢圓曲線離散對數問題 Elliptic Curve Discrete Logarithm Problem,ECDLP \( P,Q \in E(F_p) \),\( Q=kP \),解\( k \) | |
| baby step,giant step | D | a |
| index caculus | F | a |
| Pohlig-Hellman | H | a |
| Pohlig Hellman | J | a |
| Pollard's rho | J | a |
| \(thread 0\) \( v_0=\left[ \matrix{1&1&7&2} \right] \) \( v_2=\left[ \matrix{1&8&5&7} \right] \) 進行\(Gauss\) \(Reduction\) | \(thread 1\) \( v_1=\left[ \matrix{9&8&4&6} \right] \) \( v_3=\left[ \matrix{2&3&1&1} \right] \) 進行\(Gauss\) \(Reduction\) |
| \( \Vert\; v_0 \Vert\;=\sqrt{55}<\Vert\; v_2 \Vert\;=\sqrt{139} \) 兩向量不需交換 | \( \Vert\; v_1 \Vert\;=\sqrt{197}>\Vert\; v_3 \Vert\;=\sqrt{15} \) 兩向量交換 \( v_1=\left[ \matrix{2&3&1&1} \right] \) \( v_3=\left[ \matrix{9&8&4&6} \right] \) |
| \( \displaystyle q=\Bigg\lfloor\; \frac{v_0 \cdot v_2}{v_0 \cdot v_0} \Bigg\rceil\;=\Bigg\lfloor\; \frac{58}{55} \Bigg\rceil\;=\Bigg\lfloor\;1.054 \Bigg\rceil\;=1 \) \( v_2=v_2-q \times v_0=\left[ \matrix{0&7&-2&5} \right] \) 得到更短的向量 | \( \displaystyle q=\Bigg\lfloor\; \frac{v_1 \cdot v_3}{v_1 \cdot v_1} \Bigg\rceil\;=\Bigg\lfloor\; \frac{52}{15} \Bigg\rceil\;=\Bigg\lfloor\; 3.466 \Bigg\rceil\;=3 \) \( v_3=v_3-q \times v_1=\left[ \matrix{3&-1&1&3} \right] \) 得到更短的向量 |
| \( \Vert\; v_0 \Vert\;=\sqrt{55}<\Vert\; v_2 \Vert\;=\sqrt{78} \) 兩向量不需交換 | \( \Vert\; v_1 \Vert\;=\sqrt{15}<\Vert\; v_3 \Vert\;=\sqrt{20} \) 兩向量不需交換 |
| \( \displaystyle q=\Bigg\lfloor\; \frac{v_0 \cdot v_2}{v_0 \cdot v_0} \Bigg\rceil\;=\Bigg\lfloor\; \frac{3}{55} \Bigg\rceil\;=\Bigg\lfloor\; 0.054 \Bigg\rceil\;=0 \) \(v_0\)和\(v_2\)化簡結束 | \( \displaystyle q=\Bigg\lfloor\; \frac{v_1 \cdot v_3}{v_1 \cdot v_1} \Bigg\rceil\;=\Bigg\lfloor\; \frac{7}{15} \Bigg\rceil\;=\Bigg\lfloor\; 0.466 \Bigg\rceil\;=0 \) \(v_1\)和\(v_3\)化簡結束 |
| \(thread\) 0 \( v_0=\left[ \matrix{1&1&7&2} \right] \) \( v_3=\left[ \matrix{3&-1&1&3} \right]\) 進行\(Gauss\) \(Reduction\) | \(thread\) 1 \( v_1=\left[ \matrix{2&3&1&1} \right] \) \( v_2=\left[ \matrix{0&7&-2&5} \right] \) 進行\(Gauss\) \(Reduction\) |
| \( \Vert\; v_0 \Vert\;=\sqrt{55}>\Vert\; v_3 \Vert\;=\sqrt{20} \) 兩向量交換 \( v_0=\left[ \matrix{3&-1&1&3} \right] \) \( v_3=\left[ \matrix{1&1&7&2} \right] \) | \( \Vert\; v_1 \Vert\;=\sqrt{15}<\Vert\; v_2 \Vert\;=\sqrt{78} \) 兩向量不需交換 |
| \( \displaystyle q=\Bigg\lfloor\; \frac{v_0 \cdot v_3}{v_0 \cdot v_0} \Bigg\rceil\;=\Bigg\lfloor\; \frac{15}{20} \Bigg\rceil\;=\Bigg\lfloor\; 0.75 \Bigg\rceil\;=1 \) \( v_3=v_3-q \times v_0=\left[ \matrix{-2&2&6&-1} \right] \) 得到更短的向量 | \( \displaystyle q=\Bigg\lfloor\; \frac{v_1 \cdot v_2}{v_1 \cdot v_1} \Bigg\rceil\;=\Bigg\lfloor\; \frac{24}{15} \Bigg\rceil\;=\Bigg\lfloor\; 1.6 \Bigg\rceil\;=2 \) \( v_2=v_2-q \times v_1=\left[ \matrix{-4&1&-4&3} \right] \) 得到更短的向量 |
| \( \Vert\; v_0 \Vert\;=\sqrt{20}<\Vert\; v_3 \Vert\;=\sqrt{45} \) 兩向量不需交換 | \( \Vert\; v_1 \Vert\;=\sqrt{15}<\Vert\; v_2 \Vert\;=\sqrt{42} \) 兩向量不需交換 |
| \( \displaystyle q=\Bigg\lfloor\; \frac{v_0 \cdot v_3}{v_0 \cdot v_0} \Bigg\rceil\;=\Bigg\lfloor\; \frac{-5}{20} \Bigg\rceil\;=\Bigg\lfloor\; -0.25 \Bigg\rceil\;=0 \) \(v_0\)和\(v_3\)化簡結束 | \( \displaystyle q=\Bigg\lfloor\; \frac{v_1 \cdot v_2}{v_1 \cdot v_1} \Bigg\rceil\;=\Bigg\lfloor\; \frac{-6}{15} \Bigg\rceil\;=\Bigg\lfloor\; -0.4 \Bigg\rceil\;=0 \) \(v_1\)和\(v_2\)化簡結束 |
| \(thread\) 0 \( v_0=\left[ \matrix{3&-1&1&3} \right] \) \( v_1=\left[ \matrix{2&3&1&1} \right] \) 進行\(Gauss\) \(Reduction\) | \(thread\) 1 \( v_2=\left[ \matrix{-4&1&-4&3} \right] \) \( v_3=\left[ \matrix{-2&2&6&-1} \right] \) 進行\(Gauss\) \(Reduction\) |
| \( \Vert\; v_0 \Vert\;=\sqrt{20}>\Vert\; v_1 \Vert\;=\sqrt{15} \) 兩向量交換 \( v_0=\left[ \matrix{2&3&1&1} \right] \) \( v_1=\left[ \matrix{3&-1&1&3} \right] \) | \( \Vert\; v_2 \Vert\;=\sqrt{42}<\Vert\; v_3 \Vert\;=\sqrt{45} \) 兩向量不需交換 |
| \( \displaystyle q=\Bigg\lfloor\; \frac{v_0 \cdot v_1}{v_0 \cdot v_0} \Bigg\rceil\;=\Bigg\lfloor\; \frac{7}{15} \Bigg\rceil\;=\Bigg\lfloor\; 0.466 \Bigg\rceil\;=0 \) \(v_0\)和\(v_1\)化簡結束 | \( \displaystyle q=\Bigg\lfloor\; \frac{v_2 \cdot v_3}{v_2 \cdot v_2} \Bigg\rceil\;=\Bigg\lfloor\; \frac{-17}{42} \Bigg\rceil\;=\Bigg\lfloor\; -0.404 \Bigg\rceil\;=0 \) \(v_2\)和\(v_3\)化簡結束 |
| \( \matrix{4 & 9 & 3 & -5 & -5 & -1 & 7 & -1 & -5} \) | \( \matrix{-2 & -8 & -7 & -1 & -3 & 6 & -3 & 9 & 8} \) | \( \matrix{1 & -3 & -2 & 3 & 9 & 7 & 2 & 7 & -2} \) |
| 歡迎光臨 Math Pro 數學補給站 (https://math.pro/db/) | 論壇程式使用 Discuz! 6.1.0 |