crypto(01)

0x01 base64html

Base64顧名思義就是用64個可顯示字符表示全部的ASC字符,64也就是6Bits,而ASC字符一共有256個,也就是8Bits。Base64編碼要求把3個8位字節(38=24)轉化爲4個6位的字節(46=24),以後在6位的前面補兩個0,造成8位一個字節的形式。 若是剩下的字符不足3個字節,則用0填充,輸出字符使用’=’,所以編碼後輸出的文本末尾可能會出現1或2個’=’ 內存1個字符佔8位python

例如

轉前: s 1 3
先轉成ascii:對應 115 49 51
2進制: 01110011 00110001 00110011
6個一組(4組) 011100110011000100110011
而後纔有後面的 011100 110011 000100 110011
而後計算機是8位8位的存數 6不夠,自動就補兩個高位0了
全部有了 高位補0
科學計算器輸入 00011100 00110011 00000100 00110011
獲得 28 51 4 51
查對下照表 c z E z

形式

ZXZhbCgkX1BPU1RbcDRuOV96MV96aDNuOV9qMXVfU2gxX0oxM10pNTU2NJC3ODHHYWJIZ3P4ZWY=

0x02 base32
Base32和Base64相比只有一個區別就是,用32個字符表示256個ASC字符,也就是說5個ASC字符一組能夠生成8個Base字符。
可是均可以使用python的base64模塊來加解密

轉自 http://www.javashuo.com/article/p-zpscbfzc-gn.html工具

簡單的話來闡述編碼

  zip僞協議的意思是說原本不須要密碼的zip文件而後經過修改標誌位,而後就能夠達到有密碼的效果對嗎?可是他實際是沒有密碼。加密


一個 ZIP 文件由三個部分組成:spa

  壓縮源文件數據區+壓縮源文件目錄區+壓縮源文件目錄結束標誌.net

  詳情:http://blog.csdn.net/wclxyn/article/details/7288994htm

 

實例說明(http://ctf5.shiyanbar.com/stega/sim.jpg)blog

分割出來文件之後有個zipip

用Winhex工具打開查看其十六進制編碼,圖以下:

 

a.壓縮源文件數據區:

50 4B 03 04:這是頭文件標記(0x04034b50) 14 00:解壓文件所需 pkware 版本 00 00:全局方式位標記(有無加密) 08 00:壓縮方式 5A 7E:最後修改文件時間 F7 46:最後修改文件日期 16 B5 80 14:CRC-32校驗(1480B516) 19 00 00 00:壓縮後尺寸(25) 17 00 00 00:未壓縮尺寸(23) 07 00:文件名長度 00 00:擴展記錄長度 6B65792E7478740BCECC750E71ABCE48CDC9C95728CECC2DC849AD284DAD0500

b.壓縮源文件目錄區:

50 4B 01 02:目錄中文件文件頭標記(0x02014b50) 3F 00:壓縮使用的 pkware 版本 14 00:解壓文件所需 pkware 版本 00 00:全局方式位標記(有無加密,這個更改這裏進行僞加密,改成09 00打開就會提示有密碼了) 08 00:壓縮方式 5A 7E:最後修改文件時間 F7 46:最後修改文件日期 16 B5 80 14:CRC-32校驗(1480B516) 19 00 00 00:壓縮後尺寸(25) 17 00 00 00:未壓縮尺寸(23) 07 00:文件名長度 24 00:擴展字段長度 00 00:文件註釋長度 00 00:磁盤開始號 00 00:內部文件屬性 20 00 00 00:外部文件屬性 00 00 00 00:局部頭部偏移量 6B65792E7478740A00200000000000010018006558F04A1CC5D001BDEBDD3B1CC5D001BDEBDD3B1CC5D001

c.壓縮源文件目錄結束標誌:

50 4B 05 06:目錄結束標記 00 00:當前磁盤編號 00 00:目錄區開始磁盤編號 01 00:本磁盤上紀錄總數 01 00:目錄區中紀錄總數 59 00 00 00:目錄區尺寸大小 3E 00 00 00:目錄區對第一張磁盤的偏移量 00 00 1A:ZIP 文件註釋長度

將09改成00,再打開txt便可

img

img

本站公眾號
   歡迎關注本站公眾號,獲取更多信息