criptografia de modo simples
Publicado por felipe (última atualização em 11/12/2024)
[ Hits: 1.333 ]
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;
}
intdb - gerador de wordlist numerica
Exploit para kernel 2.6.12-rc4
Faz um crash no Kernel do Linux
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
O programa assinador digital (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (9)
É normal não gostar de KDE? (8)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)









