- 282 名前:梅どぶろく ◆21Da3ggG3M mailto:sage [04/07/21 00:50]
- 7/12
M1,M2はb+1ビット、a,xはb+2ビットだから M1*aのビットは(b+1)+(b+2) これと、M2*xもあるから (M1*a)+(M2*x)のビットは(2b+3)+1=2b+4ビット つまり、(M1*a)+(M2*x)は最大で2b+4ビットになる ∴n>2^(2b+5)であればよい これらより、nは2b+5ビットになる 一度に送れる平文は2bビットだから 2bビット毎に平文を暗号化する場合暗号文は2b+5ビットになる 例 M1,M2それぞれが64ビット(一度に送れる平文は128ビット)だとすると 暗号文は2*64+5=133ビットになります。 e*((a*M1)+(x*M2))<nについて 上の方法により (a*M1)+(x*M2)<nのとき 左辺は2b+4ビット eはビット数がnと同じでgcd(e,n)=1になるように選べばいいから e*((a*M1)+(x*M2))のビット数は (2b+5)+(2b+4)=4b+9≒4b だから、e*((a*M1)+(x*M2))<nの心配をする必要はない
|

|