Pull to refresh
26
0
Send message

(Не)доверенный ИИ: обучать нельзя запретить

Level of difficultyMedium
Reading time15 min
Views1.8K

Как заставить ChatGPT и другие LLM выдать секретные данные? Как взломать электронный замок с биометрией? Как сделать логическую бомбу с помощью ИИ? Можно ли обучать ИИ без доступа к реальным данным компании? Эти и другие вопросы обсудили на IV встрече экспертного сообщества по криптографии и большим данным, организованной компанией «Криптонит» и посвящённой доверенному ИИ.

Читать далее
Total votes 7: ↑6 and ↓1+9
Comments0

Жизнь, смерть и ̶р̶о̶б̶о̶т̶ы̶ управление ресурсами в Scala

Level of difficultyMedium
Reading time23 min
Views750

Вы когда-нибудь задумывались о том, как выделяется память для переменных, и в какой конкретно момент она очищается? Как сборщик мусора «решает», что переменная уже не нужна и можно ли как-то повлиять на его решение?

В новой статье директор департамента разработки компании «Криптонит» Алексей Шуксто рассказал об интересных особенностях управления жизненным циклом объектов в Scala и Java разных версий. С необходимостью вникать в эту внутреннюю кухню сталкиваются все, кто использует в своих программах потоки, подключения к БД и другим сторонним сервисам, анализирует метрики, обрабатывает исключения… все, кто пишет что-то сложнее «Hello World!» и хочет добиться предсказуемого результата.

Читать далее
Total votes 4: ↑4 and ↓0+4
Comments0

Tower — библиотека для асинхронных middleware

Level of difficultyMedium
Reading time8 min
Views1.8K

Привет, Хабр! Ведущий системный программист компании "Криптонит" Михаил Доронин поделился опытом написания промежуточного ПО — middleware. Оно часто используется в веб-разработке. Например, веб-сервер может использовать middleware для обработки запросов до того, как они будут переданы основному приложению. Так удобно выполнять аутентификацию, логирование, сжатие данных и другую обработку запросов. Наша команда разработчиков на Rust использует для создания middleware библиотеку Tower. О ней и пойдёт речь в этой статье.

Ключевым понятием Tower является типаж Service, суть которого на псевдо-Rust некоторого (надеюсь, не столь отдалённого) будущего, сводится к следующей записи:

Читать далее
Total votes 11: ↑10 and ↓1+12
Comments0

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

Level of difficultyMedium
Reading time5 min
Views3.7K

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

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

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

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

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

Читать далее
Total votes 7: ↑7 and ↓0+9
Comments0

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

Level of difficultyMedium
Reading time2 min
Views4.2K

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

Читать далее
Total votes 11: ↑10 and ↓1+12
Comments1

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

Level of difficultyMedium
Reading time3 min
Views4.2K

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

Читать далее
Total votes 7: ↑6 and ↓1+5
Comments0

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

Reading time7 min
Views7.2K

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

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

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

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

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

Читать далее
Total votes 10: ↑8 and ↓2+6
Comments15

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

Level of difficultyEasy
Reading time8 min
Views8.3K

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

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

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

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

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

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

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

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

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

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

Читать далее
Total votes 23: ↑22 and ↓1+25
Comments9

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

Level of difficultyMedium
Reading time5 min
Views3.1K

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

Читать далее
Total votes 13: ↑9 and ↓4+5
Comments9

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

Level of difficultyHard
Reading time11 min
Views3.3K

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

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

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

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

Читать далее
Total votes 16: ↑16 and ↓0+16
Comments6

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

Level of difficultyMedium
Reading time7 min
Views2.6K

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

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

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

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

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

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

Читать далее
Total votes 13: ↑12 and ↓1+12
Comments7

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

Level of difficultyMedium
Reading time7 min
Views3.9K

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

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

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

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments1

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

Level of difficultyEasy
Reading time10 min
Views8K

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

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

Читать далее
Total votes 13: ↑10 and ↓3+8
Comments1

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

Level of difficultyMedium
Reading time10 min
Views6.7K

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

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

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

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

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

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

Читать далее
Total votes 8: ↑7 and ↓1+7
Comments7

Что делать с детьми летом, если ты айтишник. Часть 2

Level of difficultyEasy
Reading time4 min
Views30K

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

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

Читать далее
Total votes 43: ↑40 and ↓3+46
Comments27

Цифровые флуктуации: почему ИИ ошибается и как с этим бороться

Reading time6 min
Views4K

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

Специалист отдела перспективных исследований компании «Криптонит» Игорь Нетай предположил, что у разноплановых ошибок ИИ существует общая причина. Он выявил её в ходе модельного эксперимента с использованием более 50 000 сгенерированных нейронных сетей, обучение которых продолжалось в течение тысяч эпох для каждой из них.

Скорее читать далее!
Total votes 6: ↑5 and ↓1+4
Comments2

Чем заняться с детьми на праздниках, если ты айтишник

Reading time5 min
Views7.1K

Чем заняться с детьми на праздниках, если ты айтишник

Привет, Хабр! Меня зовут Андрей, и я сотрудник "Криптонита"! Близится новый год, и подготовка к нему в разгаре. Один из насущных вопросов: как провести январские праздники вместе с детьми так, чтобы не сойти с ума всем было интересно? Сажать ребёнка перед экраном на все выходные — явно не лучший вариант. Альтернативы для детей разных возрастов я и хочу рассказать в этой статье. Некоторые из них разберу на примере своей семьи, поэтому сначала поясню особенности нашего быта.

Читать далее
Total votes 16: ↑13 and ↓3+14
Comments7

Information

Rating
Does not participate
Works in
Registered
Activity