Как стать автором
Обновить
20
0
Евгений Капун @eatmore

Пользователь

Отправить сообщение

Ненормальная криптография, или как я проверял подписи Ed25519 на Solidity

Время на прочтение13 мин
Количество просмотров5.5K

Когда пишут о том, как разрабатывать безопасные приложения, один из частых советов звучит так: не пишите криптографию самостоятельно, а используйте какую-нибудь проверенную библиотеку. К сожалению, при разработке блокчейнов этот совет часто не работает: нужные алгоритмы либо не реализованы вовсе, либо существующие реализации не годятся по множеству возможных причин — даже потому, что они недостаточно безопасны. Вот и в этом случае нужно было проверять подписи, использующие Ed25519 — весьма популярный тип подписей, для которого существует множество реализаций, ни одна из которых, однако, нам не подошла. А всё потому, что проверка должна была выполняться из смарт-контракта, работающего на блокчейне Ethereum.

Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

В Google Chrome для iOS появилась функция сжатия трафика

Время на прочтение1 мин
Количество просмотров15K
Немногие знают, что у Google есть сервис, аналогичный Opera Turbo: прокси-сервер, сжимающий данные, передаваемые браузеру, с целью уменьшения потенциально дорогостоящего мобильного трафика. Поддержка этой функции в Chrome для Android появилась несколько месяцев назад, а сейчас пришло время и Chrome для iOS. Google утверждает, что SSL-трафик и трафик в режиме инкогнито передаётся напрямую, без сжатия.
Читать дальше →
Всего голосов 18: ↑14 и ↓4+10
Комментарии25

Слабые ссылки в различных языках программирования

Время на прочтение6 мин
Количество просмотров38K
В языках с автоматическим управлением памятью сборщик мусора удаляет объекты, когда они перестают быть доступными по ссылкам. Обычно это именно то, что нужно: объект существует, пока есть возможность к нему обратиться.
Иногда такое поведение не подходит. Например, программе понадобилось хранить некоторую вспомогательную информацию об экземплярах некоторого класса, но у вас нет возможности добавить в этот класс своё поле. В этом случае можно создать отображение, в котором ключом будет объект, а значением — вспомогательная информация.
Вот тут-то и начинаются проблемы. Поскольку отображение хранит ссылки на ключи, те объекты, к которым была привязана вспомогательная информация, перестают освобождаться из памяти. Если программа в процессе своей работы создаёт много объектов, память рано или поздно заканчивается.
Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии8

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность