Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Изучаю библиотеку openSSL. Есть пример: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Взят здесь. В методе open первым параметром передается KEYS - он нигде не определен, о чем и говорит мне среда. Примеры вроде даются на C, я делаю на C++. Если кто-нибудь знает, где определен параметр KEYS, буду рад узнать об этом от вас тоже. С представленной мной ссылки предшествующие этому три примера выполняются отлично на C++, правда при компиляции вместо -lssl необходимо было указать -lcrypto и во втором примере добавить некоторые инклуды. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2014, 14:25 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Все понятно - это тот файл куда запишутся ключи, наверно ключи. Пока еще не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2014, 14:51 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Функция open - создаёт/открывает файл. И у нее первый аргумент - это путь+имя файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2014, 17:02 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Теперь вопрос по следующему примеру: в методе Код: plaintext 1. параметры ivec и num - не были инициализированы. Как должен быть инициализирован вектор инициализации ivec? Для num мне необходимо написать функцию возвращающую сколько байт последнего блока используется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2014, 07:45 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Разобрался с openSSL на linux - все работает. Теперь нужно тоже сделать для windows. Установил все что нужно. Код практически такой же, как и на linux, за исключением чтения и записи файлов, но это не важно, так как это не влияет на появление моей ошибки. В ubuntu для подключения библиотеки к проекту я использовал флаг -lcrypto. На windows необходимо было указать директорию с заголовками, директорию с библиотеками и указать в зависимостях две библиотеки. Я все сделал, но при выполнении кода генерации ключа выдает ошибку: Список ошибок Ошибка 10 error LNK1120: 6 неразрешенных внешних элементов *путь\OpenSSLAPPAsymmetric.exe Проект - OpenSSLAPPAsymmetric Ошибка 8 error LNK2001: неразрешенный внешний символ "_EVP_get_cipherbyname" *путь\Main.obj Проект - OpenSSLAPPAsymmetric Ошибка 5 error LNK2001: неразрешенный внешний символ "_OpenSSL_add_all_ciphers" *путь\Main.obj Проект - OpenSSLAPPAsymmetric Ошибка 7 error LNK2001: неразрешенный внешний символ "_PEM_write_RSAPrivateKey" *путь\Main.obj Проект - OpenSSLAPPAsymmetric Ошибка 9 error LNK2001: неразрешенный внешний символ "_PEM_write_RSAPublicKey" *путь\Main.obj Проект - OpenSSLAPPAsymmetric Ошибка 6 error LNK2001: неразрешенный внешний символ "_RSA_free" *путь\Main.obj Проект - OpenSSLAPPAsymmetric Ошибка 4 error LNK2001: неразрешенный внешний символ "_RSA_generate_key" *путь\Main.obj Проект - OpenSSLAPPAsymmetric Функция генерации ключей Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. Повторюсь, что на ubuntu данная функция прекрасно работает. Если кто-нибудь сталкивался с подобной проблемой буду рад, если поделитесь опытом. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 15:34 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Мы не знаем, какой у тебя компиллятор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 15:50 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
mayton, На винде пишу на VS соответственно и компилятор майкрософтовский. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 16:02 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Ну сделай скрин где ты указал опции линкера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 17:02 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Может это поможет http://stackoverflow.com/questions/8993805/poco-c-library-static-linking-with-mt-error ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 17:42 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. Вот эти все символы _EVP_get_cipherbyname и так далее , должны быть в каких-то библиотеках, и ты их должен указать при сборке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 18:09 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
maytonНу сделай скрин где ты указал опции линкера. MasterZivВот эти все символы _EVP_get_cipherbyname и так далее , должны быть в каких-то библиотеках, и ты их должен указать при сборке. Для установки библиотеки на ubuntu и на windows пользовался этой статьей. На linux все нормально прошло. На windows первые две команды прошли нормально, третья выдала ошибку, поэтому взял здесь установщик - все поставилось без проблем. В корне диска "C" создалась папка с инклудами, библиотеками, и двумя файлами библиотек, которые необходимо указать в зависимостях, ну и много чего еще. Далее делаю как сказано здесь : Необходимые действия для подключения библиотеки к проекту Additional Include Directories: c:/Temp/openssl/include Additional Library Directories: c:/Temp/openssl/lib Additional Dependencies: libeay32.lib ssleay32.lib К слову, если убрать флаг -lcrypto (с флагом -lssl, как показано в статье у меня не работает на ubuntu) в проекте на ubuntu, то будут такие же ошибки как и на винде сейчас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2014, 07:37 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Все, проблему решил. Теперь возникает ошибка в строке вышеуказанной функции: Код: plaintext 1. 2. 3. Ошибка: Код: plaintext 1. Если кто-нибудь знает её значение прошу поведать мне об этом. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2014, 12:17 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Ошибку исправил. Второй раз уже нашел ответ на китайском форуме) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2014, 14:51 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
La FranceОшибку исправил. Второй раз уже нашел ответ на китайском форуме) А написать как решили, чтобы следующий не искал на китайском форуме? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2014, 20:39 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Китайцы рулят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2014, 20:46 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyА написать как решили, чтобы следующий не искал на китайском форуме? - В первом случае необходимо было поставить библиотеку для 32-х разрядной системы вместо 64-х разрядной (у меня 64-х разрядная система, но тем не менее). - Во втором случае к проекту нужно было добавить #include <openssl/applink.c> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 06:28 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
La France- Во втором случае к проекту нужно было добавить #include <openssl/applink.c> А это точно китайцы посоветовали? Больше похоже на индусов. Рекомендую вам более полно разобраться в этой проблеме, т.к. это решение, может и работает, но точно некорректно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 06:38 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyА это точно китайцы посоветовали? Больше похоже на индусов. Рекомендую вам более полно разобраться в этой проблеме, т.к. это решение, может и работает, но точно некорректно. Тогда уж это индусы маскирующиеся под китайцев. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 06:45 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, На чём основаны ваши сомнения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 06:46 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
La FranceНа чём основаны ваши сомнения? На том, что если вы так сделаете в двух модулях программы, то программа не соберется из-за дубликатов переменных и функций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 07:14 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, О каких модулях вы говорите? Если вы имеете ввиду, что на сервере и клиенте у меня будет подобное, вы ошибаетесь. Во-первых сервер и клиент никогда на одной машине стоять не будут. Во-вторых сервер пишу на netbeans и указывать там данный инклюд нет необходимости. Если я вас неправильно понял, поясните, в каком месте у меня возникнет конфликт одноименных функций и полей? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 07:33 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
La France, Модуль это в данном случае файл исходника с расширением .c В нетривиальных программах, модуле обычно несколько. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 07:37 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, Программа, что я пишу вся из плагинов будет состоять, тут вы правы. Но, думаю, данная библиотека только в клиенте будет использоваться, так что проблем не должно возникнуть. Спасибо за предупреждение! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 08:00 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
La France, Проблема не только в этом, а в том что вы включаете файл реализации, тогда как включать надо файл заголовков этой реализации, а саму реализацию нужно добавить в проект отдельным модулем, который будет откомпилирован и прилинован к вашему приложению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 08:12 |
|
||
|
Шифрование данных с помощью openSSL
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyLa France, Проблема не только в этом, а в том что вы включаете файл реализации, тогда как включать надо файл заголовков этой реализации, а саму реализацию нужно добавить в проект отдельным модулем, который будет откомпилирован и прилинован к вашему приложению. Что вы подразумеваете под файлом реализации и под файлом заголовков этой реализации? Клиент я сейчас пишу на консоли, для ускорения тестирования. Потом клиент будет в виде одной динамической библиотеки, к классам, полям, функциям которой я буду обращаться из скриптов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 08:56 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38536274&tid=2019721]: |
0ms |
get settings: |
12ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
78ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 15ms |
| total: | 192ms |

| 0 / 0 |
