Criptografia
Publicado por Fabio Curtis Volpe 07/11/2004
[ Hits: 14.630 ]
Segue algumas funções para você criptografar suas senhas.
/***********************************************/
/* Função p/ criptografar e grava a senha */
/***********************************************/
void GravarSenha(char *senha)
{
int i;
int tamanhoSenha;
char c;
char senhaCriptografada[50];
arqSenha= fopen("Pilha-Senha-Config.txt","w");
tamanhoSenha= strlen(senha);
for (i=0; i < tamanhoSenha; i++)
{
c= senha[i];
// Criptografia: inverte ordem e soma uma constante qualquer ao carac
c= c+20;
push(c);
}
for (i=0; i < tamanhoSenha; i++)
{
c= pop();
senhaCriptografada[i]= c;
}
senhaCriptografada[i]= '{FONTE}';
////printf("Senha Criptografada= %s \n",senhaCriptografada);
fputs(senhaCriptografada, arqSenha);
fclose(arqSenha);
}
/***********************************************/
/* Função p/ verificar se a senha esta correta */
/***********************************************/
int VerificarSenha(char *senha)
{
int i;
int tamanhoSenha;
char c;
char senhaCriptografada[50];
char senhaArmazenada[50];
arqSenha= fopen("Pilha-Senha-Config.txt","r");
tamanhoSenha= strlen(senha);
if (tamanhoSenha=0);
{
return 0;
}
for (i=0; i < tamanhoSenha; i++)
{
c= senha[i];
// Criptografia: inverte ordem e soma uma constante qualquer ao carac
c= c+20;
push(c);
}
for (i=0; i < tamanhoSenha; i++)
{
c= pop();
senhaCriptografada[i]= c;
}
senhaCriptografada[i]= '{FONTE}';
fgets(senhaArmazenada, (tamanhoSenha+1), arqSenha);
fclose(arqSenha);
if (strcmp(senhaCriptografada, senhaArmazenada) == 0)
{
return 1;
}
else
{
return 0;
}
}
/******************************************************************/
/* Função que chama a função p/ verificar se a senha esta correta */
/******************************************************************/
char senha[50];
// Verificar senha - caso incorreta, encerrar execução:
printf("Digite a senha p/ usar o programa: ");
fgets(senha,50,stdin);
permissao= 0;
permissao= VerificarSenha(senha);
if (permissao == 0)
{
printf("Senha Invalida - digite qualquer tecla para encerrar \n");
getch();
return 0;
}
printf("Deseja Modificar a Senha (S/N) --> ");
modificar= getch();
if (toupper(modificar) == 'S')
{
getchar();
printf("Digite a NOVA senha: ");
fgets(senha,50,stdin);
GravarSenha(senha);
printf("\n Nova senha gravada c/ sucesso \n \n");
}
Cálculo da chave secreta do protocolo Diffie-Hellmann
Código C para gerar hashes DES e MD5
Exploit para kernel 2.6.12-rc4
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
Instalar Linux em notebook Sony Vaio VPCEG13EB (10)
Vou destruir sua infância:) (6)
Quando vocês pararam de testar distros? (24)









