Как стать автором
Обновить
80.33
Криптонит
Разрабатываем. Поддерживаем науку. Просвещаем
Сначала показывать

Алгоритм Чена — новая квантовая угроза? Разбираем риски раскрытия данных с криптографами компании «Криптонит»

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.7K

Каждый день мы пользуемся криптографическими схемами, не особо задумываясь об этом. Именно криптография обеспечивает защиту наших коммуникаций через интернет, включая все B2B, B2C и G2C взаимодействия. Без неё не было бы безналичных платежей и онлайн-торговли, электронных госуслуг и других современных технологий, способствующих развитию рынка и общества.

Криптография постоянно развивается на фоне появления новых угроз. С недавних пор к таким рискам добавились квантовые компьютеры, которые уже существуют в виде прототипов с небольшим числом кубитов. Если их удастся масштабировать, то многие классические схемы шифрования и электронной подписи утратят надёжность.  

Под угрозой окажутся банки, телеком, ритейл, коммерческая и государственная тайна. Удалённая работа, дистанционное обслуживание и многие бизнес-процессы станут попросту невозможны. Поэтому важно разрабатывать альтернативные криптографические схемы, которые базируются на принципиально других математических задачах. Это одно из направлений работы лаборатории криптографии компании «Криптонит». 

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

В качестве примера возьмём нашумевшую этой весной публикацию «Квантовые алгоритмы для задач на решётках», обсуждение которой в криптографическом сообществе продолжается до сих пор. По мере разбора препринта экспертами, отношение к целой группе постквантовых механизмов менялось от «всё пропало!» до «они снова выдержали суровое испытание».

Читать далее
Всего голосов 5: ↑5 и ↓0+7
Комментарии0

«Java – это язык синих воротничков»

Время на прочтение10 мин
Количество просмотров21K

Поговорили с Сергеем, ведущим Java-разработчиком Нижегородского подразделения «Криптонита». В интервью – о языке программирования Java, «синих воротничках», бесполезности pet-проектов и работе инженера в энтерпрайзе без прикрас.

Сергей, расскажи, как именно ты пришёл к мысли изучать Java?

Это забавная история. Все мальчишки в начале 90-х хотели компьютер для игр. Моим товарищам покупали «Спектрум», на котором игры были цветные. У моих родителей не было таких денег. Поэтому они, скрепя сердце, купили мне старый компьютер без модуля цветной псевдографики. Назывался он «Партнер 01.01», как сейчас помню.

Читать далее
Всего голосов 19: ↑13 и ↓6+10
Комментарии5

Как математики приближают создание квантовых компьютеров

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров4.2K

Эксперт компании «Криптонит» Игорь Нетай несколько лет назад выдвинул гипотезу, которая только сейчас подтвердилась в научном сообществе. Какая гипотеза и причём здесь квантовые компьютеры — рассказываем ниже.

Читать далее
Всего голосов 11: ↑10 и ↓1+12
Комментарии1

Как анализируют криптографические стандарты и зачем постквантовые алгоритмы без квантового компьютера?

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров4K

Об этом и о других перспективных направлениях криптографии эксперты компании «Криптонит» рассказали на прошедшей в июне конференции CTCrypt 2024.

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии0

С++ вам не нянька! Делайте, что хотите, но виноваты будете сами

Время на прочтение7 мин
Количество просмотров6.9K

Поговорили о перспективах С++, его особенностях и востребованности на рынке с Андреем Никитиным, ведущим инженером-разработчиком направления системного программирования Нижегородского подразделения компании «Криптонит».

С++ уже более сорока лет. В чём причина его популярности?

