2016-08-30 14 views
1

Мне нравится использовать функцию деривации ключей scrypt в C-like (Xojo, фактически) программе на Mac.Использование функции деривации ключа scrypt на OS X

Насколько я могу судить, в OS X нет ничего предустановленного в отношении этого.

Исходный код находится на Tarsnap, и хотя он компилируется (после ./configure и make), он создает исполняемый файл, а не библиотеку, на которую я мог бы ссылаться.

Интересно, есть ли простой способ построить дилиб из этого. Я просмотрел файл makefile, но он меня переполняет, и вместе с исходным кодом нет инструкций по сборке.

ответ

1

Мне удалось создать dylib с помощью Xcode.

Были несколько проблем (на основе Scrypt v1.2.0):

  • sha256.c объявляет initstate. Это столкнулось с глобальным именем, так или иначе, поэтому я переименовал его в s_initstate в 3 местах в этом файле.
  • Я добавил все файлы .c в проект, но мне пришлось удалить несколько, которые на самом деле не нужны, в том числе crypto_scrypt-ref.c, что вызвало дублирование других символов.
  • Пути поиска по умолчанию, установленные Xcode 7, относятся к usr/include внутри папки SDK для конкретной ОС OS. Но это не включает нужный файл openssl/aes.h, который я нашел только в /usr/include (т. Е. В корне файловой системы). Я работал вокруг этого, установив целевой параметр «Всегда Поиск пользователей Paths» в YES и «User Header Пути поиска» для /usr/include

После этого, я мог бы построить dylib, а затем связать с функциями, объявленным в crypto_scrypt .h и scryptenc.h.

(Жаль, что проект не на CVS или я отправить запрос на тянущий с моими изменениями.)

Update: Проект находится на github

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

  • Нет связанных вопросов^_^