LINUX.ORG.RU

Вопрос о «Memory safe openssl compatabile library»

 ,


0

4

Доброго времени суток. Нашел тут на просторах интернета вот такую штуку: https://github.com/mesalock-linux/mesalink хотелось бы узнать, стоит ли эта штука внимания или стоит всё же использовать openssl.

В очередной раз убеждаюсь, что видишь очередную rust libryry - знай, что это говно. Смотрю я на код этого убожества и не понимаю - где же там криптография. Где же она. А её там нет, вообще ничего нет.

А потом бам - я дохожу до: https://github.com/briansmith/ring

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

А самое интересное - насколько же нелепо выглядят сектанты на фоне этого, у которым там случилось:

memory-safe
OpenSSL-compatible

Ведь там нету ни safe, ни compatible - там есть ворованный из openssl код. Весь код.

MesaLink and its dependencies are written in Rust, a programming language that guarantees memory safety. This extremely reduces the attack surfaces of an exposed TLS stack, leaving the remaining attack surfaces auditable and restricted.

А это, как это ново. Во-первых балаболы врут - ни на каком расте это говно не написано. Во-вторых никакой раст не является никаким safe. Из safe не следует вообще никакое уменьшение атак.

Ну в целом методичка уровня начальной школы. Оно лучше и безопасней ЛИШЬ ПОТОМУ, что написано на расте. Что самое смешное - оно на расте и не написано. Это даже без учёта всей нелепости подобных лозунгов.

NishiragiShintaro ()

Мне кажется не стоит выдумывать велосипед и следует использовать враппер над нативными либами, по типу того же native-tls.
Всё-равно чистой и стабильной реализации ssl и tls на rust пока нет.

WatchCat ★★★★★ ()
Последнее исправление: WatchCat (всего исправлений: 2)
Ответ на: комментарий от Dark_SavanT

А она есть? Или такая же как эта(состоящая на 100% из ворованного из openssl кода)?

Я уже забыл как раст работает. Спастил себе грязные, небезопасные сишные/асм-файлы из опенссл и бам они уже безопасное. Магия.

NishiragiShintaro ()
Ответ на: комментарий от MyTrooName

Поздравляю - тебя поимела пропаганда. Но я тебе помогу. 1% unsafe кода уже делает весь остальной код небезопасным, но дело не в этом.

Дело в том, что это никакая не library - это обёртка, дошколятская поделка в пару строк. Никакой реальной логики она не содержит. Это обёртка является обёрткой над ещё сотней обёрток, в которых так же есть unsafe.

Но, и об этом я уже говорил, реальная логика там находится в: https://github.com/briansmith/ring

Очевидно, что это так же пропаганда, ведь никакого: «hybrid of Rust, C, and assembly language.» там нет. Там есть ворованный из openssl код, который реализует всё. А сверху к нему прикручена очередная говнораст-обёртка. С очередными unsafe через unsafe.

Т.е. то, что везде называется биндингами - раст-пропаганда называет «гибридом». А гибрит это потому, что они используют не openssl, а просто на 90% состоят из ворованного из неё кода.

NishiragiShintaro ()
Ответ на: комментарий от NishiragiShintaro

Если код написан на «небезопасном» языке, это не означает, что сам код небезопасен.

Это лишь означает, что он не имеет тех гарантий, которые дают «безопасные» языки.

anonymous ()
Ответ на: комментарий от Dark_SavanT

Мне вот интересно, кто тебе платит, чтобы так горело и ты нёс такую херню.

Как смешно смотреть на сектанта, который осознаёт своё место и знает, что ничего кукарекать не может, но. Это трепло пытается что-то там кукарекать про херню.

Ну дак вот, трепло, ты обоснуешь за херню, либо убежишь отсюда так быстро, как только можно и пойдёшь рыдать в подушку?

NishiragiShintaro ()
Ответ на: комментарий от anonymous

Если код написан на «небезопасном» языке, это не означает, что сам код небезопасен.

Зачем ты мне это рассказываешь? Раст пропаганда декларирует два лозунга. Первый - «раст безопасный, а всё что на нём - безопасно», второй - «всё остальное небезопасно, а всё что на нём - небезопасно».

Это лишь означает, что он не имеет тех гарантий, которые дают «безопасные» языки.

Никаких гарантий никакой недоязычок «раст» не даёт. Во-первых это явное враньё, а во-вторых работает всё это иначе.

Почему первое - когда адепты раста что-то там кукарекают про безопасность - они кукарекают про безопасность либ. Но, очевидно, что либы к языку не имеют никакого отношения.

