Записки разработчицы
1.89K subscribers
384 photos
24 videos
4 files
1.09K links
Разговоры об IT, о разработке. О мобилках нативных и кроссплатформенных.
Личный аккаунт @azharkova
Download Telegram
Forwarded from paradiSEcurity (paradiSEcurityPub)
Все любят SSL-пиннинг. Или нет?

Наверно, каждый Android-разработчик знает, что такое SSL-пиннинг. Но для новеньких, я все таки сделаю небольшую сноску:

По-умолчанию, устанавливая SSL соединение по протоколу HTTPS, клиент проверяет сертификат сервера по двум пунктам:

⚡️ Что цепочку SSL сертификата можно проследить от Вашего личного SSL сертификата через промежуточные и до корневого сертификата доверенного центра сертификации

⚡️ Что Ваш SSL сертификат соответствует запрошенному имени хоста

Лично я сталкивалась с этой задачей о-очень часто, тк работаю в специфической сфере и поддерживаю безопасность мобильных приложений. Данный вид защиты необходим для того чтобы бороться с распространенным видом атаки на ваше приложение, которая называется MITM (Man in the middle), она направлена на «прослушку» или изменение трафика между двумя узлами (клиентом и сервером). Другими словами, когда клиент подключается к серверу, он на самом деле имеет дело с хакером, и наоборот.

Способы реализации SSL-пиннинга в Android

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

🔥 С помощью TrustManager

🔥 Network Security Configuration

🔥 OkHttp и CertificatePinner

🔥 Pinning c Retrofit (Настроить так же просто, как и OkHttpClient, тк Retrofit – это фактически надстройка поверх OkHttp)

Все это, конечно, замечательно, но не стоит забывать и о минусах

Например, допустимость внесения изменений снижается. После внедрения SSL-сертификата в код приложения, изменить его уже не так просто. Каждый раз изменяя SSL-сертификат, вам нужно будет выпускать обновление приложения, запускать его на Google Play и молиться, что пользователи его установят. Собственно, поэтому многие отказываются от этого вида защиты. Так что изначально учитывайте специфику вашего приложения и процессов разработки. Выход из этой ситуации – заказать SSL-сертификат на максимальный срок действия в три года, тогда вам не придется делать это слишком часто.
Будем делать интересно. Это вам не конструкторы для сэндвичей из авокадо пилить😉
Существуют разные инструменты для создания декларативных UI, поэтому мы решили отвести под эту тему целый день.

12 ноября на Mobius 2020 Moscow пройдет три лайвкодинг-сессии от трех спецов по разным фреймворков. Антон Шилов из Badoo будет писать на Jetpack Compose, Светлана Кривошеева из Effective — на Flutter, а Анна Жаркова из Usetech — на SwiftUI.
А после этого все трое придут на круглый стол к Петру Козлову, где они будут сравнивать фреймворки, делиться впечатлением от лайвкодинга и обсуждать, как решаются те или иные задачи с помощью разных фреймворков.

Заходите на сайт за подробностями и билетами.
Перейти на сайт
Сегодня стартует Mobius, и нас ждет 4 дня увлекательных и интересных докладов, воркшопов и лайвкодинга. Интересно будет и зрителям, и нам, выступающим.
Но не все события IT в онлайне этой осенью серьезные и хардкоровые. 20 ноября пройдет развлекательная ITNitght от Innopolis:
https://it-nights.ru/schedule
5 часов в несовсем обычном формате. Обещают юмор, нескучно и Баруха Садогурского
Итак, марафон конференций на этот год закончился, и чтобы не превратиться совсем в обозревателя митапов, хочу написать пару статеек на Хабр.
Что ж, кому-то, видимо, интересна именно инфо про конференции.
Конференции бывают 1-2 раза в год, а вот митапы регулярны. Очень скоро Mobifest проведут очень интересный android митап
Уже в эту среду состоится MobiFest Android Meetup 💥
☝️В программе:
- Севастьян Жуков, Android-разработчик, ЦФТ «Rebase Queue. Экспресс-доставка пул реквестов»
- Денис Александров, Leading software Engineer, Arcadia «Coroutines 1.4 в Android практике»
- Дмитрий Пермяков, Android-разработчик, Revolut «Декларативный UI на Android уже сегодня»
❗️Самое время зарегистрироваться: https://team.cft.ru/events/187
Встречаемся 18 ноября в 19:00 по новосибирскому времени
Обе топовые темы. Даже если вы iOS разработчик, тема корутин будет вам полезна, если вы захотите попробовать кросс-платформу Kotlin multiplatform.
#apple Недавно прошла очередная в этом году презентация компании Apple, на которой продемонстрировали большую новинку Mac OS Big Sur. По уже сложившейся в последний год традиции, новинка, по-видимому, на обратную совместимость с прежними выпусками техники проверена не была:

https://habr.com/ru/news/t/528172/

Особенно нравится мне лайфхак от страждущих пользователей:
"Также пользователи предупредили, что просто отключение I/O Board позволит загрузится ноутбуку, но в нем не будет работать WiFi, Bluetooth, правый порт USB, устройства чтения SD-карт и порт HDMI. Если заранее перед установкой macOS Big Sur отключить плату ввода вывода, установить macOS Big Sur, а потом подключить плату обратно, то новая операционная система будет загружаться и работать без проблем и у ноутбука не будет повреждений."

Вероятно (я так думаю), что на новых Mac, работающих на ARM, такой проблемы не возникло. Но кто может за это поручиться.

Так что, если вы сомневаетесь, обновляться или нет, не спешите.
В принципе, если вы не планировали срочно-срочно начинать писать на SwiftUI мультиплатформенные приложения, включая Mac OS, то для вас это обновление действительно может подождать
Совсем скоро пройдет очередной открытый урок Otus. Ексей Пантелеев покажет и расскажет про внедрение Combine и SwiftUI в существующие проекты iOS. Это будет полезно и интересно всем, даже тем, у кого есть свой способ интеграции и адаптации существующих проектов 😉
⚡️ Combine до iOS 13 и как добавить SwiftUI 2.0 в любое приложение

23 ноября
на открытом уроке с Ексеем Пантелеевым вы:

• рассмотрите мультиплатформенное использование Combine
• узнаете, как перейти на декларативный UI без повышения минимальной версии приложения до iOS 13 и бесшовно добавить поддержку SwiftUI 2.0 в приложение.

Для регистрации на вебинар необходимо пройти тестирование: https://otus.pw/2Q0p/
А прямо сейчас на MobiFest очень интересный доклад про корутины. Рекомендую 👍
Вадим Булавин опубликовал в своем twitter схему life-cycle приложения на SwiftUI
Особенно интересен кейс обновления в состоянии до построения body. Body у вас строится в момент отображения на экране после перехода на экран (как ViewDidLoad) или изменения свойства PropertyWrappers.
Если не хотите проблем с логикой, которая связана с вашим UI, не вызывайте ее на этом этапе
Не даром говорят, что в это время одна из ежегодных волн движения IT-специалистов.
Forwarded from Android Broadcast
​​Roman Elizarov is the new Project Lead for Kotlin

Роман Елизаров возглавит проект Kotlin. Но для меня новость одновременно и грустная - Андрей Бреслав после 10 лет работы над Kotlin уходит из команды.

Kotlin остается в надежных руках. Мне выдалась возможность пообщаться с Романом лично на Kotlin Conf'19, и я был в восторге! Роман это человек, который возглавлял Coroutine в Kotlin и подарил уже много прекрасных вещей в нем.

Андрей от всей команды Android Broadcast большое спасибо вам за язык, который подарили нам. Вы в нашем ❤️ навсегда!