Онлајн решавач дискретног логаритма
Пронађите најмањи експонент x за g^x ≡ h (mod p). Исцрпна претрага до p=1.000.000, локално у прегледачу. Обрада се обавља локално у прегледачу.
Почните да користите
Шта алат ради
Овај алат решава једначину дискретног логаритма g^x ≡ h (mod p) тако што проверава x од 0 до p-1. Подразумевани пример је g=2, h=8, p=13, где је решење x=3, јер је 2^3 = 8, а 8 mod 13 = 8.
Како функционише израчунавање
Претрага почиње са вредношћу 1 за експонент 0. Затим се вредност ажурира као вредност = (вредност * g) mod p. Вредност h се нормализује по модулу p, тако да се негативне или веће вредности упоређују по њиховом остатку. Ако се не пронађе поклапање током p провера, алат јавља да решење не постоји.
Ограничења и напомене
Модул не мора бити прост број, али алат не доказује да g генерише мултипликативну групу. Са вредностима које нису узајамно просте, секвенца може ући у краћи циклус, али ограничена исцрпна претрага и даље враћа први проверени експонент када решење постоји. Ово је образовна исцрпна претрага сложености O(p), а не беби-скорак, гигант-скорак, Полард-ро или криптографска услуга. Ограничење модула на милион спречава превелико оптерећење главне нити; прави криптографски модули су намерно неизводљиви овде. Израчунавање се врши локално, без сервера или вештачке интелигенције.
Примери и провера
Унесите g=2, h=8, p=13 и добићете x=3. Проверите: 2^3 = 8, па је 8 mod 13 = 8. За p=13, g=2, h=9, решење је x=8, јер је 2^8 = 256, а 256 mod 13 = 9 (пошто је 13*19=247, 256-247=9).
Честа питања
Да ли је модул обавезно прост број?
Не, модул може бити било који цео број између 2 и 1.000.000. Алат не захтева да је p прост, али ако g и p нису узајамно прости, секвенца може имати краћи циклус, али потпуна претрага и даље налази најмањи ненегативни експонент ако решење постоји.
Шта се дешава ако унесем негативно h?
Вредност h се нормализује по модулу p, што значи да се негативна вредност претвара у одговарајући позитивни остатак. На пример, ако је p=13 и h=-5, то је исто као h=8, јер је -5 mod 13 = 8.
Да ли је ово безбедно за криптографске сврхе?
Не. Овај алат је образовни и ради исцрпну претрагу до милион провера. Прави криптографски проблеми дискретног логаритма користе модуле од стотина битова, што је немогуће решити овим методом. Резултат не представља доказ слабости било које криптографске групе.
Контролна листа
- Проверите да ли су g, h и p цели бројеви.
- Потврдите да је p у опсегу 2–1.000.000.
- Разумите да је резултат најмањи x у опсегу 0..p-1.
- За озбиљан рад, независно проверите конгруенцију.
Поља g и h су обавезна и морају садржати безбедне целе бројеве од -9007199254740991 до 9007199254740991. Модул p мора бити цео број од 2 до 1000000. Основа и циљна вредност своде се по модулу p пре претраге.
Обрада се обавља локално у прегледачу.