Почему второе - этот недоязычок попросту не даёт(на самом деле сектанты просто не осилил это реализовать) использовать те фичи, которые используются в том же си. А как ты знаешь - если ножик резать не может, то и порезаться им нельзя. Правда и резать им нельзя, но сектантам на это насрать. Они ведь и не режут - она впаривают ножи.

Таким образом мы имеем очередной пхп, которое ничего не может и именно поэтому можно говорить о какой-то там маня-безопасности. Но, очевидно, с таким же успехом можно запретить все фичи в любом языке и будет «безопасно».

Почему? Потому что, когда люди слышат «безопасный нож» - они думают, что это такой же нож, но безопасный. И именно так и работает пропаганда. Она не говорит о том за счёт чего эта безопасность достигается, тем самым обманывая стороннего наблюдателя.

Ведь никто даже подумать не может, что существуют подобные идиоты, которые нережущий нож будут выдавать за безопасный и за нож.

NishiragiShintaro ()
Ответ на: комментарий от NishiragiShintaro

Раст пропаганда декларирует два лозунга. Первый - «раст безопасный, а всё что на нём - безопасно», второй - «всё остальное небезопасно, а всё что на нём - небезопасно».

Говорят эти лозунги об одном — люди, продвигающие их, сами не знают, о какой «безопасности» говорят.

Никаких гарантий никакой недоязычок «раст» не даёт. Во-первых это явное враньё, а во-вторых работает всё это иначе.

Можно поподробнее?

Почему первое - когда адепты раста что-то там кукарекают про безопасность - они кукарекают про безопасность либ. Но, очевидно, что либы к языку не имеют никакого отношения.

Если библиотека полностью написана на «безопасном» языке, то гарантии этого языка также распространяются и на неё.

А как ты знаешь - если ножик резать не может, то и порезаться им нельзя.

Rust — это скорее не тупой нож, а нож в чехле.

anonymous ()
Ответ на: комментарий от anonymous

Говорят эти лозунги об одном — люди, продвигающие их, сами не знают, о какой «безопасности» говорят.

Нет, это лозунги продвигают не люди. Дело в том, что подобные лозунги сознательно распространяют и они двойные.

Т.е. схема простая. Если на таком самом примитивном бытовом уровне, то кидается лозунг «наши сортиры самые чистые», а где-то мелким шрифтом есть сноска «среди наших сортиров». Очевидно, что расчёт идёт на то, что сноску мало кто заметит, а когда к тебе придут - ты оправдаешь себя сноской.

Точно так же и тут. Очевидно, что у сектантов класса чуть выше есть оправдания, что на самом деле всё не так и там много нюансов. Но всё это оправдания. Именно эти сектанты и внушают более низшим формам жизни лозунги без нюансов, даже понимая, что они неверны.

Можно поподробнее?

Ниже написано.

Если библиотека полностью написана на «безопасном» языке, то гарантии этого языка также распространяются и на неё.

Опять ахинея. Нету никакого безопасного языка - ты обосрался. Давай я тебе популярно объясню.

Есть базовый язык, говнораст. Язык - это unsafe язык, иного языка быть не может. По крайней мере на том уровне на котором существует раст.

Далее, на этот unsafe недоязычке пишутся всякие либы. Эти либы обзываются «языков»(обычно через базворд stdlib). Очевидно, что никакая либа языком не является.

Далее, для хомячок делается специальный режим в котором они код писать не могут, а могут юзать только готовые либы.

Эти хомячки юзают либы и говорят, что язык безопасен. Очевидно, что тотальная ахинея. Любая либа будет более безопасна, чем язык.

И раст - это именно такая же либа. Т.е. они высрали такой же, условный, std::vector, который безопасный и сам память удаляет. И назвали это «безопасным языком».

Далее их методичка строится на то, что они забрали из языка все возможности, которые позволят написать std::vector и адепт раста будет вынужден юзать этот вектор, в отличии от адепта С++.

Именно через это определяется безопасность. Безопасность существует именно на уровне либы, а не на уровне языка. Если ты возьмёшь голый язык и попытаешься на нём написать условный вектор - ты говна поешь, а не напишешь его.

Поэтому вся мусорная stdlib раста состоит из unsafe на 90%, а там где она из него не состоит - она тормозное и нелепое говно. Хотя говно она во всём, но то такое.

Rust — это скорее не тупой нож, а нож в чехле.

