RSA 암호법의 안전성은, 덫 문으로 사용되는 큰 정수 N을 소인수분해하는 일이 매우 어렵다는 사실에 기반을 두고 있기 때문에, RSA 암호법을 이용하여 암호문을 전달할 때와 그 암호문을 공격할 때에는 합성수를 소인수분해하는 방법이 매우 중요한 문제이다. 100자리 이상의 큰 정수 N을 소인수분해하는 지금까지 알려진 가장 빠른 알고리즘은 일반 수체 체(General Number Field Sieve, GNFS) 알고리즘이지만, 현대의 공개키 암호법에서 자주 사용되는 20~25 자리의 수(64.~83 비트)정도의 소인수를 찾아내는 가장 빠른 알고리즘은 Lenstra의 타원곡선법이다. 그러나 Lenstra의 방법은 실행시간의 대부분을 $M{\cdot}P$ mod N을 계산하는 과정에서 소비하게 되었기 때문에, Montgomery와 Koyama는 $M{\cdot}P$ mod N을 고속으로 계산하는 방법을 제안하였다. 본 논문에서는 Montgomery와 Koyama의 방법을 분하여, 최적의 매개변수를 선택하고 곱셈횟수를 줄여서 구축한 효율적인 $M{\cdot}P$ mod N 계산 알고리즘을 제안한다. 분석결과, Montgomery와 Koyama의 알고리즘보다 제안한 알고리즘이 H/W에서의 구현시간을 약 20% 단축하였다.