void PFC::hash_and_map(G2& w,char *ID) { int i; ZZn3 XX; Big X=*x; Big x0=H1(ID); forever { x0+=1; XX.set((ZZn)0,(ZZn)x0,(ZZn)0); if (!w.g.set(XX)) continue; break; } w.g=HashG2(w.g,X,*frob); }
void PFC::random(G2 &w) { int i; ZZn3 XX; Big X=*x; Big x0=rand(*mod); forever { x0+=1; XX.set((ZZn)0,(ZZn)x0,(ZZn)0); if (!w.g.set(X)) continue; break; } w.g=HashG2(w.g,X,*frob); }