Pular para o conteúdo principal

Criptografar arquivo txt C#


Segue exemplo de como encriptar e descriptar um texto utilizando TripleDES no C#.

using System;
using System.Security.Cryptography;
using System.Text;
using System.IO;

class TripleDESSample
{

    static void Main()
    {
        try
        {            
            //Cria um novo objeto TripleDES para gerar a chave e o vetor de inicialização.
            TripleDES TripleDESalg = TripleDES.Create();

//cria o texto para encriptar            
            string sData = "Dados para encriptar.";
            string FileName = "fileEncript.txt";

            // Encripta o texto e grava em um arquivo.
            EncryptTextToFile(sData, FileName, TripleDESalg.Key, TripleDESalg.IV);

            // Decripta o texto do arquivo.
            string Final = DecryptTextFromFile(FileName, TripleDESalg.Key, TripleDESalg.IV);

            // exibe a string decriptada na janela console.
            Console.WriteLine(Final);
        }
        catch (Exception e)
        {
            Console.WriteLine(e.Message);
        }

    }

    public static void EncryptTextToFile(String Data, String FileName, byte[] Key, byte[] IV)
    {
        try
        {
            // cria ou abre o arquivo.
            FileStream fStream = File.Open(FileName,FileMode.OpenOrCreate);

            // cria o objeto TripleDES.
            TripleDES tripleDESalg = TripleDES.Create();

            // Cria o CryptoStream usando o FileStream 
            // e passa a key e o IV.
            CryptoStream cStream = new CryptoStream(fStream, 
                tripleDESalg.CreateEncryptor(Key,IV), 
                CryptoStreamMode.Write); 

            // Cria um StreamWriter usando o CryptoStream.
            StreamWriter sWriter = new StreamWriter(cStream);

            // Escreve os dados encriptado no arquivo.
            sWriter.WriteLine(Data);

            // Fecha os streams.
            sWriter.Close();
            cStream.Close();
            //Fecha o arquivo.
            fStream.Close();
        }
        catch(CryptographicException e)
        {
            Console.WriteLine("Erro na Criptografia: {0}", e.Message);
        }
        catch(UnauthorizedAccessException  e)
        {
            Console.WriteLine("Erro no acesso ao arquivo: {0}", e.Message);
        }

    }

    public static string DecryptTextFromFile(String FileName, byte[] Key, byte[] IV)
    {
        try
        {
            // cria ou abre o arquivo encriptado. 
            FileStream fStream = File.Open(FileName, FileMode.OpenOrCreate);

            // Cria o objeto TripleDES.
            TripleDES tripleDESalg = TripleDES.Create();
            
            CryptoStream cStream = new CryptoStream(fStream, 
                tripleDESalg.CreateDecryptor(Key,IV), 
                CryptoStreamMode.Read); 

            // Cria o StreamReader usando o CryptoStream.
            StreamReader sReader = new StreamReader(cStream);

            // Ler os dados do stream decryptado. 
            string val = sReader.ReadLine();

            // fecha os streams            
            sReader.Close();
            cStream.Close();
            //fecha o arquivo
            fStream.Close();

            // retorna o texto. 
            return val;
        }
        catch(CryptographicException e)
        {
            Console.WriteLine("Erro na Criptografia: {0}", e.Message);
            return null;
        }
        catch(UnauthorizedAccessException  e)
        {
            Console.WriteLine("Erro no acesso ao arquivo: {0}", e.Message);
            return null;
        }
    }
}

Comentários

Postagens mais visitadas deste blog

EmguCV DLL Not Found Exception -Unable to find cvextern?

Eu também tive os mesmos problemas. Neste fórum emgucv , não sei por que cvextern.dlldo emgucv 3.4.3 não é possível carregar cvextern (porque não é possível encontrar cvextern), e você permitiu usar o arquivo cvextern.dlldo emgucv 3.4.2 (certifique-se de escolher x64 / x86), copie /bin/Debuge este arquivo é encontrado automaticamente /bin/Debug/x86ou /bin/Debug/x64quando você termina de construir o programa no Visual Studio.  O Erro:  The type initializer for 'Emgu.CV.CvInvoke' threw an exception. : Unable to load DLL 'cvextern': The specified module could not be found. (Exception from HRESULT: 0x8007007E)  Para resolver o problema copia a pasta x64 ou x86 para dentro da pasta bin da aplicação. Ou copie os arquivos para dentro da pasta bin da aplicação WCF.

Rastreador Tag Bluetooth MiTag Android

Configuração e Rastreamento com Mi Tag O vídeo apresenta uma solução de rastreamento de equipamentos por meio de uma tag chamada MiTag, que foi comprada no AliExpress. O comunicador explica que esta tag funciona sem a necessidade de internet ou chip, utilizando a rede Bluetooth de outros celulares próximos para propagar sua localização até o aplicativo no celular do usuário. O vídeo demonstra o processo de configuração inicial da tag com o aplicativo Google Finder Hub, que é o localizador do Google, exclusivo para Android. Por fim, o tutorial também mostra como desinstalar e resetar a MiTag, um processo necessário caso o usuário queira emparelhar o dispositivo com um celular diferente, já que a tag fica bloqueada após a primeira conexão. https://youtu.be/mm1Z5lus7ag ## Funcionalidades Essenciais da Mi Tag As principais funcionalidades da Mi Tag giram em torno da capacidade de rastreamento independente e de longa duração: 1. **Rastreamento Sem Necessidade de Internet ou Chip:...

Gesseiro no Guará

DIONATO SOARES GESSEIRO Serviços/Produtos:  Gesseiro no Guará, Serviços com gessos, gesseiro, Guará-DF Endereço:  Guará - DF Site:   https://ds-servicos-reformas.com.br/ Telefone(s): (61) 98144-9158 (61) 98546-1059 Serviço de Gesseiro em Guara / DF Preço para Serviço de Gesseiro em Guara / DF Quer saber o  preço para serviço de gesseiro em Guara / DF ? Entre em contato conosco! Teremos prazer em lhe apresentar o melhor  orçamento para serviço de gesseiro em Guara / DF  considerando não somente o preço mais também a qualidade do serviço. Fotos de Serviço de Gesseiro em Guara / DF Procurando  fotos de serviço de gesseiro em Guara / DF ? Abaixo apresentaremos algumas fotos de trabalhos realizados em serviço de gesseiro em Guara / DF: Ops, ainda não terminamos de cadastrar todas as  fotos de serviço de gesseiro em Guara / DF , retorne em breve ou entre em contato para que possamos apresentar o nosso  portfólio de fotos ...