Pular para o conteúdo principal

Postagens

Como criptografar e descriptografar usando o AES em C++

A implementação do AES (Advanced Encryption Standard) em C++ pode ser feita usando bibliotecas criptográficas, como OpenSSL, Crypto++, ou implementando o algoritmo manualmente. Neste exemplo, vou mostrar como usar a biblioteca Crypto++ para criptografar e descriptografar usando AES em modo de bloco CBC (Cipher Block Chaining). Certifique-se de ter a biblioteca Crypto++ instalada no seu sistema. #include #include #include #include #include #include #include using namespace CryptoPP; std::string AES_Encrypt(const std::string& plaintext, const std::string& key, const std::string& iv) { std::string ciphertext; try { CBC_Mode ::Encryption encryption((byte*)key.c_str(), key.length(), (byte*)iv.c_str()); StringSource(plaintext, true, new StreamTransformationFilter(encryption, new StringSink(ciphertext) ) ); } catch (const Exception& e) { std::cerr ::Decryption decryption(...

Como criptografar e descriptografar usando o AES em Python

A criptografia AES (Advanced Encryption Standard) é uma técnica popular para proteger informações sensíveis. No Python, você pode usar a biblioteca cryptography para realizar operações de criptografia AES. Certifique-se de instalá-la primeiro. pip install cryptography Aqui está um exemplo de como realizar criptografia e descriptografia AES usando a biblioteca cryptography: from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes from cryptography.hazmat.backends import default_backend from cryptography.hazmat.primitives import padding from base64 import urlsafe_b64encode, urlsafe_b64decode def encrypt_aes(key, plaintext): # Converte a chave para o formato correto (32 bytes para AES-256) key = key.ljust(32)[:32].encode('utf-8') # Gera um vetor de inicialização (IV) aleatório iv = os.urandom(16) # Cria um objeto de cifra usando AES em modo CBC cipher = Cipher(algorithms.AES(key), modes.CFB(iv), backend=d...

Como criptografar e descriptografar usando o AES em C# (C Sharp)

Para realizar criptografia e descriptografia usando o algoritmo AES (Advanced Encryption Standard) em C#, você pode usar a classe AesCryptoServiceProvider que faz parte do namespace System.Security.Cryptography. Abaixo, eu fornecerei um exemplo simples de como você pode realizar criptografia e descriptografia usando AES em C#. using System; using System.IO; using System.Security.Cryptography; using System.Text; public class AesExample { public static void Main() { string originalText = "Este é um texto de exemplo para criptografia AES."; // Chave e IV devem ter tamanhos compatíveis com o tamanho do bloco do algoritmo escolhido byte[] key = Encoding.UTF8.GetBytes("chave12345678901"); // 16 bytes para AES-128 byte[] iv = Encoding.UTF8.GetBytes("iv12345678901234"); // 16 bytes para AES-128 // Criptografar o texto byte[] encryptedText = EncryptStringToBytes(originalText, key, iv); // I...

Como criptografar e descriptografar usando o AES em JavaScript com biblioteca crypto do Node.js.

O AES (Advanced Encryption Standard) é um algoritmo de criptografia simétrica amplamente utilizado para proteger informações sensíveis. Aqui estão exemplos básicos de como criptografar e descriptografar usando o AES em JavaScript. Observe que esses exemplos usam a biblioteca crypto do Node.js, portanto, eles são destinados a serem executados em ambientes Node.js. const crypto = require('crypto'); // Chave secreta para o AES (deve ter 16, 24 ou 32 bytes) const chaveSecreta = 'chave-secreta-123'; // Substitua isso com uma chave secreta mais segura em um ambiente real // Vetor de inicialização (IV) - necessário para AES const iv = crypto.randomBytes(16); // Função para criptografar usando AES function criptografar(texto) { const cipher = crypto.createCipheriv('aes-256-cbc', Buffer.from(chaveSecreta), iv); let criptografado = cipher.update(texto, 'utf-8', 'hex'); criptografado += cipher.final('hex'); return { iv: iv.toStr...

Entenda como criar uma Função, Procedure e Classe com Javascript.

Em JavaScript, você pode criar funções, procedimentos (também conhecidos como rotinas ou sub-rotinas) e classes para organizar e estruturar seu código. Funções em JavaScript. As funções em JavaScript são blocos de código reutilizáveis que podem ser definidos usando a palavra-chave function . Elas podem ter parâmetros e retornar um valor. // Declaração de uma função que soma dois números function soma(a, b) { return a + b; } // Chamada da função e atribuição do resultado a uma variável let resultado = soma(3, 5); // Exibindo o resultado no console console.log(resultado); // Saída: 8 Neste exemplo, soma é uma função que recebe dois parâmetros (a e b) e retorna a soma desses parâmetros. A função é chamada com os argumentos 3 e 5, e o resultado é atribuído à variável resultado. Procedimentos (Rotinas) em JavaScript. Procedimentos em JavaScript são funções que executam um conjunto de instruções sem retornar um valor específico. Eles são usados para realizar t...