В плане семантики — это универсальный язык, но чаще С++ используется как объектно-ориентированный — с наследованием, интерфейсами и так далее. С++ позволяет строить что угодно — универсальные абстракции, иерархии любой сложности, логические слои, стеки протоколов... Обычно среди сильных сторон упоминают кроссплатформенность, но её нет «по умолчанию». Это не Java, программы на которой транслируются в байт-код и запускаются в виртуальной машине. В C++ нужно сразу писать код под все планируемые архитектуры и операционные системы, учитывать зависимые библиотеки. Всё это требует значительных усилий. Кроссплатформенность в С++ не данность, а отдельное требование, которое нужно учитывать на этапе разработки.

Почему С++ используют в «Криптоните» сейчас, когда есть более современные языки?

У нас в компании есть разные проекты. Некоторые из них начинались много лет назад, когда ещё не были популярны Rust, Golang и другие новомодные языки. При этом нам были важны требования производительности и «близости к железу». С++ был у всех на слуху. Он как раз обеспечивал сочетание высокоуровневого языка и возможность использования низкоуровневых функций. Сейчас мы продолжаем его использовать, потому что нет смысла портировать эти многолетние проекты на другие языки. Всё уже выверено и оптимизировано.

Читать далее
Всего голосов 10: ↑8 и ↓2+6
Комментарии15

День защиты (от) детей: подборка игр от семейки айтишников

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров8.1K

Привет, Хабр! Меня зовут Андрей. Я работаю в ИТ-компании «Криптонит» и воспитываю шестилетнюю дочь. Совмещать это весьма непросто, поэтому хочу поделиться лайфхаками о том, как провести время с ребёнком и не сойти с ума и увлечь его разными занимательными задачками.

Каждое воскресение мои мечты отоспаться разбиваются о детскую непосредственность дочери Кати:

— Пап, ты можешь со мной поиграть?! — тормошит она чуть свет и, скорее, требует, чем просит.

— Папа много чего может, но пока не хочет. — душнила во мне вяло борется за право подрыхнуть.

Этот бой проигран ещё до начала. Морфей в ужасе бежал от Кати, и я его понимаю. Дочь уже не даст покоя. Она будет «папкать» и натурально прыгать по тебе, пока не получит своё.

Чтобы в следующие выходные было чуть легче, на неделе я придумываю разные активности. Одни помогают сделать ребёнка «самозанятым» хотя бы на 10-15 минут, а другие достаточно просты, чтобы играть в них даже не до конца проснувшимся. Вот некоторые из них в помощь молодым родителям.

Прямоугольники

Для этой игры понадобится листок в клеточку, 1-2 кубика и пара карандашей (фломастеров) разных цветов. Ещё желательно приготовить ручку, чтобы нагляднее записывать цифры. Сама игра отдалённо похожа на «тетрис», только все фигуры — прямоугольники. 

Перед началом игры отмечаем на листке игровое поле произвольного размера, например 24 на 32 клетки. Затем два игрока по очереди рисуют прямоугольники. Их размер задаётся выпавшими цифрами на кубиках как длины сторон в клетках. 

Первый прямоугольник рисуется в углу. В следующий ход нужно нарисовать новый прямоугольник так, чтобы он имел общую сторону с предыдущим на протяжении хотя бы одной клетки. Если нет места, чтобы нарисовать прямоугольник заданного размера, игрок пропускает ход. Игра заканчивается, когда оба игрока не могут сделать следующий ход. Выигрывает тот, чьи прямоугольники заняли большую площадь на листке.  

Читать далее
Всего голосов 23: ↑22 и ↓1+25
Комментарии9

Как я делал шрифтовые иконки. Совмещаем желание UX-дизайнеров и возможности фронтендеров

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.2K

Привет, Хабр! Меня зовут Артём Поморцев. Я фронтенд-разработчик компании «Криптонит» и хочу поделиться своим опытом создания набора иконок (icon pack).

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

Читать далее
Всего голосов 7: ↑6 и ↓1+7
Комментарии21

Реализация многооконного приложения на Vue 3

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров5.3K

В наше время чуть ли не каждое приложение использует браузерный клиент. Это просто в написании, это кроссплатформенно, это легко в использовании. Браузерные решения уже активно используются и в промышленной сфере: аналитиками, операторами.

WEB-приложения для управления промышленными платформами могут быть настолько функциональны, что вся их мощь не укладывается в один монитор, а ведь на рабочем месте может быть ни один, и ни два монитора, а даже больше пяти. Но что же делать, если окна приложений ещё и должны являться частью одной системы и предоставлять возможности удобного взаимодействия между друг другом? Эту проблему я бы и хотел осветить.

Меня зовут Дмитрий Дербин – frontend-разработчик компании «Криптонит». В данном материале я поделюсь некоторой теоретической базой по теме и краткими наработками для реализации на Vue 3 на примере простого сайта с погодой.

Читать далее
Всего голосов 8: ↑8 и ↓0+9
Комментарии2

Какой язык программирования выбрать? Обзор Python

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров10K

Шестая статья нашего цикла про языки программирования посвящена Python. Её подготовила группа серверной разработки компании «Криптонит». В обзоре вы найдёте особенности, плюсы и минусы Python, сферы его применения и полезные ссылки для обучения.

Ранее наши разработчики делали обзоры Rust, Scala, JavaScript, Spark и Golang.

Читать далее
Всего голосов 19: ↑10 и ↓9+3
Комментарии3

«Кодиеум» — новая отечественная разработка для криптографии будущего

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2.9K

Российская компания «Криптонит» представила на «РусКрипто’2024» криптографический механизм «Кодиеум». Он устойчив ко всем известным атакам и останется стойким даже в случае появления мощного квантового компьютера.

Читать далее
Всего голосов 13: ↑9 и ↓4+5
Комментарии9

Какой язык программирования выбрать? Обзор Go

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров10K

Продолжаем серию статей про особенности, применение, плюсы и минусы языков, которые используются в «Криптоните». В этой статье наш инженер департамента инфраструктуры Алексей Косов расскажет про Golang.

Ранее наши разработчики делали обзоры Rust, Scala, JavaScript и Spark.

Читать далее
Всего голосов 11: ↑8 и ↓3+6
Комментарии5

Зачем в Scala трамплины и как их использовать

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров3.2K

В этой статье директор департамента разработки российской компании «Криптонит» и «скалист» Алексей Шуксто рассказывает о специфической технике функционального программирования, которая называется «трамплин» (trampoline).

Если кратко, то «трамплин» — это постоянный вызов в цикле новых частей вычисления вплоть до получения конечного результата. Трамплин можно рассматривать как шаблон проектирования, который позволяет избежать переполнения стека при рекурсивных вызовах функций.

Достигается это следующим образом: когда функция вызывает саму себя, то вместо этого вызова управление передаётся другой функции — трамплину. Эта функция-трамплин вызывает исходную функцию с нужными параметрами и, если нужно, передаёт управление другой функции-трамплину. Таким образом, при рекурсивных вызовах функций никакая информация не сохраняется на стеке, а управление всегда передаётся между функциями-трамплинами.

Чтобы вникнуть в детали, поясним ещё несколько моментов:

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии6

Как математика улучшает геосервисы и помогает быстрее сориентироваться

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров2.4K

Сегодня всё чаще требуется учитывать географическую привязку и выполнять поиск в локальном окружении клиента. Иными словами, регулярно возникает необходимость найти что-то (или кого-то) рядом с конкретным пользователем. «Где ближайший банкомат?», «Кто из друзей поблизости?», «Какие тут аптеки?». Подобные запросы миллионами поступают в сервисы геолокации каждый день, при этом существующие подходы к решению этой задачи не исчерпали возможностей оптимизации. Наверняка вы не раз сетовали на то, как долго обновляются метки на карте.

В этой статье эксперт отдела перспективных исследований российской компании «Криптонит» Игорь Нетай рассказывает о способе ускорить обнаружение объектов, принадлежащих одному географическому региону с произвольно заданными размерами. Материал станет частью научной работы о перспективах применения H-кривых в геохешинге.

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

