Protecting patterns of communication for all internet traffic
© 2023 Nym Technologies S.A. | nymtech.net
1.
How to build on Nym?
Next generation privacy infrastructure
Agenda
Quick reminders
TS SDK
Rust SDK
Hackathon deep dive
2.
Краткие напоминания
3.
4.
Nym Mixnet
The NYM Token (NYM) incentivizes privacy and is used to make mixnet decentralized, sustainable and resilient.
The Nym mixnet is a multi purpose mixnet that prevents traffic analysis by an adversary capable of watching the entire network, including the NSA.
Nym token (NYM)
Nym credentials
Nym: A decentralised,
incentivised
network-level
privacy
infrastructure
CosmWasm and IBC enabled blockchain.
Allow 3rd party apps to anonymize any arbitrary ‘key : value’ pairs, so users can privately reveal part or all of their data at their discretion for any necessary compliance and authentication.
Nyx Blockchain
What “network layer” means
Application Layer
Transport Layer
Network Layer
Data Layer
Physical Layer
“5 Layers model”
5.
L5 L4
L3 L2 L1
Nym goes beyond web3
Mixnet can be used to power:
Web2
Web3
6.
Nym is not only useful for blockchain-related apps, but for anything that requires network level privacy!
Почему стоит использовать инфраструктуру Nym?
7
Как разработчик, вы можете добавить Nym в свои существующие приложения, чтобы сделать весь или часть трафика и коммуникаций вашего приложения конфиденциальными.
Существующие приложения
Существует множество сервисов, которые можно адаптировать для отправки сообщений через микснет вместо открытого Интернета.
Существующие сервисы
Nym SDK дает возможность для создания новых приложений и сервисов, ориентированных на конфиденциальность.
Новые приватные приложения и сервисы
Building,* using*,* integrating***with Nym
Drop In replacement for fetch: if you need API endpoints, access them through the mixnet with minimal code changes.
Wrapper around the WASM client allowing to:
MixFetch (JS/TS) ***
TS SDK*
Allows to integrate Mixnet functionality into app processes. Used by Network Requester Services for several months now and has worked very well. Zk-nyms and mixReqwest (coming soon).
Rust SDK*
Based on the Coconut signature scheme. They are: re-randomizable, allow for selective disclosure, issuance is decentralized. Will be used to pay for mixnet use as a first use-case.
Zk-nyms **
Standalone clients *
GUI app that wraps the SOCKS5 client for proxying app traffic through the Nym mixnet.
NymConnect **(*)
8.
Поддерживаемые клиенты: | Rust SDK | Typescript SDK |
Websocket | ✓ | ⨯ |
Socks5 | ✓ | ⨯ |
Webassembly | ⨯ | ✓ |
9.
TS SDK
10.
MixFetch
11.
Что можно делать с ним?
Используйте его для прокси-запросов через микснет.
Запрос или выполнение методов смарт-контрактов Nyx.
Смарт-контракты Nym
Проксируйте трафик вашего приложения через микснет Nym.
Микснет
Создавайте и используйте учетные данные с нулевым разглашением.
Zk-Nyms (скоро)
Структура документов TS SDK
https://sdk.nymtech.net/
12.
Обзор SDK
13.
4 варианта пакетов:
mixFetch
14.
Думайте о mixFetch как о замене Fetch API, но с одной оговоркой: паттерны трафика, которые обычно были бы раскрыты, теперь защищены благодаря микснету.
Он делает это, получая те же аргументы, что и традиционный fetch, и создает запрос SOCKS5, который будет отправлен на целевой хост в Интернете через сетевой запросчик SOCKS5.
mixFetch
15.
mixFetch
16.
Микснет
17.
Микснет Nym обеспечивает чрезвычайно надежную защиту от наблюдения на уровне сети.
Микснет
18.
Когда ваше приложение взаимодействует с микснетом, само приложение не обращается к микснету напрямую. Для обмена сообщениями в микснете вашему компоненту необходим клиент Nym.
Что делают клиенты Nym?
Микснет
19.
20.
Смарт-контракты
Используя клиенты смарт-контрактов микснета Nym, вы сможете запрашивать состояния контракта или выполнять методы при предоставлении ключа подписи.
Смарт-контракты
21.
Zk-Nyms (скоро)
22.
Zk-Nyms — это учетные данные с повышенной конфиденциальностью, основанные на Coconut, схеме криптографической подписи, которая допускает повторную рандомизацию, слепые подписи, выборочное раскрытие атрибутов и пороговый выпуск.
Их первое использование будет в качестве учетных данных для получения доступа к определенному объему трафику через микснет.
Когда и зачем мне понадобится провайдер услуг?
23.
Если вы пишете приложение, требующее отправки сообщений через микснет (клиент микснета, автономные клиенты, mixFetch), и в зависимости от варианта использования вашего приложения, вам придется либо полагаться на существующих поставщиков услуг, либо писать свой собственный:
Примечание. Мы (Nym) также запустим несколько узлов в режиме «открытого прокси» и поделимся адресами, чтобы вы могли использовать их в начале разработки.
Как я могу интегрировать Nym в существующую инфраструктуру?
24.
mixFetch (TS/JS)
TS или Rust SDK
Клиент Nym
https://sdk.nymtech.net/integrations
Rust SDK
25.
Компонент микснета Rust SDK
26.
Документация SDK
https://nymtech.net/docs/rust/rust.html
27.
Структура документации Rust SDK
Дополнительно
28.
Примеры документов Rust SDK
29.
Подробно о хакатоне
30.
Даты
31.
Общее расписание
Важные даты
Что нам нужно?
32.
1. Инструменты
Задача создания инструментов включает в себя создание инструментов для пользователей, операторов или разработчиков Nym.
2. Интеграции
Реализация пользовательской логики обработки трафика Nym для существующего приложения с использованием SOCKS5, 4a, 4, mixFetch или (если вы любите приключения) что-то специальное с помощью TS или Rust SDK.
3.‘Nymификация’ приложений
Напишите приложение, используя один из SDK или отдельный клиент (сложнее). Подумайте о том, что вы можете «nymифицировать», например, версия расширения TorBirdy, использующая Nym вместо Tor.
Что мы ожидаем от заявок?
33.
Полезные ссылки
34.
Расписание
Общая документация:
Документация клиентов и SDK
Документы, относящиеся к Shipyard
35.
Сайт
Github
36.
СПС