Kali Linux (ru)
رفتن به کانال در Telegram
Взломы, вирусописательство и борьба со зверками, криптография, информационная безопасность. Для получения возможности писать вобсуждениях введите пароль h3V1PFK8
نمایش بیشتر9 033
مشترکین
+424 ساعت
-27 روز
-1430 روز
در حال بارگیری داده...
کانالهای مشابه
ابر برچسبها
اشارات ورودی و خروجی
---
---
---
---
---
---
جذب مشترکین
سپتامبر '26
سپتامبر '26
+13
در 0 کانالها
اوت '26
+67
در 0 کانالها
Get PRO
ژوئیه '26
+57
در 0 کانالها
Get PRO
ژوئن '26
+69
در 0 کانالها
Get PRO
مه '26
+51
در 0 کانالها
Get PRO
آوریل '26
+61
در 0 کانالها
Get PRO
مارس '26
+72
در 0 کانالها
Get PRO
فوریه '26
+108
در 0 کانالها
Get PRO
ژانویه '26
+139
در 0 کانالها
Get PRO
دسامبر '25
+148
در 0 کانالها
Get PRO
نوامبر '25
+127
در 0 کانالها
Get PRO
اکتبر '25
+194
در 0 کانالها
Get PRO
سپتامبر '25
+222
در 0 کانالها
Get PRO
اوت '25
+222
در 0 کانالها
Get PRO
ژوئیه '25
+205
در 0 کانالها
Get PRO
ژوئن '25
+179
در 0 کانالها
Get PRO
مه '25
+107
در 0 کانالها
Get PRO
آوریل '25
+132
در 0 کانالها
Get PRO
مارس '25
+126
در 0 کانالها
Get PRO
فوریه '25
+167
در 0 کانالها
Get PRO
ژانویه '25
+161
در 0 کانالها
Get PRO
دسامبر '24
+157
در 0 کانالها
Get PRO
نوامبر '24
+161
در 0 کانالها
Get PRO
اکتبر '24
+302
در 1 کانالها
Get PRO
سپتامبر '24
+127
در 0 کانالها
Get PRO
اوت '24
+121
در 0 کانالها
Get PRO
ژوئیه '24
+120
در 0 کانالها
Get PRO
ژوئن '24
+80
در 0 کانالها
Get PRO
مه '24
+78
در 0 کانالها
Get PRO
آوریل '24
+109
در 0 کانالها
Get PRO
مارس '24
+121
در 0 کانالها
Get PRO
فوریه '24
+123
در 0 کانالها
Get PRO
ژانویه '24
+120
در 0 کانالها
Get PRO
دسامبر '23
+120
در 0 کانالها
Get PRO
نوامبر '23
+121
در 0 کانالها
Get PRO
اکتبر '23
+158
در 0 کانالها
Get PRO
سپتامبر '23
+152
در 0 کانالها
Get PRO
اوت '23
+145
در 0 کانالها
Get PRO
ژوئیه '23
+133
در 0 کانالها
Get PRO
ژوئن '23
+103
در 0 کانالها
Get PRO
مه '23
+152
در 0 کانالها
Get PRO
آوریل '23
+116
در 0 کانالها
Get PRO
مارس '23
+158
در 0 کانالها
Get PRO
فوریه '23
+180
در 0 کانالها
Get PRO
ژانویه '23
+132
در 0 کانالها
Get PRO
دسامبر '22
+152
در 0 کانالها
Get PRO
نوامبر '22
+198
در 0 کانالها
Get PRO
اکتبر '22
+183
در 0 کانالها
Get PRO
سپتامبر '22
+152
در 0 کانالها
Get PRO
اوت '22
+117
در 0 کانالها
Get PRO
ژوئیه '22
+164
در 0 کانالها
Get PRO
ژوئن '22
+165
در 0 کانالها
Get PRO
مه '22
+200
در 0 کانالها
Get PRO
آوریل '22
+302
در 0 کانالها
Get PRO
مارس '22
+387
در 0 کانالها
Get PRO
فوریه '22
+149
در 0 کانالها
Get PRO
ژانویه '22
+260
در 0 کانالها
Get PRO
دسامبر '21
+252
در 0 کانالها
Get PRO
نوامبر '21
+179
در 0 کانالها
Get PRO
اکتبر '21
+273
در 0 کانالها
Get PRO
سپتامبر '21
+207
در 0 کانالها
Get PRO
اوت '21
+234
در 0 کانالها
Get PRO
ژوئیه '21
+236
در 0 کانالها
Get PRO
ژوئن '21
+219
در 0 کانالها
Get PRO
مه '21
+180
در 0 کانالها
Get PRO
آوریل '21
+294
در 0 کانالها
Get PRO
مارس '21
+295
در 0 کانالها
Get PRO
فوریه '21
+301
در 0 کانالها
Get PRO
ژانویه '21
+337
در 0 کانالها
Get PRO
دسامبر '20
+6 510
در 0 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 04 سپتامبر | +1 | |||
| 03 سپتامبر | +4 | |||
| 02 سپتامبر | +2 | |||
| 01 سپتامبر | +6 |
پستهای کانال
Оптимизация кода с помощью генераторов в Python
Сегодня хочу показать вам, как использование генераторов может сделать ваш код быстрее, экономнее по памяти и элегантнее.
Что такое генераторы?
Генераторы — это функции, которые используют yield вместо return. Они не возвращают сразу все значения, а запоминают своё состояние и отдают результат по мере необходимости. Это особенно полезно при обработке больших объемов данных, так как позволяет не загружать всю информацию в память сразу.
Пример: экономия памяти
Допустим, нам нужно обработать миллион чисел и взять из них только четные. Обычный способ:
def get_even_numbers(n):
result = []
for i in range(n):
if i % 2 == 0:
result.append(i)
return result
numbers = get_even_numbers(10**6)
print(len(numbers)) # 500000
Такой код загружает в память весь список, что может быть проблемой при больших данных.
А теперь переделаем на генератор:
def get_even_numbers_gen(n):
for i in range(n):
if i % 2 == 0:
yield i
numbers = get_even_numbers_gen(10**6)
print(sum(1 for _ in numbers)) # 500000
Здесь список не создается, а элементы выдаются по одному. Это экономит память и ускоряет обработку!
Где применять?
✔ Чтение больших файлов построчно (yield line)
✔ Работа с потоками данных
✔ Генерация последовательностей без создания списков
| 2 | +1 AmneziaVPN_5.0.1.5_macos_x64.pkg | 664 |
| 3 | +9 amnezia-client-5.0.1.5.tar.gz | 670 |
| 4 | 🖥 Linux 7.3 может стать одним из самых производительных релизов ядра за последние годы
Главный упор - не на новые фичи, а на ускорение уже существующего стека.
Btrfs получает прирост в 3–5 раз в отдельных сценариях: logging, fsync, tracking extent buffers и direct I/O. Плюс free-space cache по умолчанию переезжает с v1 на v2.
EXT4 тоже ускоряют: параллельные direct I/O writes, улучшения allocator через fallocate() и рост IOPS на Gen5 NVMe примерно с 1,92 млн до 2,19 млн.
Планировщик переработан ради более ровного frame pacing, особенно на слабом железе.
В памяти тоже есть серьёзные цифры: фиксы contention в zsmalloc дают до 1,83×, а lock time в KSM reverse mapping сокращается с 500+ мс до менее 2 мс.
Для real-time workloads тоже мощный прирост: P99 latency на SMP снижается примерно с 17 мс до 1,5 мс.
А владельцы Intel hybrid CPU — Alder Lake, Lunar Lake и Panther Lake — получают лучшее распределение нагрузки между P-cores и E-cores.
Если всё это дойдёт до стабильного релиза без регрессий, Linux 7.3 будет очень интересным обновлением именно для производительности. | 878 |
| 5 | https://habr.com/p/1073200/ | 1 070 |
| 6 | https://mobaxterm.mobatek.net/ | 1 136 |
| 7 | بدون متن... | 1 087 |
| 8 | Как работает HTTPS?
Безопасный протокол передачи гипертекста
(HTTPS) - это расширение протокола передачи гипертекста (HTTP). HTTPS передает зашифрованные данные с использованием транспортного уровня безопасности (TLS). Если данные будут перехвачены в Интернете, все, что получит угонщик, - это двоичный код.
Как шифруются и дешифруются данные?
Шаг 1 - Клиент (браузер) и сервер устанавливают TCP-соединение.
Шаг 2 - Клиент отправляет серверу " client hello". Сообщение содержит набор необходимых алгоритмов шифрования (наборов шифров) и последнюю версию TLS, которую он может поддерживать. Сервер отвечает " server hello", чтобы браузер знал, может ли он поддерживать алгоритмы и версию TLS.
Затем сервер отправляет SSL-сертификат клиенту. Сертификат содержит открытый ключ, имя хоста, дату истечения срока действия и т. д. Клиент проверяет сертификат.
Шаг 3. После проверки SSL-сертификата клиент генерирует ключ сессии и шифрует его с помощью открытого ключа. Сервер получает зашифрованный ключ сеанса и расшифровывает его с помощью закрытого ключа.
Шаг 4 - Теперь, когда клиент и сервер владеют одним и тем же сеансовым ключом (симметричное шифрование), зашифрованные данные передаются по защищенному двунаправленному каналу.
Почему HTTPS переключается на симметричное шифрование при передаче данных? Есть две основные причины:
1. Безопасность: Асимметричное шифрование работает только в одну сторону. Это означает, что если сервер попытается отправить зашифрованные данные обратно клиенту, любой сможет расшифровать их с помощью открытого ключа.
2. Ресурсы сервера: Асимметричное шифрование добавляет довольно много математических накладных расходов. Оно не подходит для передачи данных в длительных сессиях. | 944 |
| 9 | Иногда вам может понадобиться проверить синтаксис Python-файла без его запуска. Такая простая проверка может быть полезна, например, в качестве хука перед коммитом или быстрой проверки в рамках непрерывной интеграции (CI).
Прямого способа сделать это нет. Вы можете запустить файл с помощью команды python -m module.py, что предотвратит выполнение блока if name == 'main'. Однако все импорты всё равно будут выполнены, и это может привести к ошибкам, если вы хотите проверить синтаксис в среде, где модуль не может и не должен быть запущен.
Тем не менее, стандартная библиотека Python содержит модуль py_compile, который генерирует байт-код из исходного файла Python без его выполнения. Это именно то, что нам нужно:
$ python -m py_compile test.c
File "test.c", line 1
int main() {
^
SyntaxError: invalid syntax | 895 |
| 10 | https://habr.com/ru/posts/1070812/ | 1 194 |
| 11 | В ящике вашего стола лежит сервер, за который вы уже заплатили
Возьмём характеристики не очень старого смартфона: восемь ARM-ядер, 8 ГБ памяти, 128 ГБ флеша, свой модем и аккумулятор, работающий как ИБП без всякого ИБП. За VPS с такими параметрами вы бы платили ежемесячно, а этот уже оплачен и пылится. Особенно обидно сейчас, когда память подорожала и собирать мини-ПК под пет-проекты откровенно невыгодно.
Один разработчик решил пойти по пути осознанного потребления и приспособил свой Android-смартфон под серверные задачи.
В материале (https://seg6.space/posts/phone-server/) он рассказывает:
— как уговорил систему, вся суть которой в засыпании, не спать сутками;
— чем заменил systemd;
— как гоняет обычные Linux-образы без Docker.
Кстати, всё получилось. VPS отключён, а сервисы переехали на телефон.
Кто-нибудь уже пробовал так? | 1 207 |
| 12 | 🌀 upmd превращает обычный Markdown в исполняемый workflow
Можно держать инструкции, команды, зависимости и вывод терминала прямо в одном .md-файле, а code blocks запускать как связанные между собой задачи.
Получается что-то между документацией, task runner и живым dev-ноутбуком без отдельного YAML-конфига.
Проект написан на Rust и построен на Ratatui.
⭐ GitHub: github.com/rezigned/upmd | 1 000 |
| 13 | https://habr.com/p/1070740/ | 950 |
| 14 | https://habr.com/p/1068204/ | 1 425 |
| 15 | https://habr.com/p/1067178/ | 1 377 |
| 16 | +8 amnezia-client-5.0.0.5.tar.gz | 2 101 |
| 17 | https://habr.com/p/1064518/ | 1 663 |
| 18 | https://habr.com/p/1063114/ | 1 523 |
| 19 | NetworkManager 1.58 научился показывать QR-коды и эмулировать IPv4
Разработчики выкатили NetworkManager 1.58.0. В 2026 году индустрия все еще вынуждена городить лютые костыли ради старого протокола IPv4. Новый механизм CLAT позволяет хостам на чистом IPv6 запускать легаси-приложения через виртуальный интерфейс на базе BPF. Пакеты на лету заворачиваются в новый формат и летят на шлюз NAT64. До кучи в релиз завезли поддержку туннелей GENEVE для построения виртуальных сетей поверх физических, чтобы сисадминам было еще проще запутаться в собственной маршрутизации.
Но настоящий прорыв случился в текстовом конфигураторе nmtui. Спустя десятилетия развития консольных интерфейсов там наконец-то появилась кнопка Select для выбора сетевой карты из списка. В меню добавили поиск в стиле текстового редактора vim и кнопку для повторного сканирования беспроводных сетей. А главным киберпанком стала возможность вывести пароль от Wi-Fi в виде огромного пиксельного QR-кода прямо в окно терминала. Также авторы окончательно закопали древний бэкенд dhclient и вырезали поддержку устаревшего API Wext. | 1 482 |
| 20 | https://habr.com/ru/companies/cloud4y/articles/712640/ | 1 196 |
