In general, $p_2$ will have $x^j$ as a zero in $F_1$. In other words, $p_1(x)$ divides $p_2(x^j)$ over $\mathrm{GF}(2)$. To find $j$ from the given $p_1$ and $p_2$, one can factor $p_2(y)$ in $F_1[y]$, and for every zero $y_0\in F_1$ of $p_2(y)$, find the discrete log of $y_0$ base $x$ in $F_1$. Here is a sample [PARI/GP][1] code that recovers values of $j$ in the given example: ? X = ffgen((y^9+y^4+1)*Mod(1,2)); \\ x as an element of F1 ? ff = select(t->poldegree(t,x)==1, factorff(x^9+x^7+x^5+x+1,2,y^9+y^4+1)[,1] ); \\ linear factors of p(y) ? for(i=1,#ff, z = lift( -polcoeff(ff[i],0)/polcoeff(ff[i],1) ); print( fflog(subst(z,y,X),X) ) ) 214 345 309 358 428 205 410 179 107 [1]: https://pari.math.u-bordeaux.fr/