本人是ios菜鸟,最近在对字符加密的时候,发现一个很奇怪的问题,
就是其他字符或者字符串返回都是正常,唯独只有gyb返回空,代码如下
+(NSString *)DESSecret:(NSString *)plainText
{
    NSString *ciphertext = nil;
    NSData *textData = [plainText dataUsingEncoding:NSUTF8StringEncoding];
    NSUInteger dataLength = [textData length];
    unsigned char buffer[dataLength];
    memset(buffer, 0, sizeof(char));
    size_t numBytesEncrypted = 0;
    NSRange range;
    range.location=0;
    range.length=dataLength;
    NSString *testString =key;
    NSData *testData = [testString dataUsingEncoding: NSUTF8StringEncoding];
    Byte *testByte = (Byte *)[testData bytes];
    CCCryptorStatus cryptStatus = CCCrypt(kCCEncrypt, kCCAlgorithmDES,
                                          kCCOptionPKCS7Padding,
                                          [key UTF8String], kCCKeySizeDES,
                                          testByte,
                                          [textData bytes], dataLength,
                                          buffer, 1024,
                                          &numBytesEncrypted);
    if (cryptStatus == kCCSuccess) {        
        ciphertext=[DESHandleString parseByte2HexString:buffer];
    }
    return ciphertext;
}
+(NSString *) parseByte2HexString:(Byte *) bytes
{
    NSMutableString *hexStr = [[NSMutableString alloc]init];
    int i = 0;
    if(bytes)
    {
        while (bytes[i] != '\0')
        {
            NSString *hexByte = [NSString stringWithFormat:@"%x",bytes[i] & 0xff];///16进制数
            if([hexByte length]==1)
                [hexStr appendFormat:@"0%@", hexByte];
            else
                [hexStr appendFormat:@"%@", hexByte];
            
            i++;
        }
    }
    NSLog(@"bytes 的16进制数为:%@",hexStr);
    return hexStr;
}
求大神指点啊 ,我实在搞不懂啊 ios 加密字符