日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一些Crypto的基础题

發(fā)布時間:2024/3/26 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一些Crypto的基础题 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

    • 前言
    • 一:一眼就解密 base64 SElTX1NUUklOR30=
    • 二:看我回旋踢 synt{:凱撒密碼
    • 三:password
    • 四:變異凱撒 ASCII
    • 五:Quoted-printable =E9=82=A3
    • 六 Rabbit加密 U2FsdGVkX1/
    • 七:籬笆墻的影子:柵欄加密
    • 八:RSA
    • 九:丟失的MD5 unicode
    • 十:Alice與Bob素數(shù)分解 使用yafu工具,md5
    • 十一:rsarsa
    • 十二:凱撒大帝
    • 十三:windows系統(tǒng)密碼 md5加密 :::
    • 十四:信息化時代下的步伐 數(shù)字轉(zhuǎn)中文
    • 十五:傳統(tǒng)知識+古典密碼 柵欄密碼與凱撒密碼 辛卯,癸巳,丙戌,辛未,庚辰,癸酉,己卯,癸巳。
    • 十六:凱撒?替換?呵呵 暴力破解網(wǎng)站
    • 十七 豬圈密碼
    • 十八:RSA1
      • 歐拉函數(shù)
      • 歐拉定理
      • 模反元素
      • RSA算法
    • 十九:old fashion 爆破工具
    • 二十 js表情包轉(zhuǎn)換
    • 二十一:Cipher
    • 二十二:摩斯密碼01版
    • 二十三 HEX密碼 666c61677b57336c63306d655f54305f4354467d
    • 二十四 base family
    • 二十三 HEX密碼 666c61677b57336c63306d655f54305f4354467d
    • 二十四 base family

前言

并非完全的原創(chuàng),有些是參考了網(wǎng)上的wp,在這里做個整理,如果侵權(quán)可以私信聯(lián)系。

一:一眼就解密 base64 SElTX1NUUklOR30=

ZmxhZ3tUSEVfRkxBR19PRl9USElTX1NUUklOR30=

有等于號是bace64的特征

CTF在線工具-在線base編碼|在線base解碼|base16編碼|base32編碼|base64編碼 (hiencode.com)

二:看我回旋踢 synt{:凱撒密碼

密碼:synt{5pq1004q-86n5-46q8-o720-oro5on0417r1}

此為凱撒密碼,網(wǎng)址為:

凱撒密碼在線計算-ME2在線工具 (metools.info)

為什么加密位移為13:一個個試出來,如果顯示為flag,則加密位移為13

三:password

這個題目簡直有毒,但是看題解分析密碼有十個,張三19900315正好十個數(shù)字

flag{zs19900315}

四:變異凱撒 ASCII

在密碼學(xué)中,愷撒密碼(英語:Caesar cipher),或稱愷撒加密、愷撒變換、變換加密,是一種最簡單且最廣為人知的加密技術(shù)。它是一種替換加密的技術(shù),明文中的所有字母都在字母表上向后(或向前)按照一個固定數(shù)目進(jìn)行偏移后被替換成密文。例如,當(dāng)偏移量是3的時候,所有的字母A將被替換成D,B變成E,以此類推。

前三個字母afZ_對應(yīng)flag,而凱撒密碼也意味著字母的對應(yīng)是符合順序規(guī)律的

我們查看ASCII表

a:97 f:102 Z:90 _:95

f:102 l:108 a:97 g:103

分別相差:5 6 7 8

afZ_r9VYfScOeO_UL^RWUc

寫出腳本

ciphertext = 'afZ_r9VYfScOeO_UL^RWUc' j = 5 for i in ciphertext:print(chr(ord(i) + j), end='')j += 1

最后求出flag:flag{Caesar_variation}

五:Quoted-printable =E9=82=A3

打開看到是這個樣子

網(wǎng)絡(luò)管理員在線工具 - Quoted-Printable (mxcz.net)

六 Rabbit加密 U2FsdGVkX1/

Rabbit加密-Rabbit解密-在線Rabbit加密解密工具 (jsons.cn)

七:籬笆墻的影子:柵欄加密

felhaagv{ewtehtehfilnakgw}

柵欄密碼在線加密解密 - 千千秀字 (qqxiuzi.cn)

每組數(shù)字為2加密后:

flag{wethinkwehavetheflag}

暴力破解

柵欄密碼(Rail-fence Cipher)就是把要加密的明文分成N個一組,然后把每組的第1個字符組合,每組第2個字符組合…每組的第N(最后一個分組可能不足N個)個字符組合,最后把他們?nèi)窟B接起來就是密文,這里以2欄柵欄加密為例。

felhaagv{ewtehtehfilnakgw}

flag,f與l之間有一個字母,所以柵欄數(shù)目為2,我們直接分離后變成

flag{wethinkw

ehavetheflag}

八:RSA

此題主要了解RSA如何使用

打開RSAtools,輸入的e要轉(zhuǎn)換為16進(jìn)制,輸入R和Q并按CAL.D即可得到D

flag{125631357777427553}

九:丟失的MD5 unicode

打開來發(fā)現(xiàn)是python代碼

我們把語法修正一下

import hashlib for i in range(32,127):for j in range(32,127):for k in range(32,127):m=hashlib.md5()m.update('TASC'+chr(i)+'O3RJMV'+chr(j)+'WDJKX'+chr(k)+'ZM')des=m.hexdigest()if 'e9032' in des and 'da' in des and '911513' in des:print(des)

運行后發(fā)現(xiàn)報錯

就是在使用hashing之前需要對unicode進(jìn)行編碼

將字符轉(zhuǎn)化為utf-8即可

import hashlib for i in range(32,127):for j in range(32,127):for k in range(32,127):m=hashlib.md5()m.update('TASC'.encode('utf-8')+chr(i).encode('utf-8')+'O3RJMV'.encode('utf-8')+chr(j).encode('utf-8')+'WDJKX'.encode('utf-8')+chr(k).encode('utf-8')+'ZM'.encode('utf-8'))des=m.hexdigest()if 'e9032' in des and 'da' in des and '911513' in des:print(des)

十:Alice與Bob素數(shù)分解 使用yafu工具,md5

題目描述

使用指令

下一步:md5的32位小寫hash,意思是進(jìn)行md5加密且選擇32位的那一個

網(wǎng)站

md5在線解密破解,md5解密加密 (cmd5.com)

101999 966233

直接輸入即可,不需要選擇類型

十一:rsarsa

題目描述:

一般情況下都是選擇十進(jìn)制,rsa工具要求出D

得到D,一定要黏貼完成

56632047571190660567520341028861194862411428416862507034762587229995138605649836960220619903456392752115943299335385163216233744624623848874235303309636393446736347238627793022725260986466957974753004129210680401432377444984195145009801967391196615524488853620232925992387563270746297909112117451398527453977

給出了C,說明需要用到python的快速求冪取模運算

p=9648423029010515676590551740010426534945737639235739800643989352039852507298491399561035009163427050370107570733633350911691280297777160200625281665378483 q=11874843837980297032092405848653656852760910154543380907650040190704283358909208578251063047732443992230647903887510065547947313543299303261986053486569407 n=p*q C=83208298995174604174773590298203639360540024871256126892889661345742403314929861939100492666605647316646576486526217457006376842280869728581726746401583705899941768214138742259689334840735633553053887641847651173776251820293087212885670180367406807406765923638973161375817392737747832762751690104423869019034 d=566320475711906605675203410288611948624114284168625070347625872299951386056498369602206199034563927521159432993353851632162337446246238488742353033096363934467363472386277930227252609864669579747530041292106804014323774449841951450098019673911966155 M=pow(C,d,n) print(M)

最后得到

5577446633554466577768879988

十二:凱撒大帝

看題目意思是用凱撒解密將FRPHEVGL解密后會得到一個我們熟悉的單詞,然后同解密的方式加密ComeChina可以得到flag

然后腦袋想想估計不會是很復(fù)雜的偏移,直接拖到網(wǎng)站好了

一個個解密在偏移量到13的時候出現(xiàn)單詞SECURITY,覺得就是他了,然后把comeChina進(jìn)行加密得到flag

十三:windows系統(tǒng)密碼 md5加密 :::

Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::

密碼是:與:::之間,windows密碼一般是md5加密

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-fmQYgJa6-1649124329248)(https://raw.githubusercontent.com/lllwky/botany/main/img/image-20220331235441007.png)]

每個密碼都試一下得到flag

十四:信息化時代下的步伐 數(shù)字轉(zhuǎn)中文

數(shù)字轉(zhuǎn)中文使用中文電碼工具

中文電碼查詢 Chinese Commercial Code - 標(biāo)準(zhǔn)電報碼免費在線查詢|姓名電碼|美國簽證電碼 (mcdvisa.com)

十五:傳統(tǒng)知識+古典密碼 柵欄密碼與凱撒密碼 辛卯,癸巳,丙戌,辛未,庚辰,癸酉,己卯,癸巳。

題目描述

2830230817101630+60即每個數(shù)字都加60

88 90 83 68 77 70 76 90

兩個數(shù)字對應(yīng)一個字母,想到ASCII表

查表可得 X Z S D M F L Z

古典加密一般為柵欄密碼與凱撒密碼,都丟進(jìn)去試試

不知道為什么上一個柵欄密碼解答和網(wǎng)絡(luò)上的題解不太一樣

CTF在線工具-在線柵欄密碼加密|在線柵欄密碼解密|柵欄密碼算法|Railfence Cipher (hiencode.com)

這個題目天干地支都是以2計數(shù),所以柵欄密碼為2

然后再丟到凱撒密碼一個個試

flag{SHUANGYU}

記住是大寫且要包上flag

十六:凱撒?替換?呵呵 暴力破解網(wǎng)站

這個題目與好野蠻

MTHJ{CUBCGXGUGXWREXIPOYAOEYFIGXWRXCHTKHFCOHCFDUCGTXZOHIXOEOWMEHZO}

來個暴力破解網(wǎng)站嘍

quipqiup - cryptoquip and cryptogram solver

選擇第一個去掉空格就是flag

flag{substitutioncipherdecryptionisalwayseasyjustlikeapieceofcake}

十七 豬圈密碼

題目描述:

打開發(fā)現(xiàn)是一張圖片

CTF在線工具-在線豬圈密碼加密|在線豬圈密碼解密|豬圈密碼算法|Pigpen Cipher (hiencode.com)

真是可愛的一道題啊

十八:RSA1

RSA算法原理 - 知乎 (zhihu.com)

之前只是學(xué)會了如何使用工具,這題開始認(rèn)真學(xué)會RSA算法

互質(zhì)關(guān)系:如果兩個正整數(shù),除了1以外,沒有其他公因子,則稱他們?yōu)榛ベ|(zhì)關(guān)系

