第2012天:模運算

#每日三件事,第2012天#

模運算就是一個整數(shù)m,對模數(shù)n,計算余數(shù)。即:m mod n。模運算有如下性質(zhì):

(1)若q|(a-b),則a≡b (mod q) , 11 ≡4 (mod 7) , 18 ≡ 4(mod 7)
(2)(a mod q) = (b mod q) 意味a≡b mod q
(3)對稱性,a≡b mod q等價于b≡a mod q
(4)傳遞性,若a≡b mod q 且b≡c mod q ,則a≡c mod q

模運算的結(jié)果永遠(yuǎn)在[0 -(n-1)]之間。

模運算是針對整數(shù)的運算。那么對于分?jǐn)?shù)和其他一些特殊情況,比如1/2,2^{1/2},怎么計算呢?

1.分?jǐn)?shù)求模運算

比如計算1/2 \ mod\ 7, 可以寫成2^{-1} \ mod \ 7 ,根據(jù)費馬小定理,a和p互素,則有a^{p-1} = 1 \ mod(p) ,2^{-1}mod7=2^{-1} * 2^6 mod7=2^5mod7=4

前提條件是a和p互素。

  1. 分?jǐn)?shù)冪次方求模運算

比如計算\sqrt2mod 7,同理使用費馬小定理,a和p互素,則有a^{p-1} = 1 \ mod(p) ,乘以2^6則有:\sqrt2 mod 7 = 2^{1/2}*2^6 mod 7 = 2^3 mod 7=1

在計算二次模余方程的根時,先計算是否是平方剩余,利用公式Z^{(p-1)/2},如果結(jié)果為1,則是平方剩余,有平方根;否則沒有。平方根為±Z^{(p+1)/4},(p+1)/4不一定是整數(shù),出現(xiàn)分?jǐn)?shù)的可能性極大。因此需要根據(jù)費馬小定理來計算冪為分?jǐn)?shù)的模。

此為最近學(xué)習(xí)公鑰密碼算法時的一點體會。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容