點(diǎn)贊再看,養(yǎng)成習(xí)慣,微信公眾號(hào)搜索【JackCui-AI】關(guān)注這個(gè)愛(ài)發(fā)技術(shù)干貨的程序員。本文 GitHub https://github.com/Jack-Cherish/PythonPark 已收錄,有一線大廠面試完整考點(diǎn)、資料以及我的系列文章。
1 加密
加密技術(shù)無(wú)處不在。
最常見(jiàn)的就是我們每天都在使用的密碼。
登陸微信、淘寶,我們所使用的密碼,就是加密存儲(chǔ)在數(shù)據(jù)庫(kù)中的。
加密技術(shù)可以保障我們密碼的安全性。
如果這些密碼在數(shù)據(jù)庫(kù)中是以明文形式存儲(chǔ)的,那安全隱患就太大了。
一旦數(shù)據(jù)庫(kù)泄漏,就不光是一個(gè)賬號(hào)被盜的問(wèn)題了。
很可能是多個(gè)網(wǎng)站的賬號(hào)同時(shí)被盜。
因?yàn)楹芏嗳说牧?xí)慣是,各大網(wǎng)站都用相同的密碼。
不過(guò),這都 2020 年了,密碼存儲(chǔ)早已用上了不可逆的加密技術(shù),例如 Bcrypt 加密等。同時(shí),還有設(shè)備鎖,安全性不用擔(dān)心。
但這類加密算法的成本較高,并不適合所有的場(chǎng)景。
對(duì)于不太重要的數(shù)據(jù),就可以使用一些低成本的加密和編碼算法。
例如男人之間的“靈魂對(duì)話”。
這種加密對(duì)話,靠的是兩人多年的默契,外人很難參透,無(wú)跡可尋。
而下面這種就不同了,加密和編碼是有跡可循的。
今天,咱就用這個(gè),基于深度學(xué)習(xí)的文本自動(dòng)解密 Ciphey 算法,破一破這些有跡可循的加密和編碼算法。
2 Ciphey
Ciphey 算法開(kāi)源至今,已經(jīng)獲得 2.2k+ star,一度登上 Github 熱榜。
每當(dāng)遇到一些不知道加密方法和編碼格式的文本,不妨試試 Ciphey ,說(shuō)不定可以輕松解決你的煩惱。
簡(jiǎn)介
Ciphey 支持破解 6 種基礎(chǔ)加密:
16 種編碼:
哈希也支持,不過(guò)效果不可控。
現(xiàn)在臨時(shí)關(guān)閉了,優(yōu)化好后可能會(huì)重新開(kāi)放。
項(xiàng)目地址:
https://github.com/Ciphey/Ciphey
原理
Ciphey 是將深度學(xué)習(xí)技術(shù)應(yīng)用到特定的場(chǎng)景。
其實(shí)原理不難,就是對(duì)一段文本進(jìn)行分類,判斷其屬于明文,還是哪種加密方法。
經(jīng)過(guò) softmax 輸出每個(gè)類別的概率,然后從高到低開(kāi)始遍歷破解。
思路簡(jiǎn)單,但是由于涉及到特定應(yīng)用領(lǐng)域,實(shí)現(xiàn)起來(lái)也挺復(fù)雜。
需要了解每種加密和編碼算法的方法,以及破解和解碼的方式。
3 算法測(cè)試
Ciphey 安裝非常簡(jiǎn)單,直接使用 pip 安裝即可:
python -m pip install -U ciphey
咱先來(lái)個(gè)簡(jiǎn)單的:
amFjayBjdWk=
這種編碼結(jié)果,經(jīng)常用 base64 的人一眼就能看出來(lái)。
使用 ciphey -t "amFjayBjdWno-referrer" src="https://file.elecfans.com/web1/M00/D3/8D/pIYBAF_Pmj-AW6VpAADQtcTzMeI454.png" al titl>
這種太小兒科,那咱換個(gè)難的。
3D6F57596A7447496A565861676B3263674D336267675759755232637631575A
這種是基礎(chǔ)加密算法和編碼的組合,可以自己嘗試解密,感受下難度。
而用 Ciphey ,輕松一秒內(nèi)解密完成。
輕輕松松拿到結(jié)果的同時(shí),還可以知道,這個(gè)字符串都用了什么加密和編碼算法。
有 reverse cipher、base64、base16。
而實(shí)際,我也確實(shí)是這么做的:
import base64
先對(duì)字符串進(jìn)行反轉(zhuǎn),再進(jìn)行 base64 編碼,將編碼的結(jié)果再次反轉(zhuǎn),最后再加一個(gè) base16 編碼。
Ciphey 除了對(duì)這種加密字符串的解密,還可以針對(duì)整個(gè)文本。
可以使用如下命令,解密 encrypted.txt 文本里所有的內(nèi)容。
ciphey - encrypted.txt
此外,還可以提供一個(gè) wordlist ,輔助解密。
遇到這種加密和編碼的場(chǎng)景,不妨試試這個(gè),基于深度學(xué)習(xí)的文本自動(dòng)解密 Ciphey 算法。
4 總結(jié)
Ciphey 要是支持的哈希解密穩(wěn)定一些,那就更好了。
作者:Jack Cui
原文:https://mp.weixin.qq.com/s/we...
關(guān)注作者公眾號(hào),獲取更多有趣AI應(yīng)用~
系列篇
更多AIoT領(lǐng)域有趣的算法應(yīng)用及產(chǎn)品請(qǐng)關(guān)注有趣的AIoT應(yīng)用專欄。
審核編輯:符乾江
-
AI
+關(guān)注
關(guān)注
87文章
31491瀏覽量
270005 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5512瀏覽量
121435
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論