Сейчас на форуме: rmn, exp50848 (+7 невидимых)

 eXeL@B —› Основной форум —› Идентифицировать алгоритм (ECC)
Посл.ответ Сообщение

Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 23 апреля 2013 18:58 · Поправил: r_e
· Личное сообщение · #1

Есть такие наборы констант
1. 0x00, 0x01, 0x04, 0x05, 0x10, 0x11, 0x14, 0x15, 0x40...

Кривая sect163k1.
Первый набор, возможно, относится к декомпрессии точек, либо конвертации сжатой точки в монтгомери. Возможно, что какие-то из наборов - предпросчет x^k mod n. В любом случае все наборы относятся к низкоуровневой математике. Верхнеуровневое АПИ я уже определил, а вот с низкоуровневым - затык.
Типовое использование данных наборов:
Dst[i] = Table[Src[i] & 0xf]; // по ниблу возвращается байт из набора

Если вдруг вы нашли знакомые цифры - помогите определить алго.

-----
старый пень





Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 23 апреля 2013 19:03
· Личное сообщение · #2

http://rt-thread.googlecode.com/svn-history/r1243/trunk/components/dfs/filesystems/uffs/src/uffs/uffs_ecc.c
static const u8 line_parity_prime_tbl[16] = {
0x00, 0x01, 0x04, 0x05, 0x10, 0x11, 0x14, 0x15, 0x40, 0x41, 0x44, 0x45, 0x50, 0x51, 0x54, 0x55
};

| Сообщение посчитали полезным: r_e, Abraham

Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 23 апреля 2013 19:09 · Поправил: r_e
· Личное сообщение · #3

reversecode
Ога, спасибо. Осталось только увязать это с эллиптикой вместо кодов коррекции. Хотя, приведенный буфер совпадает полностью.

Update:
--> Есть более релевантная ссылка <--.
А именно, static void elt_square_to_wide(u8 *d, u8 *a)

Алго полностью идентифицирован. Это возведение в квадрат в GF2m с указанным выше полиномом.

-----
старый пень



 eXeL@B —› Основной форум —› Идентифицировать алгоритм (ECC)
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати