密碼學(xué)第四周-創(chuàng)新互聯(lián)

密碼學(xué)第四周 對(duì)稱密碼

對(duì)稱密碼是指加密和解密都使用相同的密鑰。

創(chuàng)新互聯(lián)專注于朝陽(yáng)網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供朝陽(yáng)營(yíng)銷型網(wǎng)站建設(shè),朝陽(yáng)網(wǎng)站制作、朝陽(yáng)網(wǎng)頁(yè)設(shè)計(jì)、朝陽(yáng)網(wǎng)站官網(wǎng)定制、小程序定制開(kāi)發(fā)服務(wù),打造朝陽(yáng)網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供朝陽(yáng)網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。博福特密碼

一種類似于維吉尼亞密碼的替代密碼。

屬于對(duì)稱加密,加密算法與解密算法相同。

加密:明文的第一個(gè)字母為D,則先在表格中找到第D列。 由于密鑰的第一個(gè)字母為F,于是D列從上往下找到F。這一F對(duì)應(yīng)的行號(hào)為C,因而C便是密文的第一個(gè)字母。以此類推可以得到密文。

解密:密文的第一個(gè)字母為b,則先在表格中找到第b行。由于密鑰的第一個(gè)字母為t,于是b行從左往右找到t。這一t對(duì)應(yīng)的列號(hào)為s,因而s便是明文的第一個(gè)字母。以此類推可以得到全部明文。

密碼表如下:

img

from pycipher import Beaufort
print(Beaufort('hello').encipher('good luck'))
print(Beaufort('hello').decipher('BQXIDNCB'))
DES

DES(分組加密算法):

先將原始數(shù)據(jù)切成64位的明文分組

密鑰位64位,其中有效的密鑰長(zhǎng)度只有56位(分為八塊每塊長(zhǎng)為八位,每隔八位設(shè)置一位為校驗(yàn)位,第8、16、24、32、40、48、56、64位是奇偶校驗(yàn)位)

分組后的明文組和56位的密鑰按位替代或交換的方法得到密文組。

3DES

3DES(或稱為Triple DES)是三重?cái)?shù)據(jù)加密算法(TDEA,Triple Data Encryption Algorithm)塊密碼的通稱。它相當(dāng)于是對(duì)每個(gè)數(shù)據(jù)塊應(yīng)用三次DES加密算法。

3DES加密過(guò)程為:C=Ek3(Dk2(Ek1§))

3DES解密過(guò)程為:P=Dk1(EK2(Dk3?))

AES

AES(高級(jí)加密標(biāo)準(zhǔn))基本算法,實(shí)現(xiàn) AES 有幾種模式

AES 有 5 種加密操作模式:

? 1. 電碼本模式(Electronic Codebook Book (ECB)) 這種模式是將整個(gè)明文分成若干段相同的小段,然后對(duì)每一小段進(jìn)行加密。不需要iv(偏移量)

? 2. 密碼分組鏈接模式(Cipher Block Chaining (CBC)) 這種模式是先將明文切分成若干小段,然后每一小段與初始?jí)K或者上一段的密文段進(jìn)行異或運(yùn)算后,再與密鑰進(jìn)行加密。密鑰字節(jié)長(zhǎng)度可以是16位(AES-128)、24位(AES-192)、32位(AES-256),iv字節(jié)長(zhǎng)度必須為16位,明文的字節(jié)長(zhǎng)度必須為16字節(jié)的倍數(shù),不足的后面填充0。

? 3. 計(jì)算器模式(Counter (CTR)) 在CTR模式中, 有一個(gè)自增的算子,這個(gè)算子用密鑰加密之后的輸出和明文異或的結(jié)果得到密文,相當(dāng)于一次一密。

? 4. 密碼反饋模式(Cipher FeedBack (CFB))

? 5. 輸出反饋模式(Output FeedBack (OFB))

四方密碼

使用4個(gè)預(yù)先設(shè)置的5x5字母矩陣,每個(gè)矩陣包括25個(gè)字母。

左上和右下矩陣式是標(biāo)準(zhǔn)字母排序明文矩陣,左下和右上矩陣是打亂順序的密鑰矩陣。

在這里插入圖片描述

整理明文,兩個(gè)字母一組,分組不夠時(shí)用’x’填充。

加密過(guò)程,分別在明文矩陣中找到’TH’,分別找到他們?cè)谟疑暇仃嚭妥笙戮仃嚨慕稽c(diǎn)字母’ES’

即明文。

base系列密碼

base16就是用16(2^4)個(gè)字符,對(duì)二進(jìn)制數(shù)據(jù)進(jìn)行編碼的方式

用于編碼的字符只有:1-9,A-F

base32就是用32(2^5)個(gè)字符,對(duì)二進(jìn)制數(shù)據(jù)進(jìn)行編碼的方式

A-Z,2-7

base64)編碼是用64(2^6)個(gè)字符,對(duì)二進(jìn)制數(shù)據(jù)進(jìn)行編碼的方式

