Size: a a a

2020 July 19

PK

Pavel Kiselyov in ББ-чат
источник

N

Nikita in ББ-чат
Класс, обнаружил в тви начало очень знакомого срача, но неожиданно не с битком: https://twitter.com/QWQiao/status/1277281069784543232?s=19
источник

T

TⓇua in ББ-чат
мне кажется с такими аргументами могут быть только люди, пропустивные в школе математику...
Почему бы не взять и не посчитать?! Вместо кучи идиотских аргументов...
источник

OA

Oleg Andreev in ББ-чат
Абдулла Русин
привет!
подскажите есть конвертер который может произвольное 256 битное число переводить в сид фразу
также перевести в число неполную сид фразу например без последнего 12 или 24 слова?
пробывал этот хороший конвертер,но к сожалению он этого не может делать

https://iancoleman.io/bip39/
BIP39 односторонний - получаемый сид - это хеш слов, а не бинарное представление. Насколько я помню, это из-за какого-то ебучего патента на конверсию слов в бинарную строку и обратно
источник

OA

Oleg Andreev in ББ-чат
источник

OA

Oleg Andreev in ББ-чат
источник

R

Random person ♓ in ББ-чат
а где там срач? нашел обычный шилл своих сумок
источник

АР

Абдулла Русин... in ББ-чат
Oleg Andreev
BIP39 односторонний - получаемый сид - это хеш слов, а не бинарное представление. Насколько я помню, это из-за какого-то ебучего патента на конверсию слов в бинарную строку и обратно
нет сид это если так можно сказать словарное отображение 256 битного числа вот например число eb0d7c0dc33941d33533a3aac0332568106957f0014a7b1f95f67cf8441f283f4e502cf804833cb870ace35825460b91e2dbdf6b545890d823eb5bd57cf30231    но неудобно его так хранить придумали разбить его на части по 11 бит и по словарю конвертировать в слова вот его сид oil glow kitchen tonight rebuild sunny turn stumble weasel foil daring veteran
источник

АР

Абдулла Русин... in ББ-чат
конвертировать любой сид в число можно с помощью этого конвертора https://iancoleman.io/bip39/ а вот обратную задачу конвертировать произвольное число в сид он не делает а мне нужно именно это
источник
2020 July 20

АР

Абдулла Русин... in ББ-чат
Уважаемые участиники чата!
Публичный ключ — это точка на эллиптической кривой, а приватный ключ — это натуральное число, которое показывает, сколько раз саму с собой нужно сложить
базовую точку чтобы получить кординату открытого ключа на эллиптической кривой. Сам открытый ключ состоит из двух значений — это координаты X и Y, каждая из которых имеет размер 256 бит.

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

C

CryptoQ in ББ-чат
источник

C

CryptoQ in ББ-чат
Катит на мем?
источник

OA

Oleg Andreev in ББ-чат
Абдулла Русин
Уважаемые участиники чата!
Публичный ключ — это точка на эллиптической кривой, а приватный ключ — это натуральное число, которое показывает, сколько раз саму с собой нужно сложить
базовую точку чтобы получить кординату открытого ключа на эллиптической кривой. Сам открытый ключ состоит из двух значений — это координаты X и Y, каждая из которых имеет размер 256 бит.

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

Задача: тебе нужно доказать что ты знаешь число x такое что пубключ P = x*G.

Шаг 1. Пересылаешь x. Получатель делает x*G и проверяет что оно == P. Это работает для него, но теперь он знает твой ключ.

Шаг 2. Генеришь еще одно рандомное число r, которое мы назовем nonce, и точку r*G (типа как пубключ, но мы это назовем коммитментом в r). И скрываешь свой ключ сложением: x+r (по модулю кол-ва точек на кривой) и пересылаешь s=x+r проверяльщику И заодно отсылаешь ему точку R = r*G.

Проверяльщик проверяет что s*G == P + R. Минус тут в том, что ты можешь наебать проверяющего. Если ты пошлешь ему s=r; R = r*G-P, а ключа x ты не знаешь. Т.е. ты кансельнул пубключ и когда проверяющий сделает P + R, ключ P вычтется через R.
источник

OA

Oleg Andreev in ББ-чат
Шаг 3. В предыдущем шаге ты вычел из коммитмента R публичный ключ чтоб наебать проверяющего. Чтобы это предотвратить добавим такой финт: ты сначала посылаешь коммитмент R = r*G проверяющему, а он после этого высылает тебе рандомное число-челлендж c, которое определяет сколько раз нужно добавить пубключ P (в шаге 2 это был просто 1 раз).

Prover: r <- random; sends R = r*G
Verifier c <- random; sends c;
Prover: computes s = x*c + r, sends s.
Verifier: checks s*G == c*P + R
источник

OA

Oleg Andreev in ББ-чат
Т.е. чтобы наебать проверяющего тебе нужно заранее вычесть из R публичный ключ ровно c раз. Но c тебе выдают случайное и только после того как ты посчитал R и больше не можешь его поменять. Т.е. тебе нужно угадать c с шансом 2^-256
источник

OA

Oleg Andreev in ББ-чат
Шаг 4. Как это сделать неинтерактивным и привязанным к конкретному сообщению?
Оч просто: c = Hash(message, R, P)

Прувер и верифаер оба договариваются о надежной хеш-функции, которой оба доверяют, и каждый независимо вычисляет c как хеш от R, плюс контекст типа мессаджа, публичного ключа и т.п. Если прувер захочет наебать всех, он должен перебирать разные варианты c, чтобы вычесть c*P из R, и после хеширования получить ровно c. Т.е. совершить first preimage attack на хеш-функцию.
источник

OA

Oleg Andreev in ББ-чат
Итого: ты получаешь схему подписей имени Клауса Шнорра.
источник

OA

Oleg Andreev in ББ-чат
ECDSA (который в биткоине щас) работает по тому же принципу, но через жопу чтоб обойти мудацкий патент Шнорра который экспайрнулся только в 2008 году
источник

OA

Oleg Andreev in ББ-чат
Если лень читать выше - есть видео про то же самое
источник

OA

Oleg Andreev in ББ-чат
источник