iT邦幫忙

2023 iThome 鐵人賽

DAY 29
0
Security

資安小白的密碼學從0到1-CryptoHack平台解題紀錄系列 第 30

【Day 29】Publick-Key CryptoGraphy01-RSA基礎-模運算

  • 分享至 

  • xImage
  •  

前言

接下來要踏入RSA-非對稱密碼
https://ithelp.ithome.com.tw/upload/images/20231009/20162613DmYViFDpBu.png

https://ithelp.ithome.com.tw/upload/images/20231009/20162613HpGIAPgkKp.png

而RSA通常都會牽扯到我們之前學的模運算,所以我們會先來簡單複習一下,之後解2題

https://ithelp.ithome.com.tw/upload/images/20231009/20162613xliBmOVByL.png

複習

模運算

  • 表示為a mod n
    a代表被取模的數,n是模數,運算結果為a除以n的餘數

  • e.g. 18 mod 4 = 2 因為18除以4的餘數為2

  • python表示
    a = 某數,e = 平方幾次,n = 模數

pow(a, e, n)

e.g. 3的2次方mod4 = 1

pow(3, 2, 4)
  • output
    https://ithelp.ithome.com.tw/upload/images/20231009/20162613zH46eHBWAk.png

今天了解這樣應該就ok了!
來解題吧

Writeup

RSA Starter 1

題目

網址 : https://cryptohack.org/courses/public-key/rsa_starter_1/
https://ithelp.ithome.com.tw/upload/images/20231009/20162613DuHGzHP7uG.png

思路

題目在教學模運算的python用法,也就是剛剛複習到的
組成為pow(base, exponent, modulus)
base = 基數, exponent = 指數, modulus = 模數

就英文翻譯拉,我英文不好,所以紀錄一下( •̀ ω •́ )y

解法

題目要求101^17 mod 22663
所以直接這樣寫

print(pow(101, 17, 22663))
  • output
    https://ithelp.ithome.com.tw/upload/images/20231009/20162613rNyh5EIc5n.png

flag : 19906

RSA Starter 2

題目

網址 : https://cryptohack.org/courses/public-key/rsa_starter_2/
https://ithelp.ithome.com.tw/upload/images/20231009/20162613m8JBnYIW1b.png

思路

透過這題知道
RSA加密是指使用指數(e)和模數(N)對訊息進行模運算
而模數通常是兩個指數的乘積
-> N = q * p
且e常見的值為
-> e = 0x10001 or 65537
而(N,e)組在一起,形成RSA公鑰

解法

題目要求,利用題目給的e、p、q,為數字加密
p跟q為質數(prime)
-> number = 12, e = 65537, p = 17, q = 23
所以先求出N後,利用pow()來加密

p, q = 17, 23
e = 65537
number = 12
N = p*q
print(pow(number, e, N))
  • output
    https://ithelp.ithome.com.tw/upload/images/20231009/20162613hGXxDkavHo.png

flag : 301

統整

模運算python呈現

  • pow(base, exponent, modulus)
    base = 基數, exponent = 指數, modulus = 模數
  • 101^17 mod 22663
    print(pow(101, 17, 22663))

RSA加密是指使用指數(e)和模數(N)對訊息進行模運算

  • N = q * p ( p&q 為prime )
  • e = 0x10001 or 65537 (通常)
  • (N,e)組在一起,形成RSA公鑰

小結

今天為簡單的非對稱小入門,恩..大概就醬XD


上一篇
【Day 28】對稱式密碼 - AES + 5大Mode 筆記
下一篇
【Day 30】 30天統整&心得
系列文
資安小白的密碼學從0到1-CryptoHack平台解題紀錄31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言