Estrutura de repetição com C# (C Sharp).

Em C#, existem várias estruturas de repetição que permitem executar um bloco de código várias vezes. As estruturas de repetição mais comuns são for, while e do-while. for: A estrutura de repetição for é útil quando você sabe exatamente quantas vezes deseja repetir o código. for (inicialização; condição; incremento/decremento) { // Código a ser repetido } Exemplo: for (int i = 0; i while: A estrutura de repetição while é usada quando a condição é verificada antes da execução do bloco de código. while (condição) { // Código a ser repetido } Exemplo: int contador = 0; while (contador do-while: A estrutura de repetição do-while é semelhante ao while, mas a condição é verificada após a execução do bloco de código, garantindo que o bloco seja executado pelo menos uma vez. do { // Código a ser repetido } while (condição); Exemplo: int contador = 0; do { Cons...

Entenda como criar uma Função, Procedure e Classe com C# (C Sharp)

No C#, funções, procedures (também conhecidas como métodos) e classes são componentes fundamentais da programação orientada a objetos. Vamos abordar cada um desses conceitos em detalhes! Funções (ou Métodos): Funções, em C#, são blocos de código que realizam uma tarefa específica. Podem ter parâmetros de entrada e um valor de retorno. A sintaxe básica de uma função é a seguinte. tipoDeRetorno NomeDaFuncao(tipoParametro1 parametro1, tipoParametro2 parametro2, ...) { // Código da função // Pode incluir um return para retornar um valor } Exemplo de uma função simples: int Soma(int a, int b) { return a + b; } Procedures (Métodos sem Retorno). Em C#, um método sem retorno é frequentemente chamado de "procedure" (embora esse termo não seja estritamente usado em C#). É um método que executa uma ação, mas não retorna um valor. A diferença principal é a declaração do tipo de retorno, que é void. void ImprimirMensage...

Pegar dados de um determinado site com Python!

Para obter dados de um site em Python, você pode usar bibliotecas como requests para fazer solicitações HTTP e BeautifulSoup ou lxml para analisar o HTML da página. Aqui está um exemplo básico usando essas bibliotecas. Instale as bibliotecas necessárias: pip install requests beautifulsoup4 Em seguida, você pode usar o seguinte código para fazer uma solicitação HTTP e analisar o HTML: import requests from bs4 import BeautifulSoup def obter_dados_do_site(url): # Faz a solicitação HTTP para o site resposta = requests.get(url) # Verifica se a solicitação foi bem-sucedida (código 200) if resposta.status_code == 200: # Utiliza BeautifulSoup para analisar o HTML da página soup = BeautifulSoup(resposta.text, 'html.parser') # Aqui, você pode usar métodos do BeautifulSoup para extrair dados do HTML # Exemplo: Extrair todos os links da página links = soup.find_all('a') for link in ...

Como validar CPF com Python?

  A validação de CPF em Python pode ser feita com base nas regras definidas para os dígitos verificadores. Aqui está uma função simples que verifica se um CPF é válido: def valida_cpf(cpf): # Remover caracteres não numéricos cpf = ''.join(filter(str.isdigit, cpf)) # Verificar se o CPF tem 11 dígitos if len(cpf) != 11: return False # Verificar se todos os dígitos são iguais if cpf == cpf[0] * 11: return False # Calcular o primeiro dígito verificador soma = 0 for i in range(9): soma += int(cpf[i]) * (10 - i) resto = soma % 11 digito1 = 11 - resto if resto >= 2 else 0 # Verificar o primeiro dígito verificador if digito1 != int(cpf[9]): return False # Calcular o segundo dígito verificador soma = 0 for i in range(10): soma += int(cpf[i]) * (11 - i) resto = soma % 11 digito2 = 11 - resto if resto >= 2 else 0 # Verificar o segundo dígito verificador...

Conceitos básicos de lógica de programação com exemplos em Python

Variáveis e Tipos de Dados: Atribuição de variáveis e tipos de dados básicos. Atribuição de variáveis e tipos de dados básicos. nome = "João" idade = 25 altura = 1.75 Variáveis e Tipos de Dados: Atribuição de variáveis e tipos de dados básicos. nome = "João" idade = 25 altura = 1.75 Estruturas de Controle de Fluxo: if, else e elif para tomada de decisões. idade = 18 if idade < 18: print("Menor de idade") elif idade >= 18 and idade < 60: print("Adulto") else: print("Idoso") Estruturas de Repetição: for para iterar sobre sequências. for i in range(5): print(i) while para repetição condicional. contador = 0 while contador < 5: print(contador) contador += 1 Listas e Estruturas de Dados: Trabalhando com listas. numeros = [1, 2, 3, 4, 5] for numero in numeros: print(numero) ...