criptografia de modo simples
Publicado por felipe (última atualização em 11/12/2024)
[ Hits: 1.362 ]
esse programa apenas troca uma caractere por outro usando tabela ascii
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
void encripta(int key, char *nameFile)
{
FILE *r = fopen(nameFile, "r");
if(r == NULL){
perror("file error");
exit(1);
}
char *extension = strtok(nameFile, ".");
while(extension != NULL){
if(strcmp(extension, "cry")==0){
printf("Arquivo já está encriptado\n");
exit(1);
}
extension = strtok(NULL, ".");
}
strcat(nameFile, ".cry");
FILE *w = fopen(nameFile, "w");
int letter;
while((letter = getc(r)) != EOF){
letter = letter + key;
fprintf(w, "%c", letter);
}
fclose(r);
fclose(w);
}
void decripta(int key, char *nameFile)
{
FILE *r = fopen(nameFile, "r");
if(r == NULL){
perror("file error");
exit(1);
}
nameFile[strlen(nameFile)-4]='\0';
FILE *w = fopen(nameFile, "w");
int letter;
while((letter = getc(r)) != EOF){
letter = letter - key;
fprintf(w, "%c", letter);
}
fclose(r);
fclose(w);
}
int main()
{
char file[256];
int key, opc;
printf("File: ");
fgets(file, 256, stdin);
printf("Key: ");
scanf("%d", &key);
file[strlen(file)-1]='\0';
printf("[0]=>Encripta; [1]=>Decripta: ");
scanf("%d", &opc);
if(opc == 0){
encripta(key, file);
}
else if(opc == 1){
decripta(key, file);
}
else{
printf("???\n");
return 1;
}
return 0;
}
Esse código pode ser considerado um vírus?
Captura de Banners dos Serviços
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (0)
Secure boot, artigo interessante, nada técnico. (5)
VOL já não é mais como antes? (9)
É normal não gostar de KDE? (13)
E aí? O Warsaw já está funcionando no Debian 13? [RESOLVIDO] (15)









