CCCrypt (AES256)와 일반 텍스트 키를 사용하여 입력 된 NSString을 암호화하는 iPhone 앱이 있습니다. 문자열과 키는 NSData 객체를 반환하는 암호화 메서드에 제공됩니다.obj-c에서 NSString에 암호화 된 NSData?
요청 '데이터'암호화 된 문자열 데이터가 같이있는 NSString을 제공하다 [데이터 설명] : 나는있는 NSString 해당 변환 할 때 "<이 0b368353이 a707e7de 3eee5992 ee69827e e3603dc2 b0dbbc0b 861ca87d f39ce72a>"하지만, 내가 얻을 "(없는)".
동일한 일반 텍스트 키를 사용하여 원래 문자열로 해독하는 데 사용할 수있는 NSString을 사용자에게 반환해야합니다. NSData 객체의 'description'속성이 문자열을 반환 할 수 있다면 NSData 객체에서 "(null)"을 가져 오지 않고 NSString을 생성 할 수있는 방법이 있습니까?
업데이트 : Quinn에게 누가 Base64 인코딩을 사용하여 혼란스런 문자열을 생성 할 것을 제안합니다. 내가 아는 바로는 Base64 인코딩은 단순히 문자를 교환하지는 않지만 문자 교환은 위치에 따라 다르므로 괜찮습니다.
내 유일한 관심사는 '암호문'을 사용하여 메시지를 암호화하고 싶고 난잡한 문자열을 해독해야 할 때 동일한 암호를 입력해야한다는 것입니다. 누구나이를 구현할 수있는 방법을 제안 할 수 있습니까?
아래에서이 문제를 해결하기 위해 내 답변이 업데이트되었습니다. 당신은 맞습니다. Base64는 대체 알고리즘이 아닙니다. 기본적으로 3 바이트를 4 바이트로 확장하므로 인코딩 된 데이터는 인코딩되지 않은 데이터의 1.37 배에 해당합니다. 기본적으로 3 개의 8 비트 청크를 가져 와서 4 개의 6 비트 청크로 다시 분해 한 다음 각각을 ASCII로 쉽게 표현할 수있는 8 비트 청크로 재 해석합니다. Wikipedia에 대한 자세한 내용이 있습니다. –