Координаты одной строкой

Удобство географической персонализации постепенно вытеснило паранойю, и во многих онлайн-сервисах теперь открыто используются данные о местоположении пользователей и различных объектов. Делаете заказ через интернет? Вам предложат забрать его в пункте выдачи поближе к дому. Вызываете такси? Сначала запрос передаётся водителям рядом с вами. Ищете кафе? На карте отобразятся ближайшие.

Все эти алгоритмы сводятся к решению одной и той же задачи: они определяют, какие координатные точки из базы данных входят в тот же условно заданный регион, что и указанная в запросе целевая точка (как правило, обозначающая местоположение пользователя). Для этого используется система кодирования географических координат в виде значений хеш-функции, называемых геохеши.

Читать далее
Всего голосов 13: ↑12 и ↓1+12
Комментарии7

«Относитесь к собеседованию, как к свиданию» — 5 причин, почему разработчики не могут найти работу

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров17K

Привет, Хабр! На связи Василий Беляев – руководитель группы разработки интерфейсов компании «Криптонит». Во фронтенд-разработке я уже 16 лет. Так сложилось, что ко мне регулярно обращаются за помощью друзья, знакомые и бывшие коллеги, которые хотят устроиться на работу, но почему-то боятся и сомневаются в себе.

Что же смущает разработчиков, не даёт им откликаться на вакансии и уверенно держаться на собеседованиях? Через личный опыт и опыт коллег по цеху выделил для себя 5 основных причин, о каждой из которых я расскажу подробнее.

Читать далее
Всего голосов 29: ↑14 и ↓15+1
Комментарии67

SALMONN — универсальная модель для всех типов аудиоданных

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров3.7K

Человек без труда воспринимает речь на фоне тихой музыки и звуков окружающей среды. Более того, прямо во время разговора он может мысленно подпевать и реагировать на звуки. До недавнего времени нейросети так не умели. Одни были заточены на распознавание речи, другие — на обработку музыки, а третьи — на анализ различных звуковых событий. Всё изменилось с появлением работы китайских исследователей, создавших единую мультимодальную модель SALMONN. Это нейронная сеть с открытым исходным кодом, предназначенная для обработки аудиоданных любого типа: речи, музыки и различных звуков.

В этой статье мы рассказываем об особенностях SALMONN на основе научной публикации его разработчиков.  Адаптировать материал помогли наши эксперты в области обработки и синтеза речи. Перевод и разбор препринта о SALMONN выполнен исследователем лаборатории больших данных и статистики компании «Криптонит» Анной Холькиной.

Ключевой идеей проекта SALMONN стала интеграция большой языковой модели (LLM) с двумя энкодерами: одним из модели Whisper для восприятия речи и другим (BEATs) для остальных звуков. В качестве предобученной LLM используется Vicuna, созданная на основе модели LLaMA с 13 миллиардами параметров и обученная на данных лучших диалогов с ChatGPT (также авторы SALMONN выпустили версию своей модели на основе Vicuna с 7 миллиардами параметров).

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии1

Как вырастить из ребёнка айтишника долгими зимними вечерами?

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров7.8K

Привет, Хабр! Жизнь удалёнщика вдвойне веселее с детьми. Изредка переводя взгляд от монитора вовне, я пытаюсь воспитывать дочку. Пока чаще получается наоборот. Эта гибридная нейросеть неохотно соглашается переключаться в режим обучения с учителем, но при этом требует 200% внимания. Такое взаимодействие требует немалых душевных сил, а за выходные я порой устаю сильнее, чем за рабочую неделю. Чего уж говорить о длинной череде красных дней календаря!

Приближаются новогодние праздники, а значит — снова назревает вопрос о том, как провести время с детьми и не свихнуться помочь им развиваться в увлекательной форме. Раньше я рассказал как играю с дочкой «в шифры», а один из читателей предложил более простой вариант — настолки. Как сотруднику компании «Криптонит», мне стало интересно: а есть ли настольные игры на тему криптографии? Сходу нашлось две, а затем я решил опробовать с дочкой ещё одну — более универсальную и направленную (как заявлено) на всестороннее развитие когнитивных функций. Результат нашего небольшого эксперимента оказался слегка неожиданным, и я спешу поделиться с вами свежим опытом.

