diff --git a/Objective-C/main.m b/Objective-C/main.m new file mode 100644 index 0000000..4bc7235 --- /dev/null +++ b/Objective-C/main.m @@ -0,0 +1,45 @@ +// +// main.m +// XOREncryption +// +// Created by Kyle Banks on 2013-10-06. +// + +#import + +@interface XOREncryption : NSObject ++(NSString *) encryptDecrypt:(NSString *)input; +@end + +@implementation XOREncryption + ++(NSString *) encryptDecrypt:(NSString *)input { + char key[] = {'K', 'C', 'Q'}; + NSMutableString *output = [[NSMutableString alloc] init]; + + for(int i = 0; i < input.length; i++) { + char c = [input characterAtIndex:i]; + c ^= key[i % sizeof(key)/sizeof(char)]; + [output appendString:[NSString stringWithFormat:@"%c", c]]; + } + + return output; +} + +@end + + + +int main(int argc, const char * argv[]) +{ + + @autoreleasepool { + NSString *encrypted = [XOREncryption encryptDecrypt:@"kylewbanks.com"]; + NSLog(@"Encrypted:%@", encrypted); + + NSString *decrypted = [XOREncryption encryptDecrypt:encrypted]; + NSLog(@"Decrypted:%@", decrypted); + } + return 0; +} +