unicode

  • Хабрахабр

    Взлом с помощью Юникода (на примере GitHub)

    Юникод исключительно сложен. Мало кто знает все хитрости: от невидимых символов и контрольных знаков до суррогатных пар и комбинированных эмодзи (когда при сложении двух знаков получается третий). Стандарт включает 216 кодовых позиций в 17-ти плоскостях. По сути, изучение Юникода можно сравнить с изучением отдельного языка программирования. С другой стороны, злоумышленники могут использовать особенности Юникода в своих целях, что и делают.…

    Подробнее »
  • Хабрахабр

    [Перевод] Печальная судьба спецификаторов формата функции printf для символов Юникода в Visual C++

    Поддержка Юникода в Windows появилась раньше, чем в большинстве остальных операционных систем. Из-за этого многие проблемы, связанные с представлением символов, в Windows решались не так, как в других системах, разработчики которых отложили внедрение нового стандарта до лучших времён [1]. Самый показательный пример: в Windows для представления символов Юникода используется кодировка UCS-2. Она была рекомендована Консорциумом Юникода, поскольку версия 1.0 поддерживала…

    Подробнее »
  • Хабрахабр

    Локализация приложения и поддержка RTL. Доклад Яндекс.Такси

    При локализации сервиса важно внимательно отнестись к согласованию переводов между собой. Руководитель группы клиентской Android-разработки Яндекс.Такси Александр Бонель рассказал, какие практики и инструменты упрощают локализацию. Во второй части доклада Саша поделился опытом поддержки языка RTL в приложении: что хорошо, а что не совсем работает у Андроида из коробки, какие проблемы возникают из-за поддержки RTL и как их минимизировать в будущем.…

    Подробнее »
  • Хабрахабр

    [Перевод] (Справа налево (Зазеркалье

    Кажется, с заголовком что-то не так? Это одна из проблем, с которыми сталкиваются веб-разработчики при добавлении поддержки таких языков, как арабский. В этой статье расскажем о проблемах, с которыми мы столкнулись, и решениях, которые придумали для поддержки арабского языка в десктопном клиенте Spotify и веб-плеере. Наша миссия состоит в том, чтобы «раскрыть потенциал человеческого творчества, предоставляя миллионам музыкантов возможность зарабатывать…

    Подробнее »
  • Хабрахабр

    Из жизни с Kubernetes: Как HTTP-сервер испанцев не жаловал

    Все приложения написаны на . Представитель нашего клиента, стек приложений которого обитает в облаке от Microsoft (Azure), обратился с проблемой: с недавнего времени часть запросов некоторых клиентов из Европы стала завершаться ошибкой 400 (Bad Request). NET, развёрнуты в Kubernetes… Этот трафик слушает HTTP-сервер Kestrel, сконфигурированный клиентом . Одно из приложений — API, через который в конечном счёте приходит весь трафик.…

    Подробнее »
  • Хабрахабр

    [Из песочницы] Вы не сможете решить эту задачу на собеседовании

    Привет, Habr. Хочу поделиться с вами одной интересной задачей, которую многие из нас получали на собеседовании, но, вероятно, даже и не догадывались о том, что решаем ее неправильно. Работая на должностях тимлида и техлида мне порой приходилось проводить собеседования, соответственно нужно подготовить несколько теоретически вопросов, ну и пару несложных задач, на решение которых не должно было бы уйти больше 2х-3х…

    Подробнее »
  • Хабрахабр

    [Перевод] Когда «Zoë» !== «Zoë», или почему нужно нормализовывать Unicode-строки

    Никогда не слышали о нормализации Unicode? Вы не одиноки. Но об этом надо знать всем. Нормализация способна избавить вас от множества проблем. Рано или поздно нечто подобное тому, что показано на следующем рисунке, случается с любым разработчиком. «Zoë» — это не «Zoë»И это, кстати, не пример очередной странности JavaScript. Автор материала, перевод которого мы сегодня публикуем, говорит, что может показать,…

    Подробнее »
  • Хабрахабр

    [Перевод] Заблуждения программистов об именах — с примерами

    В 2010 году Патрик Маккензи написал знаменитую статью «Заблуждения программистов об именах», перечислив 40 фактоидов, которые не всегда верны в отношении человеческих имён. К сожалению, не совсем. Думаете, программисты сели, подумали и изменили обработку имён в компьютерных системах? Эти системы по-прежнему предполагают, что наши имена всегда можно записать символами алфавита, зачастую только ASCII.Подозреваю, что статья Патрика оказала недостаточное влияние на…

    Подробнее »
  • Хабрахабр

    Справа налево. Что такое dir=rtl и как приручить арабский язык

    Мы недавно перевели на арабский язык 2ГИС Онлайн, и хотим поделиться своим опытом адаптации интерфейса под RTL (right-to-left). Привет, Хабр. Это будет актуально и для иврита, и для персидского языка. Сегодня — больше про теорию. Я разделю этот опыт на две статьи — теоретическую и практическую. Особое внимание уделю алгоритму, по которому строится отображение текста смешанной направленности — unicode bidirectional…

    Подробнее »
  • Хабрахабр

    ZalgoFuzzing: использование нестандартных методов размытия пейлоадов

    Использование нестандартных техник обфускации пейлоада (полезной нагрузки) при проведении тестирования на проникновение веб-приложений может позволить обходить фильтрацию защитных средств и способствовать реализации вектора атаки. В этой статье я расскажу про т.н. Z̴a҉̠͚l͍̠̫͕̮̟͕g͚o̯̬̣̻F̮̫̣̩͓͟ͅu̯z̡͉͍z̪͈̞̯̳̠ͅi̴̜̹̠̲͇n̰g̱͕̫̹͉͓ как метод обфускации (размытия) пейлоадов. Z̻̮̰̗͙̱̣a̺̗̺͍̹̕l͈̠͈͍g̵o̤̜͇͕̹ В первую очередь давайте разберем что такое Zalgo и такую! особенность построения текста. В тексте используются комбинированные символы, также известные как комбинированные…

    Подробнее »


Кнопка «Наверх»
Закрыть