Читать далее
Всего голосов 13: ↑10 и ↓3+8
Комментарии1

Криптография перед эпохой квантовых вычислений

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров6.6K

Недавно мы провели встречу экспертного сообщества по криптографии и квантовым технологиям, в которой приняли участие ведущие российские компании данной отрасли – «Российский квантовый центр», QApp, «Криптонит», «КриптоПро», «ЭЛВИС-ПЛЮС» и другие. На мероприятии обсудили развитие квантовых и гибридных вычислительных алгоритмов, разработку квантовых компьютеров и связанные с этим вызовы для криптографии. Эксперты обозначили ряд принципиальных моментов, подробнее о которых мы расскажем в этой статье.

Какие бывают квантовые компьютеры?

В России ведётся разработка квантовых компьютеров всех основных типов: на ионах (ионных ловушках), на холодных атомах (в оптических ловушках), на сверхпроводниках и фотонных чипах. Как и во всём мире, пока это штучные экспериментальные установки, далёкие от практического применения. На них отрабатывают различные инженерные подходы, тестируют алгоритмы и принципы дальнейшего масштабирования.

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

Где актуальны квантовые алгоритмы?

«Какими бы ни были по своей природе компьютеры будущего, сейчас нужно разрабатывать универсальные квантовые алгоритмы, без которых вычислительная система с любым количеством кубитов окажется дорогой и бесполезной железкой. В своей практике мы часто сталкиваемся с задачами комбинаторной оптимизации. Именно на них мы таргетируем свои исследования и разработку своих алгоритмов», — сказал эксперт компании QBoard Антон Божедаров.

Читать далее
Всего голосов 8: ↑7 и ↓1+7
Комментарии7

О точности вычислений: как не потерять данные в цифровом шуме

Время на прочтение7 мин
Количество просмотров3.2K

Специалист отдела перспективных исследований компании «Криптонит» Игорь Нетай изучил процесс потери точности вычислений и написал библиотеку, доступную на GitHub, которая помогает разработчикам контролировать точность расчётов на каждом этапе вычислений. Данная библиотека особенно актуальна в сфере машинного обучения и анализа (больших) данных, где накопление ошибок может сильно искажать результат.

Читать далее
Всего голосов 20: ↑20 и ↓0+20
Комментарии8

«Я пропагандирую коллегам переход на Rust». В статье — 6 основных причин

Время на прочтение6 мин
Количество просмотров17K

Мы побеседовали с руководителем направления системного программирования в «Криптоните» Александром Авраменко о карьерном пути Rust-разработчика, особенностях языка Rust и его применении к моделям машинного обучения в высоконагруженных системах.

Читать далее
Всего голосов 21: ↑15 и ↓6+11
Комментарии16

Тимлид про «чекбоксики» на собеседованиях, тонкости управления Rust-командой и мотивацию сотрудников

Время на прочтение7 мин
Количество просмотров2.2K

В «Криптоните» работает Александр Авраменко. Он возглавляет направление системного программирования и вместе с командой создаёт сетевые сервисы и конвейеры обработки потоков больших данных с применением моделей машинного обучения в реальном времени.

Александр рассказал нам в интервью об особенностях управления группой разработчиков, «red flags» на собеседованиях, мотивации команды и ситуации на рынке труда «растистов». А скоро выйдет вторая, «техническая» часть интервью — о языке программирования Rust, проектах и тех.стеке команды.

Читать далее
Всего голосов 7: ↑5 и ↓2+3
Комментарии3

Информация

Сайт
kryptonite.ru
Дата регистрации
Дата основания
Численность
201–500 человек
Местоположение
Россия