public List <UProveKeyAndTokenComposite> generateTokens(ThirdIssuanceMessageComposite thirdMessage, string sessionID) { /* * token issuance - generate tokens. */ cOut.write("Issuing U-Prove tokens - generate tokens, prover side"); VerifySessionId(sessionID); try { // Convert serializable ThirdIssuanceMessageComposite members to ThirdIssuanceMessage. ThirdIssuanceMessage tm = ConvertUtils.convertThirdIssuanceMessageComposite(thirdMessage); // Retrieve correct Prover instance from proversDictionary for the given sessionKey. if (sessionDB.ContainsKey(sessionID)) { Prover prover = sessionDB[sessionID].prover; // generate the tokens. UProveKeyAndToken[] upkt = prover.GenerateTokens(tm); // Serialize them. cOut.write("Generating tokens..."); List <UProveKeyAndTokenComposite> tokens = new List <UProveKeyAndTokenComposite>(); foreach (UProveKeyAndToken t in upkt) { byte[] bigInt = t.PrivateKey.ToByteArray(); UProveKeyAndTokenComposite keyAndTokenComposite = new UProveKeyAndTokenComposite(); keyAndTokenComposite.PrivateKey = bigInt; keyAndTokenComposite.Token = ConvertUtils.convertUProveToken(t.Token); tokens.Add(keyAndTokenComposite); } return(tokens); } } catch (Exception e) { cOut.write(e.ToString()); DebugUtils.DebugPrint(e.StackTrace.ToString()); } return(null); }
public List<UProveKeyAndTokenComposite> generateTokens(ThirdIssuanceMessageComposite thirdMessage, string sessionID) { /* * token issuance - generate tokens. */ cOut.write("Issuing U-Prove tokens - generate tokens, prover side"); VerifySessionId(sessionID); try { // Convert serializable ThirdIssuanceMessageComposite members to ThirdIssuanceMessage. ThirdIssuanceMessage tm = ConvertUtils.convertThirdIssuanceMessageComposite(thirdMessage); // Retrieve correct Prover instance from proversDictionary for the given sessionKey. if (sessionDB.ContainsKey(sessionID)) { Prover prover = sessionDB[sessionID].prover; // generate the tokens. UProveKeyAndToken[] upkt = prover.GenerateTokens(tm); // Serialize them. cOut.write("Generating tokens..."); List<UProveKeyAndTokenComposite> tokens = new List<UProveKeyAndTokenComposite>(); foreach (UProveKeyAndToken t in upkt) { byte[] bigInt = t.PrivateKey.ToByteArray(); UProveKeyAndTokenComposite keyAndTokenComposite = new UProveKeyAndTokenComposite(); keyAndTokenComposite.PrivateKey = bigInt; keyAndTokenComposite.Token = ConvertUtils.convertUProveToken(t.Token); tokens.Add(keyAndTokenComposite); } return tokens; } } catch (Exception e) { cOut.write(e.ToString()); DebugUtils.DebugPrint(e.StackTrace.ToString()); } return null; }