在base32的基礎(chǔ)上,增加了"a-z,0,1,8,9,+,/“,以及特殊填充字符”="

base36 密文由36個(gè)字符組成,加密僅支持整數(shù)數(shù)字,解密僅支持字符串,不支持中文

A-Z,0-9

base58 不使用數(shù)字”0”,字母大寫”O(jiān)”,字母大寫”I”,和字母小寫”l”,以及”+”和”/”符號(hào)

base62 密文由62個(gè)字符組成

A-Z,a-z,0-9

base85

base91密文由91個(gè)字符組成

0-9,a-z,A-Z, !#$%&()*+,./:;<=>?@[]^_`{|}~”

base92

字符組成

A-Z,a-z,0-9

base85

base91密文由91個(gè)字符組成

0-9,a-z,A-Z, !#$%&()*+,./:;<=>?@[]^_`{|}~”

base92

base100 密文由Emoji表情組成

buuctf

1.摩斯密碼
找到一個(gè)在線網(wǎng)站解碼
在這里插入圖片描述
網(wǎng)上找到一個(gè)腳本,查字典破解

MORSE_CODE_DICT = {   'A': '.-', 'B': '-...', 'C': '-.-.', 'D': '-..', 'E': '.',
                   'F': '..-.', 'G': '--.', 'H': '....', 'I': '..', 'J': '.---', 'K': '-.-',
                   'L': '.-..', 'M': '--', 'N': '-.', 'O': '---', 'P': '.--.', 'Q': '--.-',
                   'R': '.-.', 'S': '...', 'T': '-', 'U': '..-', 'V': '...-', 'W': '.--',
                   'X': '-..-', 'Y': '-.--', 'Z': '--..',
                   '1': '.----', '2': '..---', '3': '...--', '4': '....-', '5': '.....', '6': '-....',
                   '7': '--...', '8': '---..', '9': '----.', '0': '-----',
                   ', ': '--..--', '.': '.-.-.-', '?': '..--..', '/': '-..-.', '-': '-....-',
                   '(': '-.--.', ')': '-.--.-'
                   }

#解密
# 將字符串從摩斯解密為英文的函數(shù)
def decrypt(message):
    # 在末尾添加額外空間以訪問(wèn)最后一個(gè)摩斯密碼
    message += ' '
    decipher = ''
    citext = ''
    global i
    for letter in message:
        # 檢查空間
        if letter != ' ':
            i = 0
            # 在空格的情況下
            citext += letter
        # 在空間的情況下
        else:
            # 如果 i = 1 表示一個(gè)新字符
            i += 1
            # 如果 i = 2 表示一個(gè)新單詞
            if i == 2:
                # 添加空格來(lái)分隔單詞
                decipher += ' '
            else:
                # 使用它們的值訪問(wèn)密鑰(加密的反向)
                decipher += list(MORSE_CODE_DICT.keys())[list(MORSE_CODE_DICT.values()).index(citext)]
                citext = ''
    return decipher

message = ".. .-.. --- ...- . -.-- --- ..-"
result = decrypt(message)
print(result)

2.MD5
md5將整個(gè)文件當(dāng)做一個(gè)大文本信息,通過(guò)不可逆的字符串變換算法,產(chǎn)生一個(gè)唯一的MD5信息摘要。
使用在線網(wǎng)站解密
在這里插入圖片描述
3.一眼就解密
base64

import base64
str='ZmxhZ3tUSEVfRkxBR19PRl9USElTX1NUUklOR30='
m = base64.b64decode(str.encode('utf-8')).decode('utf-8')
print(m)

得到flag
4.籬笆墻的影子
柵欄密碼
在這里插入圖片描述
5.rsarsa
已知p,q,e,c
n=p*q

p =  9648423029010515676590551740010426534945737639235739800643989352039852507298491399561035009163427050370107570733633350911691280297777160200625281665378483
q =  11874843837980297032092405848653656852760910154543380907650040190704283358909208578251063047732443992230647903887510065547947313543299303261986053486569407
e =  65537
c =  83208298995174604174773590298203639360540024871256126892889661345742403314929861939100492666605647316646576486526217457006376842280869728581726746401583705899941768214138742259689334840735633553053887641847651173776251820293087212885670180367406807406765923638973161375817392737747832762751690104423869019034
n =p*q
phi_n=(p-1)*(q-1)
d=gmpy2.invert(e,phi_n)
m=pow(c,d,n)
print(m)
print(libnum.n2s(int(m)))

6.url編碼
http://www.jsons.cn/urlencode/
在這里插入圖片描述

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)頁(yè)標(biāo)題:密碼學(xué)第四周-創(chuàng)新互聯(lián)
文章出自:http://bm7419.com/article38/dsdepp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營(yíng)銷定制網(wǎng)站、標(biāo)簽優(yōu)化、手機(jī)網(wǎng)站建設(shè)、用戶體驗(yàn)、全網(wǎng)營(yíng)銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)