URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 117189
[ Назад ]

Исходное сообщение
"Доступен NeoPG 0.0.6, форк GnuPG 2 "

Отправлено opennews , 23-Апр-19 23:11 
Подготовлен (https://github.com/das-labor/neopg/releases/tag/v0.0.6)  новый выпуск проекта NeoPG (https://neopg.io/), развивающего форк инструментария GnuPG (GNU Privacy Guard) c реализацией инструментов для шифрования данных, работы с электронными подписями, управления ключами и доступа к публичным хранилищам ключей.
Ключевым отличием NeoPG является проведение существенной чистки кода от реализаций устаревших алгоритмов, переход с языка Cи на C++11, переработка структуры исходных текстов для упрощения сопровождения и предоставление расширяемого API для разработки надстроек.  Весь новый код поставляется (https://github.com/das-labor/neopg) под разрешительной лицензией BSD вместо GPLv3.


Среди изменений также выделяется переход на сборочную систему cmake, замена Libgcrypt на библиотеку Botan (https://github.com/randombit/botan), замена встроенных парсеров и кода для работы с БД на libcurl и SQLite. В NeoPG прекращён запуск длительно работающих фоновых процессов gpg-agent, dirmngr (Directory Manager) и scdaemon (Smart Card Daemon), вместо которых выполняются одноразовые вспомогательные обработчики, завершаемые сразу после выполнения задания.

Основная функциональность NeoPG реализована в форме  библиотеки libneopg, которую можно использовать в сторонних приложениях. Поверх libneopg реализован интерфейс командной строки,  в котором произведено объединение входящих в GnuPG разрозненных утилит (gpg, gpgsm, gpgconf, gpgv, gpgtar и т.п.) в единый исполняемый файл neopg с оформлением субкоманд в стиле Git и поддержкой цветного вывода. В рамках команды "neopg gpg2" реализована прослойка для обеспечения совместимости с GnuPG 2.


В новом выпуске улучшена совместимость с утилитой gpg2 - если gpg2 является жёсткой ссылкой на neopg, то автоматически применяется слой для обеспечения совместимости команд с GnuPG 2. Добавлена новая команда "packet dump". Обеспечена поддержка Ubuntu 18.04. Улучшена работа сборочных сценариев Cmake. Вместо boost::format задействована библиотека fmtlib. Добавлен OpenPGP парсер для хранилищ ключей.

URL: https://github.com/das-labor/neopg/releases/tag/v0.0.6
Новость: https://www.opennet.dev/opennews/art.shtml?num=50564


Содержание

Сообщения в этом обсуждении
"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 23-Апр-19 23:11 
Кек, за курлом тянется такой хвост уязвимостей, что кукареканье про секурность невозможно воспринимать всерьез.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено neo , 23-Апр-19 23:53 
По-вашему лучше пилить очередной велосипед и наплодить ещё больше дивных новых багов?

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 00:44 
Если "велосипед" лучше и безопаснее, то почему бы и нет?

То, что разработчик NeoPG не может пукнyть без помощи third-party библиотек, скорее указывает на нехватку сил и умения, а не грамотную архитектуру и заботу о пользователях. Когда его творение поимеют из-за дыр в этих библиотеках, пользователям будет плевать, какие крутые это были библиотеки, и как много времени он себе сэкономил путём их использования.


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 10:09 
Может ему кроме своих libcurl и crypto еще и ОС релизовывать сразу?
Ну там дистрибутивчик новый выкатить?
В мире лялекса так принято, что на каждую программку из 3,5строк по дистрибутиву.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Ботан , 24-Апр-19 21:25 
зачем писать глупости? внимания не хватает?
чего только стоит студентокод libcurl достаточно глянуть исходники, что бы понять что эта либа пилилась для скачивания интернет странички на один раз. А потом разрабам стало лень и ненужно переписывать ее код.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 14:00 
Если curl такой дырявый (а дыры в нем регулярно находят), а gpg нет, встает вопрос — а нужно ли переписывать, и если нужно, то может не на плюспх из прошлого десятилетия с дырявым HTTP двиглом?

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 14:12 
Давай список непофикшеных.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 16:20 
В велосипеде их, конечно же, меньше

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено пох , 24-Апр-19 20:20 
в правильном велосипеде их действительно меньше, потому что там нет климат-контроля, развлекательного центра (с доступом к управлению двигателем и автопилоту) и самого автопилота, кстати, тоже нет.

curl это попытка сделать все и для всех, навсегда - что, наверное, неплохо для программ, у которых сетевой функционал вторичен и при этом сравнительно универсален - сегодня нам нужен http, завтра ssh, послезавтра вообще smtp.

а для узкоспециализированной, да еще и требующей очень бережного отношения из-за работы с максимально оберегаемыми (по задумке) данными - тривиальное взаимодействие с keyservers вполне можно было правильно и надежно сделать самому.

Но зачем? Автору оно на самом ведь деле - не нать.


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 25-Апр-19 10:51 
curl весь мир пользуется и проверяет, а в велосипеде уязвимостей "нет" только потому, что их никто не опубликовал

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 23-Апр-19 23:26 
NSA старается не покладая рук

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено OpenEcho , 24-Апр-19 17:53 
NSA вообще то занято c GnuPG2:

CVE-2018-12556
CVE-2018-12356
CVE-2018-12019
CVE-2018-12020
...


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 19:42 
> [CVE-2018-12556] Bypassing signature verification in Yarn package manager

Чиво? gpg тут при чём? Дальше даже не стал смотреть.


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено OpenEcho , 25-Апр-19 16:28 
>> [CVE-2018-12556] Bypassing signature verification in Yarn package manager
> Чиво? gpg тут при чём? Дальше даже не стал смотреть.

ну и зря:

https://www.cvedetails.com/vulnerability-list/vendor_id-4711...


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Vitaliy Burovoy , 25-Апр-19 02:25 
Из приведённого списка к GnuPG2 относится только:

> mainproc.c in GnuPG before 2.2.8 mishandles
> the original filename during decryption and
> verification actions, which allows remote
> attackers to spoof the output that GnuPG sends…

https://nvd.nist.gov/vuln/detail/CVE-2018-12020


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено neo , 23-Апр-19 23:57 
Пользуясь случаем реквестую замену глючному Gpg4win. В общем, чтобы использовать GnuPG под Windows с человеческим GUI.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 00:09 
> вместо которых выполняются одноразовые вспомогательные обработчики, завершаемые сразу после выполнения задания.

А как одноразовый обработчик заменит gpg-agent?


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 00:23 
> форк проекта GnuXX
> под разрешительной лицензией BSD, вместо GPLv3

сколько они занесли Столлману?.. :)


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено виндотролль , 24-Апр-19 00:24 
Зачем переписывать на мертвом языке?

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 00:28 
Ну да, пора б на Bosque в в 2k19 писать.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено виндотролль , 24-Апр-19 01:07 
> Ну да, пора б на Bosque в в 2k19 писать.

Не, ну я вполне серьезно.

Ладно б на си, с ним потом можно слинковаться из раста, из с++, из джавы/котлина/любого жвм, из питона да вообще всего.

Какой смысл в С++? Ладно б это был очередной плеер. Но они метят в либу, которую, по идее, должны юзать другие...


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 08:00 
>Ладно б на си, с ним потом можно слинковаться из раста, из с++, из джавы/котлина/любого жвм, из питона да вообще всего.

ниасилил extern "C"?


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено ффф , 24-Апр-19 10:58 
> ниасилил extern "C"?

- то есть классов и темплейтов там не будет? и зачем тогда С++?


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Vsevolod Stakhov , 24-Апр-19 11:16 
Почему не будет? Для внутренних интерфейсов запросто. А для внешних интерфейсов пишутся минимальные обертки с extern "C". Так, например, сделан тот же hyperscan. Ну и на C++ реально проще писать эффективный код, чем на plain C, как раз за счет темплейтов и всяких constexpr.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено виндотролль , 24-Апр-19 20:14 
> Почему не будет? Для внутренних интерфейсов запросто. А для внешних интерфейсов пишутся
> минимальные обертки с extern "C". Так, например, сделан тот же hyperscan.
> Ну и на C++ реально проще писать эффективный код, чем на
> plain C, как раз за счет темплейтов и всяких constexpr.

Все это красиво в теории, а на практике, минимальные обертки пишутся на отъе**сь, для половины функциональности в лучшем случае.



"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено GentooBoy , 25-Апр-19 02:31 
> Ну и на C++ реально проще писать эффективный код, чем на plain C

Именно поэтому rspamd  на си написан?


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Vsevolod Stakhov , 26-Апр-19 20:28 
Основная логика в Rspamd пишется на Lua. Если бы я начинал проект сейчас и знал, что он будет настолько большим, то писал бы на C++, да. Но с тем C++, что был в 2007-м году и с теми моими навыками как программиста, я очень рад, что не стал тогда писать Rspamd на C++, да.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 00:32 
на nodeJS! :)

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено th3m3 , 24-Апр-19 01:23 
>переход с языка Cи на C++11

Нужно было брать Rust. Тогда мог быть смысл.


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено КГБ СССР , 24-Апр-19 07:10 
Возьми и перепиши на Rust.
За тебя это никто делать не будет.

Или ты только критиковать и предлагать всякий бред оразд?


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 12:09 
Во, ещё один pedeRust.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Растишка , 24-Апр-19 21:45 
Пока ты языком болтаешь, люди уже делают:

https://sequoia-pgp.org/


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 08:55 
О, криптография от Васяна, встречайте. Следующее (или уже третье) поколение выпилильщиков, наверно, из дебиана подвезли [https://www.schneier.com/blog/archives/2008/05/random_number...

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 14:16 
Скобка после урла неправильно парсится.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 19:44 
А debian при чём?

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 12:06 
> форк инструментария GnuPG
> Весь новый код поставляется под разрешительной лицензией BSD

То есть новые части кода отдельно под BSD, но проект в целом все равно получается под GPL.


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Анонимно , 24-Апр-19 15:35 
Си на С++? Лучше бы уж на Golang переписали.

"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 20:09 
У go слишком уродливый синтаксис:
func (p *Point) Translate(dx, dy float64) (float64, error) {

if nerr, ok := err.(net.Error); ok && nerr.Temporary() {

facepalm


"Доступен NeoPG 0.0.6, форк GnuPG 2 "
Отправлено Аноним , 24-Апр-19 16:19 
Переписать с C на C++ и поменять лицензию с GPLv3 на BSD. Сказочные дол***бы.