Kali Linux (ru)
Ir al canal en Telegram
Взломы, вирусописательство и борьба со зверками, криптография, информационная безопасность. Для получения возможности писать вобсуждениях введите пароль h3V1PFK8
Mostrar más9 039
Suscriptores
+224 horas
+97 días
-830 días
Carga de datos en curso...
Canales Similares
Nube de Etiquetas
Menciones Entrantes y Salientes
---
---
---
---
---
---
Atraer Suscriptores
septiembre '26
septiembre '26
+22
en 0 canales
agosto '26
+67
en 0 canales
Get PRO
julio '26
+57
en 0 canales
Get PRO
junio '26
+69
en 0 canales
Get PRO
mayo '26
+51
en 0 canales
Get PRO
abril '26
+61
en 0 canales
Get PRO
marzo '26
+72
en 0 canales
Get PRO
febrero '26
+108
en 0 canales
Get PRO
enero '26
+139
en 0 canales
Get PRO
diciembre '25
+148
en 0 canales
Get PRO
noviembre '25
+127
en 0 canales
Get PRO
octubre '25
+194
en 0 canales
Get PRO
septiembre '25
+222
en 0 canales
Get PRO
agosto '25
+222
en 0 canales
Get PRO
julio '25
+205
en 0 canales
Get PRO
junio '25
+179
en 0 canales
Get PRO
mayo '25
+107
en 0 canales
Get PRO
abril '25
+132
en 0 canales
Get PRO
marzo '25
+126
en 0 canales
Get PRO
febrero '25
+167
en 0 canales
Get PRO
enero '25
+161
en 0 canales
Get PRO
diciembre '24
+157
en 0 canales
Get PRO
noviembre '24
+161
en 0 canales
Get PRO
octubre '24
+302
en 1 canales
Get PRO
septiembre '24
+127
en 0 canales
Get PRO
agosto '24
+121
en 0 canales
Get PRO
julio '24
+120
en 0 canales
Get PRO
junio '24
+80
en 0 canales
Get PRO
mayo '24
+78
en 0 canales
Get PRO
abril '24
+109
en 0 canales
Get PRO
marzo '24
+121
en 0 canales
Get PRO
febrero '24
+123
en 0 canales
Get PRO
enero '24
+120
en 0 canales
Get PRO
diciembre '23
+120
en 0 canales
Get PRO
noviembre '23
+121
en 0 canales
Get PRO
octubre '23
+158
en 0 canales
Get PRO
septiembre '23
+152
en 0 canales
Get PRO
agosto '23
+145
en 0 canales
Get PRO
julio '23
+133
en 0 canales
Get PRO
junio '23
+103
en 0 canales
Get PRO
mayo '23
+152
en 0 canales
Get PRO
abril '23
+116
en 0 canales
Get PRO
marzo '23
+158
en 0 canales
Get PRO
febrero '23
+180
en 0 canales
Get PRO
enero '23
+132
en 0 canales
Get PRO
diciembre '22
+152
en 0 canales
Get PRO
noviembre '22
+198
en 0 canales
Get PRO
octubre '22
+183
en 0 canales
Get PRO
septiembre '22
+152
en 0 canales
Get PRO
agosto '22
+117
en 0 canales
Get PRO
julio '22
+164
en 0 canales
Get PRO
junio '22
+165
en 0 canales
Get PRO
mayo '22
+200
en 0 canales
Get PRO
abril '22
+302
en 0 canales
Get PRO
marzo '22
+387
en 0 canales
Get PRO
febrero '22
+149
en 0 canales
Get PRO
enero '22
+260
en 0 canales
Get PRO
diciembre '21
+252
en 0 canales
Get PRO
noviembre '21
+179
en 0 canales
Get PRO
octubre '21
+273
en 0 canales
Get PRO
septiembre '21
+207
en 0 canales
Get PRO
agosto '21
+234
en 0 canales
Get PRO
julio '21
+236
en 0 canales
Get PRO
junio '21
+219
en 0 canales
Get PRO
mayo '21
+180
en 0 canales
Get PRO
abril '21
+294
en 0 canales
Get PRO
marzo '21
+295
en 0 canales
Get PRO
febrero '21
+301
en 0 canales
Get PRO
enero '21
+337
en 0 canales
Get PRO
diciembre '20
+6 510
en 0 canales
| Fecha | Crecimiento de Suscriptores | Menciones | Canales | |
| 06 septiembre | 0 | |||
| 05 septiembre | +4 | |||
| 04 septiembre | +6 | |||
| 03 septiembre | +4 | |||
| 02 septiembre | +2 | |||
| 01 septiembre | +6 |
Publicaciones del Canal
Оптимизация кода с помощью генераторов в 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 | 728 |
| 3 | +9 amnezia-client-5.0.1.5.tar.gz | 731 |
| 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 будет очень интересным обновлением именно для производительности. | 921 |
| 5 | https://habr.com/p/1073200/ | 1 102 |
| 6 | https://mobaxterm.mobatek.net/ | 1 168 |
| 7 | Sin texto... | 1 117 |
| 8 | Как работает HTTPS?
Безопасный протокол передачи гипертекста
(HTTPS) - это расширение протокола передачи гипертекста (HTTP). HTTPS передает зашифрованные данные с использованием транспортного уровня безопасности (TLS). Если данные будут перехвачены в Интернете, все, что получит угонщик, - это двоичный код.
Как шифруются и дешифруются данные?
Шаг 1 - Клиент (браузер) и сервер устанавливают TCP-соединение.
Шаг 2 - Клиент отправляет серверу " client hello". Сообщение содержит набор необходимых алгоритмов шифрования (наборов шифров) и последнюю версию TLS, которую он может поддерживать. Сервер отвечает " server hello", чтобы браузер знал, может ли он поддерживать алгоритмы и версию TLS.
Затем сервер отправляет SSL-сертификат клиенту. Сертификат содержит открытый ключ, имя хоста, дату истечения срока действия и т. д. Клиент проверяет сертификат.
Шаг 3. После проверки SSL-сертификата клиент генерирует ключ сессии и шифрует его с помощью открытого ключа. Сервер получает зашифрованный ключ сеанса и расшифровывает его с помощью закрытого ключа.
Шаг 4 - Теперь, когда клиент и сервер владеют одним и тем же сеансовым ключом (симметричное шифрование), зашифрованные данные передаются по защищенному двунаправленному каналу.
Почему HTTPS переключается на симметричное шифрование при передаче данных? Есть две основные причины:
1. Безопасность: Асимметричное шифрование работает только в одну сторону. Это означает, что если сервер попытается отправить зашифрованные данные обратно клиенту, любой сможет расшифровать их с помощью открытого ключа.
2. Ресурсы сервера: Асимметричное шифрование добавляет довольно много математических накладных расходов. Оно не подходит для передачи данных в длительных сессиях. | 967 |
| 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 | 911 |
| 10 | https://habr.com/ru/posts/1070812/ | 1 209 |
| 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 |