Полная чушь. Нож в чехле - является тупым ножом, т.к. чехлом ты не можешь резать.

Аналогия полная херня, т.к. любой нож можно положить в чехол и достать. Ты пытаешься тут кукарекать, что раст это такой нож, который можно достать. И что он такой же, но когда ненужен - от него ты защищён. Нет. Тут ты обосрался.

Потому что достать нож из чехла ты не можешь. В этом суть мусорного недоязычка. Если ты попытаешься его достать - ты тут же получишь unsafe.

Т.е. любая адепт раста это такой безвольный чехлоносец, который что-то там чехлом пилит. И иногда приходит дядя, достаёт нож из чехла и режет.

NishiragiShintaro ()
Ответ на: комментарий от anonymous

Говорят эти лозунги об одном — люди, продвигающие их, сами не знают, о какой «безопасности» говорят.

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

MyTrooName ★★★★★ ()
Ответ на: комментарий от MyTrooName

Нет, ну ты реально какой-то бот поехавший. То у него в либе, которая состоит на 90% и сишки/асма мало unsafe, то лозунг только от царя, хотя выше я уже всё пурфцевал.

MesaLink is impervious to bugs like Heartbleed and buffer overflows becuse it is written in Rust.

Потому что он написан на расте. Лозунг 1в1.

MesaLink and its dependencies are written in Rust, a programming language that guarantees memory safety. This extremely reduces attack surfaces of an TLS stack exposed in the wild, leaving the remaining attack surfaces auditable and restricted.

Я уже доказал, что это не так. Ни на каком rust они не написаны. Ну и так же «оно написано на расте - потому», т.е. тот же лозунг.

NishiragiShintaro ()
Ответ на: комментарий от NishiragiShintaro

MesaLink is impervious to bugs like Heartbleed and buffer overflows because it is written in Rust.

bugs like Heartbleed and buffer overflows

это сильно отличается от твоей клоунады «раст безопасный, а всё что на нём - безопасно», «всё остальное небезопасно, а всё что на нём - небезопасно» (орфография, как говорится, сохранена)

на 90% и сишки/асма

в ring на c/асме только реализация криптографии, а не работа с памятью. это чисто математические вещи, с фиксированным объемом входных данных, для которых элементарно доказывается корректность, не говоря уже о безопасности.

и даже без этого, unsafe кода в mesalink и ring меньше, чем в openssl. openssl, конечно, провереннее временем. 5(?) лет с момента последнего обнаружения дырищи, накрывшей собой весь интернет

MyTrooName ★★★★★ ()
Последнее исправление: MyTrooName (всего исправлений: 3)
Ответ на: комментарий от MyTrooName

это сильно отличается от твоей клоунады «раст безопасный, а всё что на нём - безопасно», «всё остальное небезопасно, а всё что на нём - небезопасно» (орфография, как говорится, сохранена)

Неверно. Опять врёшь, балабол. И почему ты проигнорировал вторую цитату?

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

Доказать это так же просто:

ring: Safe, fast, small crypto using Rust, by Brian Smith

Safe, не memory safe, а именно safe. И везде написано safe.

focused on safety, especially safe concurrency.[13][14] Rust is syntactically similar to C++,[15] but is designed to provide better memory safety while maintaining high performance.

