Публикации о языке Python

Криптография простым языком: разбираем симметричное и асимметричное шифрование на примере сюжета Звездных войн

Привет всем читателям Хабра! Не так давно решил разобраться с алгоритмами шифрования и принципами работы электронной подписи. Тема, я считаю, интересная и актуальная. В процессе изучения попробовал несколько библиотек, однако самой удобной с моей точки зрения является библиотека PyCrypto. У неё прекрасная документация, сопровождаемая примерами.



После прочтения материала вы усвоите следующие моменты:

  1. Что такое шифрование;
  2. Чем отличается симметричное шифрование от асимметричного;
  3. В каком случае эффективнее применять симметричное, а в каких асимметричное шифрование;
  4. Что такое хеш данных и для чего он используется в шифровании;


Актуальность рассматриваемой темы постоянно растет. Применение криптографии уже давно не ограничивается шифрованием информации.



Python-digest #282. Новости, интересные проекты, статьи и интервью [13 мая 2019 — 19 мая 2019]

Добавляйте свои новости через специальную форму. Следите за всем этим безобразием в RSS, Twitter или Telegram @py_digest



Поддержите проект рублем или руками




Бот для VK на Python с MySQL за час ч.2

Предисловие


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

Подготовка


После прошлой статьи на руках мы должны иметь такой код:
import vk_api
from vk_api.utils import get_random_id
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
import pymysql.cursors
import requests

def getConnection():
    connection = pymysql.connect(host='you_host',
                                 user='you_user',
                                 password='you_password',
                                 db='you_db'
                                 charset='utf8mb4',
                                 cursorclass=pymysql.cursors.DictCursor)
    return connection

Читать



Предварительная программа PyConRu-2019: два Python Core Developer’а, докладчики из Anaconda, Intel, JetBrains, Яндекса

Привет, Хабр!

24-25 июня в 95 км от Москвы пройдет седьмая российская конференция для python-программистов PYCON RUSSIA 2019.

Уже в программе: Raymond Hettinger (Python core developer, США), Michael Foord (Python core developer, Англия), Travis Oliphant (автор SciPy, NumPy, Anaconda, США), Antonio Cuni (PyPy core developer, Италия), Григорий Бакунов (Яндекс), Андрей Власовских (JetBrains), Кирилл Борисов (Booking.com), Вадим Пуштаев (Mail.Ru Group), Александр Хаёров (Chainstack), Иван Цыганов (Positive Technologies), Алексей Кузьмин (ДомКлик), Злата Обуховская (евангелист Moscow Python), Василий Литвинов (Intel). И это только предварительная программа.

Под катом — подробности программы.
Читать дальше →




[Перевод] Реверс-инжиниринг клиента Dropbox

TL;DR. В статье рассказывается об обратной разработке клиента Dropbox, взломе механизмов обфускации и декомпиляции клиента на Python, а также изменении программы для активации функций отладки, которые скрыты в обычном режиме. Если вас интересует только соответствующий код и инструкции, пролистайте до конца. На момент написания статьи код совместим с последними версиями Dropbox, основанными на интерпретаторе CPython 3.6.

Введение


Dropbox очаровал меня сразу с момента своего появления. Концепция по-прежнему обманчиво проста. Вот папка. Кладёшь туда файлы. Он синхронизируется. Переходишь к другому устройству. Он опять синхронизируется. Папка и файлы теперь появились и там!

Объём скрытой фоновой работы на самом деле поражает. Во-первых, никуда не исчезают все проблемы, с которыми приходится иметь дело при создании и обслуживании кросс-платформенного приложения для основных десктопных операционных систем (OS X, Linux, Windows). Добавьте к этому под



GOSTIM: P2P F2F E2EE IM за один вечер с ГОСТ-криптографией

Будучи разработчиком PyGOST библиотеки (ГОСТовые криптографические примитивы на чистом Python), мне нередко задают вопросы о том как на коленке реализовать простейший безопасный обмен сообщениями. Многие считают прикладную криптографию достаточно простой штукой, и .encrypt() вызова у блочного шифра будет достаточно для безопасной отсылки по каналу связи. Другие же считают, что прикладная криптография — удел немногих, и приемлемо, что богатые компании типа Telegram с олимпиадниками-математиками не могут реализовать безопасный протокол.

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




[Из песочницы] Бот для VK на Python с MySQL за час ч.1

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

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

Итак начнем.

Что нам понадобится?


Python начиная с версии 2.7. Весь код тестировался на версии 2.7.16 и 3.7.3.
Модуль PyMySQL.
Модуль vk_api.
Модуль requests
Группа Вконтакте. Внимание! Бот будет работать именно со стороны группы, а не стороны аккаунта человека.
База данных(включая данные о пользователе и т.д)

Подключение


Для начала подключим все библиотеки:

import vk_api
from vk_api.utils import get_random_id
from from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
import pymysql.cursors
import requests



[Перевод] Python — помощник в поиске недорогих авиабилетов для тех, кто любит путешествовать

Автор статьи, перевод которой мы публикуем сегодня, говорит, что её цель — рассказать о разработке веб-скрапера на Python с использованием Selenium, который выполняет поиск цен на авиабилеты. При поиске билетов используются гибкие даты (+- 3 дня относительно указанных дат). Скрапер сохраняет результаты поиска в Excel-файле и отправляет тому, кто его запустил, электронное письмо с общими сведениями о том, что ему удалось найти. Задача этого проекта — помощь путешественникам в поиске наиболее выгодных предложений.



Если вы, разбираясь с материалом, почувствуете, что потерялись — взгляните на эту статью.
Читать дальше →




[Перевод] Глубокая нейронная сеть MuseNet пишет музыку

У нас 29 мая стартует курс «Нейронные сети на Python», который рассказывает о глубоком машинном обучении и учит решать самые сложные задачи, находящиеся в ведении инженера по глубокому обучению. Чтобы показать, насколько интересна и многогранна работа в сфере машинного обучения, предлагаем ознакомиться с серией переводов статей на тему нейронных сетей на Python.



Что такое MuseNet


Мы создали и представляем вам MuseNet — глубокую нейронную сеть, которая может создавать четырехминутные музыкальные композиции с помощью десяти разных инструментов. MuseNet экспериментирует, сочетая разные музыкальные стили: от кантри до шедевров Моцарта и бессмертных хитов The Beatles.

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



Python-digest #281. Новости, интересные проекты, статьи и интервью [6 мая 2019 — 12 мая 2019]

Добавляйте свои новости через специальную форму. Следите за всем этим безобразием в RSS, Twitter или Telegram @py_digest



Поддержите проект рублем или руками