RSA暗号は以下のアルゴリズムに基づいている:
鍵生成
n=pqとし,φ=(p−1)(q−1)とする.
1<e<φの範囲でgcd(e,φ)=1となる整数eを決定する.
暗号化
平文を[0,n−1]中の整数mとする. 平文は以下の方法で[0,n−1]中の整数に暗号化される.
c=memodnとし,cを暗号文とする.
復号
ed=1modφとなるdを計算する.m=cdmodnが元の平文となる.
さてあるeとmについてmemodn=mとなることがある. 以下,memodn=mとなるmを公然の平文と呼ぶことにする.
公開鍵の一部eを選ぶときには, 公然の平文が多くならないという点が重要である. 例えばp=19,q=37とする. このときn=19×37=703でありφ=18×36=648である. もしe=181とすると,gcd(181,648)=1であるが, 全ての平文m(0≤m≤n−1)が公然の平文となってしまう. eについてどのような選び方をしても, 必ずいくつかは公然の平文が存在する. 従って, 公然の平文の数を最小化するようにeを選ぶのは重要である.
さて,p=1009,q=3643とする. このとき, 公然の平文の個数が最小となる全てのeの総和を求めよ (ただし1<e<φ(1009,3643)かつgcd(e,φ)=1).