Advertisement
KekSec

Simple XOR encryption program for Capsaicin Kaiten Variant

Mar 29th, 2017
672
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.93 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. char *xor(char *string, char *key) {
  6.     int i;
  7.     int n = strlen(string);
  8.     for( i = 0 ; i < n ; i++) {
  9.         if(string[i] != key[i]) {
  10.             string[i] = string[i] ^ key[i];
  11.         }
  12.     }
  13.     return string;
  14. }
  15.  
  16. int print_string_literal(char *s) {
  17.     putchar('\"');
  18.  
  19.     while (*s) {
  20.         unsigned cp = (unsigned char)*s++;
  21.         printf("\\x%.2x", cp);
  22.     }
  23.  
  24.     putchar('\"');
  25. }
  26.  
  27. int main(int argc, char **argv[]) {
  28.     if(argc < 3) {
  29.         printf("Usage : %s <key> <string>\n", argv[0]);
  30.         exit(1);
  31.     }
  32.     char *key = argv[1];
  33.     char *string = argv[2];
  34.     printf("Key: \"%s\"\n", key);
  35.     printf("Original: \"%s\"\n", string);
  36.     printf("Original (Hex): ");
  37.     print_string_literal(string);
  38.     printf("\n");
  39.     printf("Encrypted: ");
  40.     print_string_literal(xor(string, key));
  41.     printf("\n");
  42.     return 0;
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement