src/mpin192.c.in [835:919]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - mpin_hash(sha,&c,&U,SK); } return res; } /* Generate Y = H(TimeValue, xCID/xID) */ void MPIN_ZZZ_GET_Y(int sha,int TimeValue,octet *xCID,octet *Y) { BIG_XXX q,y; char h[MODBYTES_XXX]; octet H= {0,sizeof(h),h}; mhashit(sha,TimeValue,xCID,&H); BIG_XXX_fromBytes(y,H.val); BIG_XXX_rcopy(q,CURVE_Order_ZZZ); BIG_XXX_mod(y,q); BIG_XXX_toBytes(Y->val,y); Y->len=PGS_ZZZ; } /* One pass MPIN Client */ int MPIN_ZZZ_CLIENT(int sha,int date,octet *ID,csprng *RNG,octet *X,int pin,octet *TOKEN,octet *V,octet *U,octet *UT,octet *TP,octet *MESSAGE,int TimeValue,octet *Y) { int rtn=0; char m[M_SIZE_ZZZ]; octet M= {0,sizeof(m),m}; octet *pID; if (date == 0) pID = U; else pID = UT; rtn = MPIN_ZZZ_CLIENT_1(sha,date,ID,RNG,X,pin,TOKEN,V,U,UT,TP); if (rtn != 0) return rtn; OCT_joctet(&M,pID); if (MESSAGE!=NULL) { OCT_joctet(&M,MESSAGE); } MPIN_ZZZ_GET_Y(sha,TimeValue,&M,Y); rtn = MPIN_ZZZ_CLIENT_2(X,Y,V); if (rtn != 0) return rtn; return 0; } /* One pass MPIN Server */ int MPIN_ZZZ_SERVER(int sha,int date,octet *HID,octet *HTID,octet *Y,octet *sQ,octet *U,octet *UT,octet *V,octet *E,octet *F,octet *ID,octet *MESSAGE,int TimeValue, octet *Pa) { int rtn=0; char m[M_SIZE_ZZZ]; octet M= {0,sizeof(m),m}; octet *pU; if (date == 0) pU = U; else pU = UT; MPIN_ZZZ_SERVER_1(sha,date,ID,HID,HTID); OCT_joctet(&M,pU); if (MESSAGE!=NULL) { OCT_joctet(&M,MESSAGE); } MPIN_ZZZ_GET_Y(sha,TimeValue,&M,Y); rtn = MPIN_ZZZ_SERVER_2(date,HID,HTID,Y,sQ,U,UT,V,E,F,Pa); if (rtn != 0) return rtn; return 0; } int MPIN_ZZZ_GET_DVS_KEYPAIR(csprng *R,octet *Z,octet *Pa) { BIG_XXX z,r; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - src/mpin256.c.in [857:941]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - mpin_hash(sha,&c,&U,SK); } return res; } /* Generate Y = H(TimeValue, xCID/xID) */ void MPIN_ZZZ_GET_Y(int sha,int TimeValue,octet *xCID,octet *Y) { BIG_XXX q,y; char h[MODBYTES_XXX]; octet H= {0,sizeof(h),h}; mhashit(sha,TimeValue,xCID,&H); BIG_XXX_fromBytes(y,H.val); BIG_XXX_rcopy(q,CURVE_Order_ZZZ); BIG_XXX_mod(y,q); BIG_XXX_toBytes(Y->val,y); Y->len=PGS_ZZZ; } /* One pass MPIN Client */ int MPIN_ZZZ_CLIENT(int sha,int date,octet *ID,csprng *RNG,octet *X,int pin,octet *TOKEN,octet *V,octet *U,octet *UT,octet *TP,octet *MESSAGE,int TimeValue,octet *Y) { int rtn=0; char m[M_SIZE_ZZZ]; octet M= {0,sizeof(m),m}; octet *pID; if (date == 0) pID = U; else pID = UT; rtn = MPIN_ZZZ_CLIENT_1(sha,date,ID,RNG,X,pin,TOKEN,V,U,UT,TP); if (rtn != 0) return rtn; OCT_joctet(&M,pID); if (MESSAGE!=NULL) { OCT_joctet(&M,MESSAGE); } MPIN_ZZZ_GET_Y(sha,TimeValue,&M,Y); rtn = MPIN_ZZZ_CLIENT_2(X,Y,V); if (rtn != 0) return rtn; return 0; } /* One pass MPIN Server */ int MPIN_ZZZ_SERVER(int sha,int date,octet *HID,octet *HTID,octet *Y,octet *sQ,octet *U,octet *UT,octet *V,octet *E,octet *F,octet *ID,octet *MESSAGE,int TimeValue, octet *Pa) { int rtn=0; char m[M_SIZE_ZZZ]; octet M= {0,sizeof(m),m}; octet *pU; if (date == 0) pU = U; else pU = UT; MPIN_ZZZ_SERVER_1(sha,date,ID,HID,HTID); OCT_joctet(&M,pU); if (MESSAGE!=NULL) { OCT_joctet(&M,MESSAGE); } MPIN_ZZZ_GET_Y(sha,TimeValue,&M,Y); rtn = MPIN_ZZZ_SERVER_2(date,HID,HTID,Y,sQ,U,UT,V,E,F,Pa); if (rtn != 0) return rtn; return 0; } int MPIN_ZZZ_GET_DVS_KEYPAIR(csprng *R,octet *Z,octet *Pa) { BIG_XXX z,r; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -