コード例 #1
0
    public string login(bool useVirtualDevice, string pinCode, int credID, int groupID, int proverID, int securityLevel)
    {

      LoginComposite loginParam = new LoginComposite(useVirtualDevice, pinCode, credID, groupID, proverID);
      SessionData sData = new SessionData(loginParam, SessionData.generateSessionKey(), securityLevel);
      sessionDB.TryAdd(sData.sessionID, sData);
      return sData.sessionID;
    }
コード例 #2
0
    public static IssuerParameters convertIssuerParametersComposite(IssuerParametersComposite ipc, SessionData sessionData)
    {

      IssuerParameters ip = new IssuerParameters();

      ip.E = ipc.E;

      if (sessionData.group == null)
      {
        GroupDescription sGroup = convertSubgroupDescription(ipc.Gq);
        ip.Gq = sGroup;
      }
      else
      {
        ip.Gq = sessionData.group;
      }

      GroupElement[] geArray = new GroupElement[ipc.G.Length];
      for (int i = 0; i < ipc.G.Length; i++)
      {
        geArray[i] = ip.Gq.CreateGroupElement(ipc.G[i]);
      }

      ip.G = geArray;
      if (ipc.UsesRecommendedParameters && ipc.Gd == null)
      {
        ip.Gd = sessionData.parameterSet.Gd;
      }
      else if (ipc.Gd != null)
      {
        ip.Gd = ip.Gq.CreateGroupElement(ipc.Gd);
      }
      else
      {
        ip.Gd = ip.Gq.CreateGroupElement(ipc.Gq.Gd); //sessionData.groupElement;// parametersSet.Gd;
      }
      

      

      ip.S = ipc.S;
      ip.UidH = ipc.UidH;
      ip.UidP = ipc.UidP;
      ip.UsesRecommendedParameters = ipc.UsesRecommendedParameters;
      sessionData.group = ip.Gq;
      sessionData.groupElement = ip.Gd;
      return ip;
    }