소스 검색

Implement `modInv`

DricomDragon 5 년 전
부모
커밋
0bb9f4fb7f
1개의 변경된 파일3개의 추가작업 그리고 0개의 파일을 삭제
  1. 3 0
      tp/rsa/main.hs

+ 3 - 0
tp/rsa/main.hs

@@ -67,3 +67,6 @@ choosePrime b = head $ dropWhile (<= b) primeinf
 euclide::Int -> Int -> (Int, Int, Int)
 euclide a 0 = (a, 1, 0)
 euclide a b = let (d', u', v') = euclide b (mod a b) in (d', v', u' - (div a b) * v')
+
+modInv e n = let (_, d, _) = euclide e n in d
+