madf: (Default)
У OpenSSL багато критиків, і уже багато форків. Раніше мені якось не доводилось стикатися з цією бібліотекою, але останній рік я працюю з нею майже щоденно, точніше з криптографічною її частиною. Тож є кілька думок з цього приводу.
1. У OpenSSL офігенна архітектура у тому що стосується криптографії (EVP_-stuff, BIO_-stuff).
2. У OpenSSL гівняна документація. Точніше у них дофіга документації на функції, але майже немає прикладів їх використання. Доводиться багато гуглити і шукати по stackoverflow про те як саме користуватись їх функціями.
3. У роботі з OpenSSL варто мати версію зібрану зі зневаджувальною інформацією і не треба боятися лізти у джерельні коди — там усе більш-менш доступно.
4. Варто розуміти як саме працює RSA і алгоритми на еліптичних кривих. Так, наприклад, я тільки вчора узнав що цифровий підпис зроблений за допомогою ECDSA кожного разу різний для одно і того ж набору даних. Причина у тому що у процесі підпису один із параметрів обирається випадково і саме його випадковість захищає від підбору приватного ключа за підписом. Існує RFC 6979 який описує алгоритм обирання цього параметру для детермінованого підпису, але він наразі не імплементований у OpenSSL. Це суттєво зменшує можливості до тестування коду що працює з ECDSA.
5. Варто знати що таке ASN.1 і як з ним працювати. Наприклад, я тільки сьогодні узнав що DER вимагає мінімально можливого кодування цілих чисел, і тому підпис може мати різний розмір — у мене він коливався від 69 до 72 байт для SHA256 digest і кривої prime256v1. При чому EVP_DigestVerifyFinal повертав коректну довжину підпису тільки після фактичного підпису.
6. У OpenSSL погано з повідомленнями про помилки. Фактично, жодне з тих що я отримав мені не допомогло.

Казка

Dec. 27th, 2011 09:59 pm
madf: (Default)
Від автора "Криптографії і свободи"! Цар і правляча партія, могутня таємнича Контора і прості людичисла! Читайте на екранах у грудні: "Сказка про числа, которые не хотели ни с кем делиться"!
madf: (Default)
Коли давно omega сказав мені, що класно було б мати невеличку апплікуху, на кшталт InetAccess для Stargazer, що не авторизувала б користувача, а лише повідомляла про стан його рахунку (незалежно від того, можливий для нього доступ в інет чи ні). Я тоді трошки посперечався, бо фактично - це дублювання функціоналу InetAccess.
Через деякий час та сама ідея промайнуа десь на форумі Локальних мереж України (у розділі Stargazer, звичайно). Потім ми з Борисом трошки обговорили ідею і дійшли до висновку що вона варта реалізації. Поговорили й забули.
Read more... )

Profile

madf: (Default)
madf

April 2017

S M T W T F S
      1
2345678
9101112131415
1617 1819202122
23242526272829
30      

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 27th, 2017 02:36 pm
Powered by Dreamwidth Studios