Exemplo n.º 1
0
        /// <summary>
        /// Retorna os dados do provedores do certificado digital A3
        /// </summary>
        /// <param name="provider">Nome do provider</param>
        /// <returns>Objeto com dados do provider</returns>
        /// <author>Renan Borges</author>
        public CertProviders GetInfoProvider(string provider)
        {
            CertProviders oDadosCert = new CertProviders();

            oDadosCert.NameKey = provider;

            string registry_key = @"SOFTWARE\Microsoft\Cryptography\Defaults\Provider";

            using (RegistryKey key = Registry.LocalMachine.OpenSubKey(registry_key))
            {
                foreach (string subkey_name in key.GetSubKeyNames())
                {
                    if (subkey_name.Equals(oDadosCert.NameKey))
                    {
                        using (RegistryKey subkey = key.OpenSubKey(subkey_name))
                        {
                            oDadosCert.Type = subkey.GetValue("Type").ToString();
                            break;
                        }
                    }
                }
            }

            return(oDadosCert);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Gera um XML para realizar a simulação do teste da assinatura
        /// </summary>
        /// <param name="provider">Objeto CertProviders que contem o provider que será testado</param>
        /// <author>Renan Borges</author>
        private void SimularXML(CertProviders provider)
        {
            Empresas.CriarPasta(true);

            ApagarXMLTeste();

            XElement docElement = new XElement("SimulacaoProvider");
            XElement eProvider  = new XElement("Provider");

            eProvider.Add(new XElement("Nome", provider.NameKey));
            eProvider.Add(new XElement("Type", provider.Type));

            docElement.Add(eProvider);

            docElement.Save(TempFile);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Gera um XML para realizar a simulação do teste da assinatura
        /// </summary>
        /// <param name="provider">Objeto CertProviders que contem o provider que será testado</param>
        /// <author>Renan Borges</author>
        private void SimularXML(CertProviders provider)
        {
            if (System.IO.File.Exists(TempFile))
            {
                System.IO.File.Delete(TempFile);
            }

            XElement docElement = new XElement("SimulacaoProvider");
            XElement eProvider  = new XElement("Provider");

            eProvider.Add(new XElement("Nome", provider.NameKey));
            eProvider.Add(new XElement("Type", provider.Type));

            docElement.Add(eProvider);

            docElement.Save(TempFile);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Realiza efetivamente o teste assinando o XML de simualação
        /// </summary>
        /// <param name="provider">Objeto com as informaçoes do provider que será testado</param>
        /// <returns></returns>
        public bool TestarProvider(CertProviders provider)
        {
            bool result = false;

            this.SimularXML(provider);
            AssinaturaDigital assinatura = new AssinaturaDigital();

            assinatura.TesteCertificado = true;
            result = assinatura.TestarProviderCertificado(TempFile,
                                                          "SimulacaoProvider",
                                                          "Provider",
                                                          Certificado,
                                                          CodEmp,
                                                          PIN);

            ApagarXMLTeste();

            return(result);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Realiza efetivamente o teste assinando o XML de simualação
        /// </summary>
        /// <param name="provider">Objeto com as informaçoes do provider que será testado</param>
        /// <returns></returns>
        public bool TestarProvider(CertProviders provider)
        {
            bool result = false;

            this.SimularXML(provider);
            AssinaturaDigital assinatura = new AssinaturaDigital();
            assinatura.TesteCertificado = true;
            result = assinatura.TestarProviderCertificado(TempFile,
                "SimulacaoProvider",
                "Provider",
                Certificado,
                CodEmp,
                PIN,
                provider.NameKey,
                provider.Type);

            ApagarXMLTeste();

            return result;
        }
Exemplo n.º 6
0
        /// <summary>
        /// Gera um XML para realizar a simulação do teste da assinatura
        /// </summary>
        /// <param name="provider">Objeto CertProviders que contem o provider que será testado</param>
        /// <author>Renan Borges</author>
        private void SimularXML(CertProviders provider)
        {
            if (System.IO.File.Exists(TempFile))
                System.IO.File.Delete(TempFile);

            XElement docElement = new XElement("SimulacaoProvider");
            XElement eProvider = new XElement("Provider");

            eProvider.Add(new XElement("Nome", provider.NameKey));
            eProvider.Add(new XElement("Type", provider.Type));

            docElement.Add(eProvider);

            docElement.Save(TempFile);
        }
Exemplo n.º 7
0
        /// <summary>
        /// Retorna os dados do provedores do certificado digital A3
        /// </summary>
        /// <param name="provider">Nome do provider</param>
        /// <returns>Objeto com dados do provider</returns>
        /// <author>Renan Borges</author>
        public CertProviders GetInfoProvider(string provider)
        {
            CertProviders oDadosCert = new CertProviders();
            oDadosCert.NameKey = provider;

            string registry_key = @"SOFTWARE\Microsoft\Cryptography\Defaults\Provider";

            using (RegistryKey key = Registry.LocalMachine.OpenSubKey(registry_key))
            {
                foreach (string subkey_name in key.GetSubKeyNames())
                {
                    if (subkey_name.Equals(oDadosCert.NameKey))
                    {
                        using (RegistryKey subkey = key.OpenSubKey(subkey_name))
                        {
                            oDadosCert.Type = subkey.GetValue("Type").ToString();
                            break;
                        }
                    }
                }
            }

            return oDadosCert;
        }