跳到主要内容

千葉大学 理学研究科 基盤理学専攻 数学・情報数理学コース 2016年8月実施 専門 B11

Author​

祭音Myyura (co-authored with GPT 6 Astra)

Description​

異なる奇素数 p,qp,q に対し n=pqn=pq とし、e1,e2e_1,e_2 は相異なる素数で、どちらも φ(n)\varphi(n) と互いに素とする。f(x,e)=xe mod nf(x,e)=x^e\bmod n と定める。

0<m<n,gcd⁡(m,n)=10<m<n,\gcd(m,n)=1 のとき、n,e1,e2,f(m,e1),f(m,e2)n,e_1,e_2,f(m,e_1),f(m,e_2) を入力として mm を出力する多項式時間アルゴリズムが存在することを示せ。互いに素な整数の逆元を多項式時間で計算できることは用いてよい。

题目描述​

令 n=pqn=pq,其中 p,qp,q 为不同奇素数。e1,e2e_1,e_2 为不同素数,均与 φ(n)\varphi(n) 互素。设 0<m<n0<m<n 且 gcd⁡(m,n)=1\gcd(m,n)=1。

证明:由 n,e1,e2,me1 mod n,me2 mod nn,e_1,e_2,m^{e_1}\bmod n,m^{e_2}\bmod n 可以在多项式时间内恢复 mm。允许使用模逆元的多项式时间算法。

Kai​

暗号文を c1=me1 mod n,c2=me2 mod nc_1=m^{e_1}\bmod n,c_2=m^{e_2}\bmod n とする。相異なる素数 e1,e2e_1,e_2 は互いに素なので、拡張 Euclid 法で

ue1+ve2=1ue_1+ve_2=1

を満たす整数 u,vu,v を求める。mm と nn は互いに素だから c1,c2c_1,c_2 も法 nn で可逆であり、負の冪は模逆元の冪として計算できる。

そこで

M=c1uc2v mod nM=c_1^u c_2^v\bmod n

を 0≤M<n0\le M<n の代表元として出力する。すると

M≡mue1+ve2=m(modn).M\equiv m^{ue_1+ve_2}=m\pmod n.

mm も同じ範囲にあるので M=mM=m。

拡張 Euclid 法、模逆元、二進法による繰り返し二乗法はいずれも入力のビット長の多項式時間で実行できる。従って求めるアルゴリズムは多項式時間である。