#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main( int argc , char * argv[] )
{
int nkey , ikey ;
unsigned char *key ;
int chin , chout ;
if( argc < 2 || strncmp(argv[1],"-help",5) == 0 ){
fprintf(stderr,"Usage: hide key < input > output\n") ;
exit(1) ;
}
key = (unsigned char *) argv[1] ; nkey = strlen(argv[1]) ;
if( nkey < 1 ){ fprintf(stderr,"Illegal key\n") ; exit(1) ; }
ikey = 0 ;
do{
chin = getchar() ; if( chin == EOF ) break ;
chout = ((unsigned char)chin) ^ key[ikey++] ;
putchar(chout) ;
ikey = ikey % nkey ;
} while(1) ;
exit(0) ;
}
syntax highlighted by Code2HTML, v. 0.9.1