fork(14) download
  1. #include <stdio.h>
  2.  
  3. char texto[] = "hola";
  4. char clave_m = 45;
  5.  
  6. void encripta(char *mensaje, char clave, int tam)
  7. {
  8. int i;
  9. for(i=0; i<tam; i++)
  10. {
  11. mensaje[i]^=clave;
  12. }
  13. }
  14.  
  15. void desencripta(char *mensaje, char clave, int tam)
  16. {
  17. encripta(mensaje, clave, tam);
  18. }
  19.  
  20. void muestra_mensaje(char *mensaje, int tam)
  21. {
  22. int i;
  23. for(i=0; i<tam; i++)
  24. {
  25. printf("0x%X ", mensaje[i]);
  26. }
  27. printf("\n");
  28. }
  29.  
  30. int main(void)
  31. {
  32. printf("Mensaje original: %s\n", texto);
  33. printf("En bytes: ");
  34. muestra_mensaje(texto, 4);
  35.  
  36. encripta(texto,clave_m,4);
  37. printf("Encriptado: %s\n", texto);
  38. printf("Encriptado en bytes: ");
  39. muestra_mensaje(texto, 4);
  40.  
  41. desencripta(texto,clave_m,4);
  42. printf("Desencriptado: %s\n", texto);
  43. printf("Desencriptado en bytes: ");
  44. muestra_mensaje(texto, 4);
  45.  
  46. return 0;
  47. }
  48.  
Success #stdin #stdout 0s 2008KB
stdin
Standard input is empty
stdout
Mensaje original: hola
En bytes: 0x68 0x6F 0x6C 0x61 
Encriptado: EBAL
Encriptado en bytes: 0x45 0x42 0x41 0x4C 
Desencriptado: hola
Desencriptado en bytes: 0x68 0x6F 0x6C 0x61