LINUX.ORG.RU
ФорумTalks

[математикам]что такое mod?


0

1

в методичке по криптографии постоянно встречаются формулы вида этой:

d = e^-1 (mod p-1)

Что такое mod? Простой остаток от деления e^-1 на p-1?

Судя по всему нет, т.к. вот пример из той же методички:

d = e^-1 (mod p-1) = 42239^-1 (mod(52631-1) = 32229

Как это считается?

p.s. Да, математика в институте была >5 лет назад, и она вовсе не мой конек.

★★★★★

а вроде всегда это был остаток от деления. число, не превосходящее делитель.

gunja
()

если по простому, то это как будто "зацикленное" отнимание. т.е. какое останется число k, если от числа n отнять число m максимум полных раз.
например. 11 mod 3 = 2. число 11 это 3+3+3+2. результат - 2. 61 mod 26 = 9. 61 это 26+26+9.

//читаю лекции по криптографии у людей с большими провалами в математике, даже поля Галуа и теорему Ейлера можно объяснить на пальцах, ящитаю

val-amart ★★★★★
()

про (mod p-1) уже сказали, но

> d = e^-1 (mod p-1) = 42239^-1 (mod(52631-1) = 32229

либо очепятка, либо ошибка:

a^{-1}=b(mod c) если a*b=1(mod c), но у тут

42239*32229=45781(mod 52630)

pupok ★★
()

кури теорию чисел

irq
()

Ужас. Закрывай методичку, открывай теорию чисел. А то что будет, когда дискретные логарифмы (ЕМНИП, ГОСТовское шифрование на них основано, но тут могу ошибаться, лет 10 криптографию не трогал) встретишь и т.д.

redgremlin ★★★★★
()
Ответ на: комментарий от val-amart

ОМГ, так это ты подпускаешь людей без знания математики к криптографии?

spunky ★★
()
Ответ на: комментарий от val-amart

> //читаю лекции по криптографии у людей с большими провалами в математике, даже поля Галуа и теорему Ейлера можно объяснить на пальцах, ящитаю

Объясните на пальцах БПФ. Не что он делает, а КАК.

Ну мля, я хочу понять, как всё-таки эти формулы с интегралами в циклы расписать чтобы ему на вход массив с PCM, на выходе массив с частотами.

tx
()

Здесь либо порядок операций нужно смотреть, либо ограничение представления машинного числа в памяти компа. Положительное integer принимает значения от 0 до 32767. Ну, типа тогда 0-1=32767.

the_mozart
()
Ответ на: комментарий от val-amart

Ну что такое остаток я понимаю, но как его найти в данном примере? Ведь e^{-1} явно меньше чем (p-1)?

p.s. эта формула из "трехподходного протокола Шамира"

Turbid ★★★★★
() автор топика

>Как это считается?

Самое простое объяснение: в методичке опечатка, пропущена какая-то буква перед "-1".

DonkeyHot ★★★★★
()

Второе объяснение - вопрос в том, что такое e^-1 в смысле (mod n), и как его вычислить.

DonkeyHot ★★★★★
()

Это таки точно опечатка. У меня получается 34229, что слишком похоже на 32229, чтобы быть случайным.

DonkeyHot ★★★★★
()
Ответ на: комментарий от DonkeyHot

Т.е. получается: d = e^{-1} (mod p-1) = 42239^{-1} (mod(52631-1) = 34229

Еще раз, для малограмотных, объясните как взять остаток от деления 42239^{-1} = 2.36748029073e-05 на 52630?

Turbid ★★★★★
() автор топика
Ответ на: комментарий от Turbid

>как взять остаток от деления 42239^{-1}

На самом деле mod(n), означает не остаток от деления(это только метод вычисления) а выполнение операций в соотв. кольце (или какой другой структуре -- я основательно позабыл) - в котором не-целых чисел вообще нет, т.ч. e-05 там получить никак нельзя. Т.о. из определения ^-1: A^-1 (mod N) = B, такое, что A * B (mod n) = 1, следует немножко другое число. Как его вычислить и правда не знаю (:for i in range() помог:). Опыт показывает, что это 34229, т.к. *42239 mod (52630) == 1.

DonkeyHot ★★★★★
()
Ответ на: комментарий от DonkeyHot

Спасибо, тогда тоже пока напишу скрипт, пусть ищет.

Turbid ★★★★★
() автор топика
Ответ на: комментарий от DonkeyHot

>На самом деле mod(n), означает не остаток от деления(это только метод вычисления) а выполнение операций в соотв. кольце

Конечное поле же

ЗЫ: топикстартеру читать про кольца, поля, поля Галуа, модульную арифметику

Corey
()
Ответ на: комментарий от proDOOMman

RSA уже сделал, теперь вот протокол Шамира :-)

Turbid ★★★★★
() автор топика
Ответ на: комментарий от DonkeyHot

> выполнение операций в соотв. кольце (или какой другой структуре -- я основательно позабыл)

кольце

Joe_Bishop
()
Ответ на: комментарий от val-amart

>>даже поля Галуа и теорему Эйлера можно объяснить на пальцах, ящитаю

+1000 Только 99% вкуривших эту простоту математиков - трусливые кретины - умышленно скрывают эту простоту от якобы непосвященных, запутывают ненаглядными корявыми формулировками, монополизируя науку, боясь разоблачения. Эхх.. если бы все преподы объясняли бы как Арнольд.

gkrellm
()
Ответ на: комментарий от dimon555

в данном случае 42239^{-1} != 2.36748029073e-05 !!!

x=42239^(-1) mod N означает, что x- такое число которое в кольце вычетов по модулю N дает единицу.

т.е. (42239*(42239^-1))mod N = 1

при этом x- целое число не превышающее N. алгоритм поиска вспоминать лениво, но было еще что-то кроме перебора кажется.

iero
()
Ответ на: комментарий от gkrellm

> Только 99% вкуривших эту простоту математиков - трусливые кретины - умышленно скрывают эту простоту от якобы непосвященных, запутывают ненаглядными корявыми формулировками, монополизируя науку, боясь разоблачения.

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

Joe_Bishop
()
Ответ на: комментарий от Turbid

Может имеется в виду обратный элемент в поле или кольце вычетов? То есть 42239^{-1} = 52630 - 42239. Ибо в этих кольцах никаких нецелых чисел нини. Короче форматирование и саму методичку в студию

maggotroot
()
Ответ на: комментарий от maggotroot

> Может имеется в виду обратный элемент в поле или кольце вычетов? То есть 42239^{-1} = 52630 - 42239.

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

dilmah ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.