void PFC::random(G2& w) { int i; ZZn3 XX; Big X=*x; Big x0=rand(*mod); forever { x0+=1; XX.set2((ZZn)x0); if (!w.g.set(XX)) continue; break; } map(w.g,X,*frob); }
void PFC::hash_and_map(G2& w,char *ID) { int i; ZZn3 XX; Big X=*x; Big x0=H1(ID); forever { x0+=1; XX.set2((ZZn)x0); if (!w.g.set(XX)) continue; break; } map(w.g,X,*frob); }
ECn3 hash_and_map3(char *ID) { int i; ECn3 S; ZZn3 X; Big x0=H1(ID); forever { x0+=1; X.set2((ZZn)x0); if (!S.set(X)) continue; break; } // cout << "S= " << S << endl; return S; }