Это необязательно — в смарткарту (а симка — это смарткарта) можно внедрить специальную информацию, такую, как биометрические данные и данные паспорта. Тогда госструктурам не потребуется получать доступ к информации оператора связи. Пример — билет "тройка" на SIM-карте — там метрополитен не имеет доступа к данным оператора и обратное тоже верно.
На роуминг не повлияет — в роуминге абонент регистрируется в сети с помощью AuC своего оператора. А на шифрование радиочасти инициатива не влияет (пришлось бы прошивки всех телефонов менять).
Описанный вариант хорош при использовании стримообразного программирования, при наличии методов map и forEach он органично вписывается в поток. А исключения туда сложнее вписывать (предполагаю, такова задумка авторов Stream API).
А абстрактный дженерик класс это не перебор? Как-то мне это глаз резануло и в реализации автора статьи. Вроде бы это два разных механизма обеспечения абстракции и интуиция шепчет мне «не смешивай». Но, я не профи, может и врет интуиция.
PS: прямо как с алкоголем
В смысле, там каждый APDU шифруется и/или подписывается? Понятно, что финансовых операций не совершим, но выбрать/прочитать какие-то файлы можно (если знать об их существовании)? Или там общение происходит "инвелопами", типа как OTA в телекоме?
С банковскими картами я незнаком, но предполагаю, что часть команд ISO 7816-4 должна поддерживаться (хотя бы SELECT, GET RESPONSE, READ BINARY, READ RECORD). Команды, думаю, стандартные, но стандарты там свои.
Схема там, судя по интернетам, обычная для UICC — выбираем приложение по AID и вперед.
AID для Visa и MC известны.
Про Clojure полностью разделяю мнение автора, а про Python нет. Сам был в похожей ситуации, когда «вкусил ФП». Тоже вдохновился и начал выдавать подобные штуки: list(map(filterfalse(и т.д.))) — мне казалось, что так красивее и читабельнее. Однако, через пол-годика — годик, когда стал снова копаться в своем коде «функционального периода», я уже был совсем недоволен своими синтаксическими эквилибрами (ведь встроенной композиции в языке нет, а лепить свою или тащить внешние зависимости я даже под эйфорией не хотел).
В итоге все вернул на круги своя: пайтону — пайтоново. Конечно, самое дельное из ФП, вроде избегания глобального состояния, чистые функции, маленькие функции с говорящими именами и т.п. я оставил при себе и использую в Python.
А если хочется ФП и есть возможность — я беру в руки Clojure, программировать на нем не меньшее удовольствие, чем на Python (как будто пазлы разгадываешь).
Вероятно для того, чтобы создать самодокументированный код (к чему очень стимулирует, хотя бы, clojure). Типа вместо filter(много параметров), который затрудняет чтение кода, мы, сначала определяем filter_none() и потом его используем как предикат. Читающему глазу уже становится легче.
В упомянутом документе с описаниями сценариев было сказано, что для осуществления всех этих атак нужна одна малость — подключение к сети оператора. Причем не такое, какое можно получить легально (будучи, к примеру, контент-провайдером). Оно прямо у вас было на этом тесте? Если да, то получено легально, по договоренности с оператором? В моем понимании это основополагающий момент для всей публикации.
Так это не таксисты жалуются (ибо в я.такси и гетте тоже таксисты работают, не знаю, как в юбер), а жалуются владельцы таксопарков или «другие аггрегаторы», которые не так популярны или ведут бизнес по устаревшей модели. Т.е. видим жалобы менее успешных конкурентов на более успешных.
Это необязательно — в смарткарту (а симка — это смарткарта) можно внедрить специальную информацию, такую, как биометрические данные и данные паспорта. Тогда госструктурам не потребуется получать доступ к информации оператора связи. Пример — билет "тройка" на SIM-карте — там метрополитен не имеет доступа к данным оператора и обратное тоже верно.
Интересно, видел ли кто живьем HSM "от НСК + ИТМиВТ" в виде продуктивного образца…
Вот Жемальтовский — хотя бы на фотке виден (см. выше).
Просто излюбленная стилистика журналистики и PR. Их, как бы, ДНК.
Здравомыслящие люди всегда понимают, что «серебряной пули» нет.
На роуминг не повлияет — в роуминге абонент регистрируется в сети с помощью AuC своего оператора. А на шифрование радиочасти инициатива не влияет (пришлось бы прошивки всех телефонов менять).
Описанный вариант хорош при использовании стримообразного программирования, при наличии методов
mapиforEachон органично вписывается в поток. А исключения туда сложнее вписывать (предполагаю, такова задумка авторов Stream API).А абстрактный дженерик класс это не перебор? Как-то мне это глаз резануло и в реализации автора статьи. Вроде бы это два разных механизма обеспечения абстракции и интуиция шепчет мне «не смешивай». Но, я не профи, может и врет интуиция.
PS: прямо как с алкоголем
Я, в свое время, набросал вот такое (буду благодарен за конструктивную критику, т.к. решено чуть иначе):
В смысле, там каждый APDU шифруется и/или подписывается? Понятно, что финансовых операций не совершим, но выбрать/прочитать какие-то файлы можно (если знать об их существовании)? Или там общение происходит "инвелопами", типа как OTA в телекоме?
С банковскими картами я незнаком, но предполагаю, что часть команд ISO 7816-4 должна поддерживаться (хотя бы SELECT, GET RESPONSE, READ BINARY, READ RECORD). Команды, думаю, стандартные, но стандарты там свои.
Схема там, судя по интернетам, обычная для UICC — выбираем приложение по AID и вперед.
AID для Visa и MC известны.
Во второй части будут только несколько разных APDU. Остальное есть в указанных в начале стандартах.
Del
Про Clojure полностью разделяю мнение автора, а про Python нет. Сам был в похожей ситуации, когда «вкусил ФП». Тоже вдохновился и начал выдавать подобные штуки:
list(map(filterfalse(и т.д.)))— мне казалось, что так красивее и читабельнее. Однако, через пол-годика — годик, когда стал снова копаться в своем коде «функционального периода», я уже был совсем недоволен своими синтаксическими эквилибрами (ведь встроенной композиции в языке нет, а лепить свою или тащить внешние зависимости я даже под эйфорией не хотел).В итоге все вернул на круги своя: пайтону — пайтоново. Конечно, самое дельное из ФП, вроде избегания глобального состояния, чистые функции, маленькие функции с говорящими именами и т.п. я оставил при себе и использую в Python.
А если хочется ФП и есть возможность — я беру в руки Clojure, программировать на нем не меньшее удовольствие, чем на Python (как будто пазлы разгадываешь).
Вероятно для того, чтобы создать самодокументированный код (к чему очень стимулирует, хотя бы, clojure). Типа вместо
filter(много параметров), который затрудняет чтение кода, мы, сначала определяемfilter_none()и потом его используем как предикат. Читающему глазу уже становится легче.Это оговорка/шутка или климат на Сахалине настолько суров?
По крайней мере под Win собирает отличные инсталляторы (именно, которые инсталлируют ваш питоновский собранный exe)