Форум сайта python.su
целью является нахождение двух чисел:
a=(g**k)%p
b=((M-x*a)*k**(-1))%(p-1)
Офлайн
Возможно, нужно работать со строками, а не с числами. Но по криптографическим алгоритмам я не подскажу.
Офлайн
А не подскажешь как вот это переписать в питон?
int power(int t, int k) {
// exponentiate integer t to power k
int res = 1;
while (k) {
if (k & 1) res *= t;
t *= t;
k >>= 1;
}
return res;
}
это на С - ее не совсем поняла как прописывать тип переменых - что long
Офлайн
Ты себе представляешь, что это за число, 140405385067992828921334150816**999322873936262740684006202459? Сколько знаков оно будет содержать? Я думаю, элементарных частиц в нашей метагалактике будет значительно, на много порядков меньше (это не шутка). Пытаться переписать питоновскую операцию ** смешно как-то, к тому же “самопальная” функция ** будет значительно медленнее, чем родная операция Питона. Нужно работать со строками.
Офлайн
я совсем не умеюпрогать на питоне…не говоря уже про работу со строками))
Офлайн
Попробуй сформулировать свою задачу полностью, тщательно, со всей предысторией и подробностями. В отдельной теме. Вполне возможно, что здесь есть люди, знакомые с криптографией.
Офлайн
хорошо)сейчас попробую)
Офлайн