Ejemplo n.º 1
0
        public TokenController(
            IPrivateKeyStore privateKeyStore,
            IPublicKeyStore publicKeyStore,
            ITokenGenerator tokenGenerator,
            ITokenVerifier tokenVerifier)
        {
            _privateKeyStore = privateKeyStore;
            _publicKeyStore  = publicKeyStore;
            _tokenGenerator  = tokenGenerator;
            _tokenVerifier   = tokenVerifier;

            _ecParameters = CustomNamedCurves.GetByOid(X9ObjectIdentifiers.Prime256v1);
        }
Ejemplo n.º 2
0
        private static async Task <GenerateTokenResponseModel> GenerateTokenAsync(BigInteger privateKey, IPublicKeyStore publicKeyStore, X9ECParameters ecParameters, ECPoint P)
        {
            var response = new TokenGenerator().GenerateToken(privateKey, (await publicKeyStore.GetAsync()).Q, ecParameters, P);

            return(new GenerateTokenResponseModel
            {
                ProofChallenge = Convert.ToBase64String(response.c.ToByteArray()),
                ProofResponse = Convert.ToBase64String(response.z.ToByteArray()),
                SignedPoint = Convert.ToBase64String(response.Q.GetEncoded())
            });
        }
        private async static Task <GenerateTokenResponseModel> GenerateTokenAsync(BigInteger privateKey, IPublicKeyStore publicKeyStore, X9ECParameters ecParameters, ECPoint P)
        {
            var response = new TokenGenerator().GenerateToken(privateKey, (await publicKeyStore.GetAsync()).Q, ecParameters, P);

            return(new GenerateTokenResponseModel
            {
                ProofCAsHex = Hex.ToHexString(response.c.ToByteArray()),
                ProofZAsHex = Hex.ToHexString(response.z.ToByteArray()),
                QAsHex = Hex.ToHexString(response.Q.GetEncoded())
            });
        }