safety, «while maintaining high performance»(когда у тебя весь код на си/асм"е).

«rust безопасный язык» - ты сможешь зугуглить.

Enter Rust: a safe, concurrent language with the performance of C and C++.

Это всё первый ссылки в гугле по кейвордам. Я думаю, что ты осилишь погуглить.

К тому же, оно вообще не от чего не защищает, если в нём есть хотя-бы одно unsafe, а оно там есть.

в ring на c/асме только реализация криптографии, а не работа с памятью.

Опять обосрался. Вся криптография работает с памятью. Вся криптография там написана не на расте. А то, что написано на расте - написано с unsafe, а значит не является безопасным по определению. А даже если бы было - оно не является безопасным т.к. никакой даже безопасности памяти в говнорасте нет, а даже если бы была - оно зависит от тонны сишного/крествого рантайма, который по методичке не является безопасным.

для которых элементарно доказывается корректность, не говоря уже о безопасности.

Покажешь доказательства, трепло?

NishiragiShintaro ()
Ответ на: комментарий от MyTrooName

И пошел оправдываться. Ну вся суть раст-адептов. Кукарекал - обосрался и «встречаются». Только ты опять врёшь - они не встречаются и это не «маркетологизма», а а целенаправленная пропаганда и враньё от его адептов.

Постоянное враньё, что оно такое же быстрое. А потом, когда ты в угол загоняешь сектантов - они начинают оправдываться «а раст и никогда не был создан для производительности».

Постоянно враньё, что оно безопасное. А потом, когда ловишь балаболов - они начинают оправдываться «ну это случаи, ну это всё не так», «ну там С/С++/asm - он безопасный».

Как я и говорил. Украл код из openssl и бам - он уже стал безопасный. Уже си может быть безопасный, но почему-то адепт сам своей методичке противоречит. Если си может быть безопасный, то где мне об этом почитать? Расскажи мне, где раст-балаболы в своих агитках об этом говорят? Не ты, трепло севшее в лужу, а именно официальная пропаганда.

NishiragiShintaro ()
Ответ на: комментарий от NishiragiShintaro

Safe, не memory safe

именно memory safe. ты невнимательно читал методички

К тому же, оно вообще не от чего не защищает, если в нём есть хотя-бы одно unsafe, а оно там есть.

повторяться я больше не буду. пока до тебя не дойдет тупизна такой логики, обсуждать конкретику с тобой бесполезно

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

раст был создан именно для производительности, вместе с безопасностью. нет, не той безопасностью, которая дает гарантии, что любой код, написанный, например, тобой, не будет содержать ошибок/дыр/утечек/UB в unsafe. гарантии очень ограниченные и конкретные, но универсально полезные

Покажешь доказательства

линейный код сам себе доказательство

MyTrooName ★★★★★ ()
Ответ на: комментарий от MyTrooName

я так понял, против этого утверждения ты по очевидным причинам ничего не имеешь?

Я уже отвечал на эти потуги, трепло. Си-код уже unsafe, а его там 90%. Любое кол-во unsafe уже unsafe и сколько там их - не имеет значения.

К тому иди пруфцуй свою потугу. Сколько там в одном, а сколько в другом случае. Меня твой кукаретинг мало волнует без пруфов.

NishiragiShintaro ()
Ответ на: комментарий от NishiragiShintaro

Где слово memory?

к словам ты цепляться умеешь, этого не отнять.

ты, видимо, сам себя ставишь на уровень, как ты говоришь, «домохозяйки».

я тебе говорю, что речь про memory safety. потому что до тебя не дошло. но я тебе поясняю. memory safety. memory.

MyTrooName ★★★★★ ()
Ответ на: комментарий от MyTrooName

я тебе говорю, что речь про memory safety. потому что до тебя не дошло. но я тебе поясняю. memory safety. memory.

Плохо оправдывайся, давай лучше. Во-первых ты пойдёшь доказывать - на каком основании прав ты, а не я. Во-вторых ты будешь оправдываться за то, что в одном случае написано одно, а в другом другое.

NishiragiShintaro ()
Ответ на: комментарий от MyTrooName

Абсолютно неважно какие там категории, если в safe существует unsafe, то оно уже НИКОГДА не будет safe. Ты можешь там пытаться рулить в сторону «больше safe/меньше unsafe», но safe оно не будет НИКОГДА. Это работает всегда и везде.

NishiragiShintaro ()
Ответ на: комментарий от NishiragiShintaro

Абсолютно неважно какие там категории, если в safe существует unsafe, то оно уже НИКОГДА не будет safe. Ты можешь там пытаться рулить в сторону «больше safe/меньше unsafe», но safe оно не будет НИКОГДА. Это работает всегда и везде.

я тебе больше скажу, в IT абсолютно safe уже ничего и «НИКОГДА» не будет, если ты и дальше будешь цепляться к такому пониманию слова safe.

Ты можешь там пытаться рулить в сторону «больше safe/меньше unsafe»

именно туда я и рулю. туда все, у кого хоть капля мозгов есть, рулят. но не ты.

MyTrooName ★★★★★ ()
Последнее исправление: MyTrooName (всего исправлений: 1)
Ответ на: комментарий от MyTrooName

я тебе больше скажу, в IT абсолютного safe уже ничего и «НИКОГДА» не будет, если ты и дальше будешь цепляться к такому пониманию слова safe.

Всмысле такому - оно везде так понимается. Ты ведь используешь термин «безопасно», а не «более безопасно».

Т.е. когда пропаганде удобно - она везде кукарекает о safe, именно поэтому и существуют такие: «because it is written in Rust.». А когда пропаганда садится в лужу - начинаются манёвры.

Кстати, у тебя и для «impervious» есть собственная трактовка?

именно туда я и рулю. туда все, у кого хоть капля мозгов есть, рулят. но не ты.

Опять же, типичная сектантская риторика - «все умные поступают и думают как мы, а ты просто тупой».

NishiragiShintaro ()
Ответ на: комментарий от NishiragiShintaro

Ты ведь используешь термин «безопасно», а не «более безопасно».

я и говорю, цепляешься к словам. я уже пояснил, почему в контексте IT это одно и то же. не знаю, как еще понятнее можно

Кстати, у тебя и для «impervious» есть собственная трактовка?

ты про «impervious to bugs like Heartbleed and buffer overflows»? нет, тут трактовка на 100% прямая

MyTrooName ★★★★★ ()
Последнее исправление: MyTrooName (всего исправлений: 1)
Ответ на: комментарий от NishiragiShintaro

Опять же, типичная сектантская риторика - «все умные поступают и думают как мы, а ты просто тупой».

ты у нас такой один. наверное, самый умный, да. остальные просто тупые.

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

MyTrooName ★★★★★ ()
Последнее исправление: MyTrooName (всего исправлений: 1)
Ответ на: комментарий от MyTrooName

в лужу сел ты, если считаешь, что «Плохо оправдывайся, давай лучше» с твоей стороны - сильный аргумент.

Опять трепло нелепое врёт. «плохо оправдываешься» не было аргументом, ты врёшь. Аргументом было:

Во-первых ты пойдёшь доказывать - на каком основании прав ты, а не я. Во-вторых ты будешь оправдываться за то, что в одном случае написано одно, а в другом другое.

Т.е. было два аргумента. Первое - ты никак не обосновал свой тезис, в отличии от меня. Ты просто уверяешь, что моя трактовка неверная, а твоя верная. Хотя пруфы есть у меня, а у тебя есть лишь балабольство.

Второе - почему, если все понимают под safe именно memory safe, то почему в одном месте написано так, а в другом так? Аналогично ты обосрался тут:

именно memory safe. ты невнимательно читал методички

Ты тут не кукарекал, что я «неправильно трактовал» методичку, а именно невнимательно читал, т.к. то, что я не видел там слово memory и типа по твоему кукретингу следует, что он там есть. Но его нет - я доказал это.

NishiragiShintaro ()
Ответ на: комментарий от MyTrooName

я и говорю, цепляешься к словам. я уже пояснил, почему в контексте IT это одно и то же. не знаю, как еще понятнее можно

Пруфы, убогий.

ты про «impervious to bugs like Heartbleed and buffer overflows»? нет, тут трактовка на 100% прямая

Трепло нелепое. Тут написано «абсолютно», но в коде есть unsafe, а значит никакого абсолютно быть не может. Ты обосрался. Опять.

NishiragiShintaro ()
Ответ на: комментарий от NishiragiShintaro

Т.е. было два аргумента

это тоже не аргументы.

Ты просто уверяешь, что моя трактовка неверная, а твоя верная

это не трактовка, это термин. он не может быть верный или неверный. я уверяю, что твоё определение бессмысленное, а мое осмысленное.

что я «неправильно трактовал» методичку, а именно невнимательно читал

опять к словам цепляешься. кажется, у меня уже возникала раньше идея разговаривать с тобой на С, вместо русского. но боюсь, случится UB

MyTrooName ★★★★★ ()
Последнее исправление: MyTrooName (всего исправлений: 1)
Ответ на: комментарий от MyTrooName

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

Опять врёт трепло. «мы» - секта состоящая из всяких убогих маргинальных элементов. Очевидно, что ты не являешься никем и ничем в этом мире, как и твоё божество.

Тут ты пытаешься делать вид, что ты какой-то важный, либо ты чего-то стоящий и что я вот такой один против вас, абсолюта, борюсь. Нет, я борюсь с бездарностями в интернете. А какая именно у этой бездарности секта - мне как-то насрать. В любом случае - маргинальное говно.

NishiragiShintaro ()
Ответ на: комментарий от MyTrooName

это тоже не аргументы.

Это аргументы.

это не трактовка, это термин. он не может быть верный или неверный. я уверяю, что твоё определение бессмысленное, а мое осмысленное.

Это не термин, а трактовка. Он может быть верным или неверным. Я утверждаю, что твоя трактовка бессмысленная, а моя осмысленная.

опять к словам цепляешься. кажется, у меня уже возникала раньше идея разговаривать с тобой на С, вместо русского. но боюсь, случится UB

Я не цепляюсь к словам.

NishiragiShintaro ()