Естественные науки

Вопрос к математикам от неуча...

Здравствуйте. Я плохо знаю математику. Но мне нужно кое-что узнать. Не знаю, возможно ли то что я опишу далее... Итак, иметься пятизначное число 13890 (можно любое) и двухзначное от 1 до 33, пусть будет 23. Над этими числами нужно совершить какие-то математические операции и получить ещё одно число от 1 до 33, допустим это 12. Далее мы передаем число 13890 и 12 другому человеку. Сообщаем ему алгоритм, по которому получили число 12. Можно ли обратно получить число 23, совершая мат. операции над числом 13890 и 12? Если можно, то как? Помогите пожалуйста, очень нужно. Надеюсь, вы поняли что я тут написал...
Не всегда.
Если среди ваших операций не было чего-то типа (23*2 + 4)*23 + 2)*45 и т. д то скорее всего можно
Если же такие операции были (когда производилось умножение на исходное число), то Вы могли получить выражение (после раскрытия всех скобок) типа:
a₀ + a₁x + a₂x^2 + a₃x^3 + .+ aₙx^n = 12

А это уравнение в общем виде не имеет решения, и потому даже получив на руки числа 13890 и 12 тот другой человек ничего с ними не сможет сделать :) Ему придётся просто сидеть и перебирать возможные варианты, надеясь нарваться на правильный.

Читайте https://ru.wikipedia.org/wiki/Равенство_классов_P_и_NP

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

Я так понимаю Вы тоже хотите создать свою систему шифрования :) не следует заморачиваться, воспользуйтесь уже готовой ;)
Александра Крылова
Александра Крылова
42 958
Лучший ответ
Анастасия Родионова Большое спасибо. Немного начал понимать.. Да, хотел сделать что-то вроде своей системы шифрования на C#. Готовые системы это хорошо, но самый кайф, это когда сам что-то создаёшь. Пусть и немного примитивное))
Да. Нужно совершить те же математические действия, но в обратном порядке
Анастасия Родионова Ну это логично)) Вот какие действия, для меня загадка...
Я тоже олух царя небесного