public static TatePairing ssTate() { BigInt p = new BigInt("8BA2A5229BD9C57CFC8ACEC76DFDBF3E3E1952C6B3193ECF5C571FB502FC5DF410F9267E9F2A605BB0F76F52A79E8043BF4AF0EF2E9FA78B0F1E2CDFC4E8549B", 16); Field field = new Fp(p); BigInt orderOfGroup = new BigInt("8000000000000000000000000000000000020001", 16); BigInt cof = new BigInt("117454A4537B38AF9F9159D8EDBFB7E7C7C2E48760E930A461D5F451F9D9210DC70095F4B241FF57F1BB0549C", 16); //curve //y^2=x^3+x FieldElement a = field.GetOne(); FieldElement b = field.GetZero(); EllipticCurve ec = new EllipticCurve(field, a, b); return(new TatePairing(ec, orderOfGroup, cof)); }
public static TatePairing ssTate2() { BigInt p = new BigInt("8780710799663312522437781984754049815806883199414208211028653399266475630880222957078625179422662221423155858769582317459277713367317481324925129998224791", 10); Field field = new Fp(p); BigInt orderOfGroup = new BigInt("730750818665451621361119245571504901405976559617", 10); BigInt cof = new BigInt("12016012264891146079388821366740534204802954401251311822919615131047207289359704531102844802183906537786776", 10); //curve //y^2=x^3+x FieldElement a4 = field.GetOne(); FieldElement a6 = field.GetZero(); EllipticCurve ec = new EllipticCurve(field, field.GetZero(), field.GetZero(), field.GetZero(), a4, a6); return(new TatePairing(ec, orderOfGroup, cof)); }