criptografia de modo simples
Publicado por Perfil removido (última atualização em 11/12/2024)
[ Hits: 1.621 ]
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;
}
[C] Criptografia por Inversão de bits
Esse código pode ser considerado um vírus?
Spieluhr - esse código pode ser considerado um vírus?
Boas Práticas e Padrões Idiomáticos em Go e C
Vale a pena ter mais de uma interface grafica no seu Linux?
Estrutura e Funcionamento de um Ebuild no Gentoo Linux
Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Usando o ble.sh (Bash Line Editor) no lugar do bash completion
Montagem pré automática de HD externo usb em NTFS não funciona no Debian Trixie - Solução
Guia de instalação do Gentoo Linux com Cinnamon (UEFI, LUKS2, Btrfs)
O que você está ouvindo agora? [2] (240)
Senhor Einstein tinha razão mesmo! (0)
Instalação Dual Boot Linux+Windows 11 (2)
No Ubuntu 26.04, sudo passou a mostrar os asteriscos ao digitar por pa... (2)









