2012-04-16 4 views
0

Я пытаюсь преобразовать шестнадцатеричную строку в base64 на iPhone. Гекс:Преобразование шестнадцатеричной строки в base64?

5289be07c5c7edcc18f3a02c7b81c110b8637f8b2ddbc29cdabcbd7e394c1695 

Но я не могу, кажется, чтобы получить версию base64 этого, а именно:

Uom+B8XH7cwY86Ase4HBELhjf4st28Kc2ry9fjlMFpU= 

Как бы я получить эту base64 строку?

ответ

1

Поскольку вы используете SHA256 (я также использую его), я предполагаю, что вы получите выход NSData, прежде чем преобразовать его в шестнадцатеричную строку. Возьмите эти данные и используйте метод категории, показанный в this question (тот, который имеет наибольшее количество оборотов, на самом деле имеет встроенный код)

+0

Я добавил метод, который обрабатывает SHA256. Я не вижу способа, которым он использует NSData ..? – cannyboy

+0

Что это значит? Вы получаете NSData из библиотеки CommonCrypto? Ну ... вы возвращаете необработанные байты, и вы можете превратить их в NSData, используя NSData dataWithBytes. Затем вы можете передать это как параметр функции, показанной в ответе выше. – borrrden

+1

О, я вижу, вы отредактировали свой вопрос ... Вы можете преобразовать cHMAC в NSData после того, как вы отправили его функции CC (используя dataWithBytes). – borrrden

Смежные вопросы