Есть ли что-нибудь вроде SHA1CryptoServiceProvider (который является C #) в Objective-C? - PullRequest
2 голосов
/ 05 августа 2010

Я пытаюсь создать средство проверки серийного номера в приложении, которое я пишу, и оно использует криптографию для кодирования имени и введенного номера в соответствии с тем, что на самом деле должно быть.Я знаком с SHA1CryptoServiceProvider, используемым в C #, но есть ли что-нибудь подобное в Objective-C?

Вот пример кода из C #, который я хочу преобразовать в Objective-C :

string license = txtnLicense.Text;
        SHA1CryptoServiceProvider provider = new SHA1CryptoServiceProvider();
        string finalLicense = BitConverter.ToString(provider.ComputeHash(bytes));
        bool isGood = (BitConverter.ToString(provider.ComputeHash(bytes)).Replace("-", "") == license.Replace("-", ""));

Ответы [ 2 ]

4 голосов
/ 06 августа 2010

Mac OS X поставляется с простой в использовании встроенной библиотекой шифрования и хэширования под названием CommonCrypto. Вам не нужно ссылаться на что-то особенное, чтобы использовать его. См. Заголовки в / usr / include / CommonCrypto для его интерфейса и CC_SHA1 (3cc) для документов.

2 голосов
/ 05 августа 2010

использование openssl для лицензионных ключей показывает, как использовать SHA1. Это может быть хорошим началом.

...