歐拉函數(shù)

任意給定正整數(shù)n,在小于等于n的正整數(shù)之中,有多少個與n構(gòu)成互質(zhì)關(guān)系,用 φ(n)表示

若n為質(zhì)數(shù),φ(n)=n-1。

若n是指數(shù)的某一次方即n=pk,則φ(pk)=pk-p(k-1)

若n=pq(兩個質(zhì)數(shù))

則φ(n)=φ(pq)=φ§φ(q)

歐拉定理

如果兩個正整數(shù)a和n互質(zhì),則a的φ(n)次方-1可以被n整除。

模反元素

如果a與n互為質(zhì)數(shù),則一定可以找到整數(shù)d使得pd-1能被n整除

記作da=1(mod n)

RSA算法

1:隨機選取兩個不相等的質(zhì)數(shù)p和q

2:計算p與q的乘積n

3:計算n的歐拉函數(shù)φ(n)

4:隨機選取整數(shù)e,e與φ(n)互質(zhì)

5:計算出e對于φ(n)的模反元素d

題目如下

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-aZoq0ceo-1649124329261)(https://raw.githubusercontent.com/lllwky/botany/main/img/image-20220401163349449.png)]

p = 8637633767257008567099653486541091171320491509433615447539162437911244175885667806398411790524083553445158113502227745206205327690939504032994699902053229 q = 12640674973996472769176047937170883420927050821480010581593137135372473880595613737337630629752577346147039284030082593490776630572584959954205336880228469 dp = 6500795702216834621109042351193261530650043841056252930930949663358625016881832840728066026150264693076109354874099841380454881716097778307268116910582929 dq = 783472263673553449019532580386470672380574033551303889137911760438881683674556098098256795673512201963002175438762767516968043599582527539160811120550041 c = 24722305403887382073567316467649080662631552905960229399079107995602154418176056335800638887527614164073530437657085079676157350205351945222989351316076486573599576041978339872265925062764318536089007310270278526159678937431903862892400747915525118983959970607934142974736675784325993445942031372107342103852import gmpy2 d = gmpy2.invert(q,p) mp = pow(c,dp,p) mq = pow(c,dq,q) #求冪取模運算m = (((mp-mq)*d)%p)*q+mq #求明文公式print(hex(m)) #轉(zhuǎn)為十六進(jìn)制

如果c與p互為質(zhì)數(shù),則一定可以找到整數(shù)d使得dp-1能被c整除

記作da=1(mod n)

最后的結(jié)果

再十六進(jìn)制轉(zhuǎn)文本

16進(jìn)制轉(zhuǎn)換,16進(jìn)制轉(zhuǎn)換文本字符串,在線16進(jìn)制轉(zhuǎn)換 | 在線工具 (sojson.com)

noxCTF{W31c0m3_70_Ch1n470wn}將noxCTF轉(zhuǎn)換為flag{}

十九:old fashion 爆破工具

不會的統(tǒng)一用爆破工具吧

quipqiup - cryptoquip and cryptogram solver

二十 js表情包轉(zhuǎn)換

打開文件發(fā)現(xiàn)

進(jìn)入轉(zhuǎn)換網(wǎng)站

aaencode - Encode any JavaScript program to Japanese style emoticons (_) (utf-8.jp)

按F12打開控制臺

然后輸出即可得到flag

二十一:Cipher

打開破解網(wǎng)站

Playfair Cipher (rumkin.com)

密鑰根據(jù)題目公平的玩吧,是playfair

flag{itisqstaproblegmavefip}

(要把大寫改為小寫)

二十二:摩斯密碼01版

這題的題目找不到了,那就直接上代碼吧

s = '0010 0100 01 110 1111011 11 11111 010 000 0 001101 1010 111 100 0 001101 01111 000 001101 00 10 1 0 010 0 000 1 01111 10 11110 101011 1111101' b=s.replace('0', '.') print(b.replace('1','-'))

然后再用網(wǎng)站進(jìn)行破解

二十三 HEX密碼 666c61677b57336c63306d655f54305f4354467d

與base64很像但是沒有=所以為hex

Hex編碼/解碼-在線工具 (toolbaba.cn)

二十四 base family

最后發(fā)現(xiàn)是base91

BASE91編碼解碼 - Bugku CTF

得到base64再進(jìn)入base64進(jìn)行解密

解密工具集合

在線工具 - Bugku CTF

int(b.replace(‘1’,‘-’))

然后再用網(wǎng)站進(jìn)行破解

二十三 HEX密碼 666c61677b57336c63306d655f54305f4354467d

與base64很像但是沒有=所以為hex

Hex編碼/解碼-在線工具 (toolbaba.cn)

二十四 base family

最后發(fā)現(xiàn)是base91

BASE91編碼解碼 - Bugku CTF

得到base64再進(jìn)入base64進(jìn)行解密

解密工具集合

在線工具 - Bugku CTF

總結(jié)

以上是生活随笔為你收集整理的一些Crypto的基础题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。