Convert NSData To String?
Answer : Objective-C You can use (see NSString Class Reference) - (id)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding Example: NSString *myString = [[NSString alloc] initWithData:myData encoding:NSUTF8StringEncoding]; Remark : Please notice the NSData value must be valid for the encoding specified (UTF-8 in the example above), otherwise nil will be returned: Returns nil if the initialization fails for some reason (for example if data does not represent valid data for encoding). Prior Swift 3.0 String(data: yourData, encoding: NSUTF8StringEncoding) Swift 3.0 Onwards String(data: yourData, encoding: .utf8) See String#init(data:encoding:) Reference Prior Swift 3.0 : String(data: yourData, encoding: NSUTF8StringEncoding) For Swift 4.0: String(data: yourData, encoding: .utf8) I believe your "P" as the dataWithBytes param NSData *keydata = [NSData dataWithBytes:P length:len]; should be "buf" NSData *keydata = [NSData dataWithBytes:buf length:len]; sin...