Есть ли библиотека для iPhone для работы с кодированием HMAC-SHA-1

Просто некоторые расширения для ответа @SLaks. Вам нужно расширить CSharpSyntaxRewriter и переопределить метод VisitTrivia. И здесь вам нужно проверить Kind мелочей. В зависимости от ваших потребностей вы должны фильтровать одиночные и многострочные комментарии:

trivia.IsKind(SyntaxKind.SingleLineCommentTrivia) || trivia.IsKind(SyntaxKind.MultiLineCommentTrivia)

И вернуть default(SyntaxTrivia), чтобы удалить их из дерева.

14
задан Spencer Ruport 27 June 2009 в 07:29
поделиться

6 ответов

CommonCrypto сделает это. Но если Вы хотите код, у меня есть некоторые здесь:

http://oauth.googlecode.com/svn/code/obj-c/OAuthConsumer/Crypto/

, Который я записал для использования в Какао реализации OAuth: http://code.google.com/p/oauthconsumer/wiki/UsingOAuthConsumer

6
ответ дан 1 December 2019 в 08:20
поделиться

CommonCrypto добивается цели.

#import <CommonCrypto/CommonHMAC.h>

тогда позже

/*
  inputs:
  NSData *keyData;
  NSData *clearTextData
*/

uint8_t digest[CC_SHA1_DIGEST_LENGTH] = {0};

CCHmacContext hmacContext;
CCHmacInit(&hmacContext, kCCHmacAlgSHA1, keyData.bytes, keyData.length);
CCHmacUpdate(&hmacContext, clearTextData.bytes, clearTextData.length);
CCHmacFinal(&hmacContext, digest);

NSData *out = [NSData dataWithBytes:digest length:CC_SHA1_DIGEST_LENGTH];
14
ответ дан 1 December 2019 в 08:20
поделиться

Я думаю, что библиотека CommonCrypto сделает то, что Вы хотите. Посмотрите на этот файл:

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk/usr/include/CommonCrypto/CommonHMAC.h

2
ответ дан 1 December 2019 в 08:20
поделиться

Не для iPhone, в частности, но библиотеки libs3 обеспечивает API C для доступа к услугам Amazon S3. Это, или компонент FUSE s3fs, могут быть хорошие источники для извлечения стандартных программ, должен был общаться с веб-сервисами Amazon. Поскольку Objective C все еще C в его ядре, эти стандартные программы должны работать просто великолепно на iPhone.

я знаю по крайней мере одного разработчика, который использует что-то подобное в рамках их приложения для iPhone для общения с блоками S3.

2
ответ дан 1 December 2019 в 08:20
поделиться

Я не знаю, если это верно, больше, но там раньше был ограничениями на алгоритмы шифрования, и Ваше право распределить их определенным странам были ограничены.

, Если это все еще имеет место, могло бы случиться так, что Apple не хочет/может, ограничивают определенные приложения в том, чтобы быть загруженным в этих странах.

0
ответ дан 1 December 2019 в 08:20
поделиться

Немного гуглили и я нашел этот документ .

Экспорт SHA1 зависит от (Соединенные Штаты) Федеральное правительство экспортный контроль и экспортеры рекомендуется связаться с Департаментом Торговля, Бюро экспорта Администрация для получения дополнительной информации.

Я также нашел это:

Китайская Народная Республика и Бывший советский блок может импортировать SHA как до тех пор, пока он предназначен для гражданского приложения для конечных пользователей, а не для военного назначения. Нижеуказанное странам запрещено импорт SHA: Куба, Иран, Ирак, Ливия, Северная Корея, Сербия, Сирия и Судан. Обратите внимание, что этот список страны эмбарго меняются со временем.

(Не прямой ответ на ваш вопрос, но, безусловно, уместный.)

4
ответ дан 1 December 2019 в 08:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: