나는 파이썬에 있습니다확장 유클리드 알고리즘과 역수의 개념은
우리가 알고e*d == 1%etf
(E) 및 (ETF) 및 (d)에 확장 유클리드 알고리즘과 의 개념을 사용하여 발견해야한다 모듈러 산술의 곱셈 역
d = (1/e)%etf
d = (e**-1)%etf
글로벌 잘못된 번호를 생성, 설명 위의 규칙을 사용하여 나를 (d)를 찾을 수 있도록 도와주십시오.
는솔루션 아래 그림 (Modular multiplicative inverse function in Python) 는
e*d == 1 (mod etf)
d = (e**(etf-2)) % etf
d = pow(e,etf-2,etf)
내가 다른 곳에서 몇 가지 실수를하고 있습니까 나에게 잘못 계산 결과를 제공? 이 계산은 괜찮습니까?
내가 대답에 확장 된 유클리드 알고리즘의 구현을 준 별도의 질문 : http://stackoverflow.com/a/11703184 –
잘 @ 우드워드 내면을 보면 입력의 매개 변수 하나만 보입니다. d를 계산하려면 변수 etf와 e를 알아야한다고 가정합니다. 왜냐하면 문제는 (d * e == 1 % etf)이기 때문입니다. – iuri
d = pow (e, etf-2, etf)는 etf가 소수 일 때만 작동합니다. – phkahler