请写出下面解题的过程from CryptoUtilnumber import from secret import flagp q = getPrime64 getPrime64P = intstrp + strqQ = intstrq + strpPP = intstrP + strQQQ = intstrQ + strPassert isPrimePP and isPrimeQQn = PP
题目描述:给定两个 $64$ 位质数 $p, q$,构造 $P=p\times10^{64}+q$,$Q=q\times10^{64}+p$,如果 $PQ$ 和 $QP$ 都是质数,则令 $n=PQ$,$m$ 是一个明文,$c\equiv m^{65537}\pmod{n}$。求 $n$ 和 $c$ 的值。
解题思路:
-
根据给定的 $p,q$ 构造 $P$ 和 $Q$。
-
判断 $PP$ 和 $QQ$ 是否为质数,如果是则令 $n=PP\times QQ$。
-
将明文 $m$ 转化为整数,并使用快速幂求 $c$。
-
输出 $n$ 和 $c$ 的值。
完整代码如下:
原文地址: http://www.cveoy.top/t/topic/fOH0 著作权归作者所有。请勿转载和采集!