使用CPA4破解经典密码算法
下面是一段经过经典密码算法加密的密文(加密算法未知):
yvvnerujjvnywhbdvkpchfgvjtzwqsuporqfzpoekkjgziicdwwkeejdsruef
whwseyejejhnaeepjbjwnuztavjswrthswlcdxqrnoclsodkrrfjtfhlfznbx
wyvdwdcwyzqlqrnevuiiienxzmwtdsyhgstwmvznrvhyihhcxjijhiojphvjw
srpejwnhrhirqbcdwnzqmwjpoibnbjdeshloewcfdhvzjgtdwsvntydyweyll
gjrrohfuyplppzrssvniejxhzjtrwyvvdecpttrieevhzlxsvunstovzwjfsa
svlsgzjcvwmseioidhsywsddisrjadhkcideivjzwwsfqjcwphvwtdtkatkjg
zjwfpjbjbofwgochaegfhmyodpjbkwtfukcixokkrseoaegbcdanjitckxaco
xvvdajdqgfxetrrskdewlwgketronoesoddshfxezqiitpeulshfdeiftiepr
pvkcfpbroqwechroqcwbadhfbuwlcwmokshzojkfnkzqlojhanbjfzjhvuxdr
neklrskdezqiswwtzjfpcamfufqvolrwjgkreewzfvesrvftzbauhasckpdhs
hzjskuzqkkrydawecjlvyqfjdlfysuwcfxwgvhajwbsvgbvwbsvjaegtqkkbv
ufhkdezufbzwnwrthswlcdhouamplshvdrrqyvvnejkjhiwiehiwiwnzdskfi
eershyatvfmbzyacdxdvytjrkqfwcylsunkmvqxtfktsdqzektaxxhwkokefz
cxukvustefzffzcuwfpjbjbofwgochwyrjjvnsrbxhywtkkjavjsxdrsrjdkk
jkfieevlodaaihyvvoadhmojylvdwzpjemhwkfnkvgnbrlrfijgjeoedqseri
irsavjtjkjhfhdwlkotkmrvritdajztavjswrthswlckfgxnonqtjvntyhqoj
pfvzistwdvvnhywsewgstkmvdsmdkrvvnazhaiwthyamvqxurienrrsewrvsm
mjecroqmuefwhwseptfpjbrjdkkjafnekkjkfieevlodadvyjzflskkjafnez
wngwqlcrkggaczinqzpivvyvrprvtzwiaaulktvneewfdgnorfmtikmrftotd
jlvyzzgejddwerocojmswlcrwprokvwgochtyhwsjjogrnbkenxutigenxlyo
chuegjfkdejdrstwtvjtfpphvrgjzkujsmmjecroiwwbeihsqvoaihtbcutyh
xhrntzqldfenkwmswkrdhwgknibhwocoogrnbkotfnjmkwcklhocziwijfvjc
vvfbuprrlswecmvwmcuotrnjomarpvnaghevafaghekkjdzcgplshyamzgizv
zrzoqgjdetrshzjuvgdclnedraskdakiwcdwmvqxhiwielsujasjltbrjdprz
fvhojwbvvnervlsearroqmjlernnbxbeddqsghaphwguknkwjbupotdwsrxol
wyvzokzqicwyodsjhzpimhssjoiedboiiugptfryeyrusjphrwismalfsrsep
ielywrpimhxzzgekkjkfieevkcfpbroqqfwcylsutkuivjwepeyufbnditkbo
jwtkhsrvzbpztavjoeodkzhlyhqdkknruwcnphvjfdsatnhjbkdefsucipuel
ywvoawitfuadkrrocaaegksdwlvftotdejrkqfqrjhdcldamhlfvwttrfqyas
kkfhljdvuxhrjdkkjkfieevlodalznjoepoeltqrxrzqnweetrodcilhzondg
abvulsikozqkfrjcvvfwuioidhssqtnkfhjprznjgdaijzmseoodhysrisfuh
zlxstktcjahvdiqfwcyhxbfpbrvjrfjaivzafneosjfzanthgikkncbgstwuj
hyvvuhrsuseposhrsewszvfwuxewrwskdexdrszodziksiankdsrkdakvhzvw
rkrjjvnyfqjplptyhtdgkrkxswkeejdktfndvgyctkatkjgjdoloibkxeulkt
vneewtdgkrkxswkeejitfrhlkkjufopvoyvrpmfufqvesgujotdiejnggwrkl
hicwrcbaocqasojwephvpnruhevdxhndeihqokalpztavjswrthswlckfgdwd
vgwodwtzfxhiedvvnfrjffujlripchkwvhdjztavjsedywfjacwjodofirroc
hcrwjufnivvxhrntzqlokqaegnhjjakltbrhlvdlivberwzfvotvdrgzjtyhk
wiotulawjeoedsrrjokkjfwevvlshyasvftbuzimlxwfjnfwycdankltbrpok
dqtlpsroysrisjswsrzatutgjboluiwwbeihshcaaxxjrzrijltbjwtwlwgkc
lrqhszpsvdxmwkrnhxhvnnjwthvjdkryvzjkkkfhkdijlxotkmgojhvhyulkt
vneewhicpuihgikdoehxhcuajdswkwlzdskywtjwwitgmvwmsdkskzjfvphvv
nazhailywvosrliafnathusfllvdwsnwrddsrrlpirfqywbchfbuphvujgekp
cdhsndeihyvrpijdxqcaaidxwebofwgochwydywjavzgjbkpodhnbkahidswj
wgzjfbkecgdxgzknwrwtfktsdqzrhemhqcwenkhwsjptydygknucbtikotrqi
wecsghhwwecroqmrioejyvvsodhshykuxknhjylvdwhywtkknggwsjltbtwri
ljgrlokhshzwlnknqyesfqqmekwshnbxqnkdudvzhfsjtlhlpwmwjyoluxszo
aelrdfntrqygkapkrboizskkngdwhuljafdadpfrbdaelfavibvuttkdezufb
zwnwdxkfieevhcdiikwjswqlcbfuiaejznhyphvitfdarzwfzpwnuffbrzatr
fqysodhsgwkokefzcdajiqclnijkjrzjrvfjbkueruxoeznfzfrruszwxhyam
fvydflucdwggkrkdrceciidswrjwfpjbjdejdnrzpsroxcfjefiyvvbamrzfz
pejstfkoffurijhidztavjbvffijatyhdoiaacotkvztfsqopshzojkvwrzql
oyaauvhoibmfkfadwdbkfbzwljrgsceemhxhywttrrpzjakltbfbdvyjzflmv
qyqfqrjhxoezeclystkmghywkeoevqwbanvaymvwrjintrqwfpjbjsoioiwef
oigfbkdewlwgksodhsgnkrcghigdecgnbkdedlircaervyoiatyhbopboizff
uboiwmsiagzrswkoaxujokkpgrwhljikbycrptidhhgqbclhcgenzrshfsodh
sgwkokefzcwnudqgfboiijarhedlircaervysijtvdrgkksyrbhyaiivyfvjg
Kkxoxwievywepeiqfhzknrotdgknvqygjdetrsqcqdvg
破解过程:
1.先确定是单表还是多表加密,通过统计字母频率
把密文复制到Ciphertext处,点击左侧Freq,就有统计字母频率的功能。
统计结果:
a 120 0.034
b 91 0.026
c 105 0.030
d 178 0.051
e 178 0.051
f 164 0.047
g 99 0.028
h 180 0.051
i 148 0.042
j 205 0.058
k 201 0.057
l 111 0.032
m 55 0.016
n 113 0.032
o 146 0.041
p 85 0.024
q 82 0.023
r 193 0.055
s 168 0.048
t 139 0.039
u 87 0.025
v 177 0.050
w 210 0.060
x 63 0.018
y 97 0.028
z 126 0.036
可以选择用图表的形式显示出来:
可以看到字母频率分布的较平均,没有某个字符概率很高或者概率很低,所以猜测这是一个多表加密的密文。(因为单表加密通常都会显示出语言的特征)
现在已经知道是多表加密了,那用的是哪种多表加密算法呢?
实际的办法就只能一个个尝试。
首先假设这是一个Vigenere密码算法加密的密文:
先要确定密钥的长度
用CAP的Kasiski,得知
String Distance
yvv 273
yvv 707
yvv 868
yvv 1953
yvv 2765
yvv 3101
Yvv出现的距离:434 595 1680 2492 2828
最大公约数是7
猜测密钥的长度是7
再用CAP的Low Freq
输入密钥的长度7,给出的可能密钥是forward。
用CAP的Vigenere Cipher,输入keyword:forward,给出的原文是
there are very few people as entitledtoanalysethesimilaritiesanddif
ferencesbetweenmensandwomensfootballascarolinamoracefollowing
ayearplayingcareerduringwhichshebecamewidelyrecognisedasthegr
eatestitalianwomaninhistoryinshebeganacoachingcareerthatinclu
dedashortbutpioneeringstintatthehelmofamensclubseriecsviterbe
seinsincethenmoracehasmadeanameforherselfasoneofthetopcoaches
inwomensfootballandatvcommentatorforbothmensandwomensfootball
shehasalsobecomethefirstitalianwomantobeinductedintohercountr
ysfootballinghalloffameandallthatwhileworkingaslawyerinherspa
retimetheindefatigablemoraceslatestventureisasafifadevelopmen
tinstructorhavingjustconductedacourselastweekbetweenandoctobe
rattheiranianfootballacademyintehranthereshetrainediranianwom
enonthetechnicalaspectsofcoachingwomensfootballnotjustfootbal
lbutspecificallywomensfootballwhoeversaysthatthemensgameandth
ewomensgamearethesamehasclearlyneverworkedinaprofessionalenvi
ronmentshetoldfifacomasmuchaswomensfootballhasgrownoverthelas
tfewdecadesithasntbecomeanymoresimilartothemensgamewomenareph
ysicallydifferenttomenandthemorethewomensgamedevelopsthemorei
tisfullofspecificitiesthatrequireadifferentapproachfromacoach
justlikesayinvolleyballorbasketballtheresnopointingroupingita
llunderthesamecategorytheobviousphysicaldifferencesareonlythe
startingpointtheformerstrikeralsopointstokeytacticaldifferenc
esandtrainingmethodstakeaverysimpleexamplethepiggyinthemiddle
drillsshecontinuedyouremovethatfromamenstrainingsessionandyou
relostwhereasgenerallyspeakingfemaleplayersdonttendtocareabou
tthiskindofcompetitivenessinawarmupmoracehopesthatdevelopment
initiativeslikethewomensfootballcoachingcourseintehranwhichwa
sattendedbywomenonlywillhelptonarrowthegapbetweentheopportuni
tiesaffordedtomaleandfemalecoachesofcourseyouhavegreatcoaches
thatunderstandthewomensgamelikeantoniocabriniinitalyorphilipp
ebergerooinfrancesaidmoracebutwhatstrikesmeiswhensometeamsorc
lubschooseheadcoachesnotbasedonarsumorexperiencebutonlybecaus
etheyhappentobemenasisaidbeforethegameisdifferentandthatsclea
rtoeveryonebuttheopportunitiesaffordedtocoachesshouldntbediff
erentopportunitiesforallthegospelthatmoraceispreachingisparti
cularlyvaluableinthemiddleeastwherelatelywomensfootballhasmad
edramaticstridesiranforexamplefieldswomensnationalteamsfromal
lcategoriesstartingatuanditsnationalleaguefeaturesteamsinthef
irstdivisionandanotherfiveintheseconddivisionnottomentionatot
alfutsalteamsspreadacrossfourdifferentleaguedivisionsatfirstg
lanceitseasyforwesternstotendtothinkthatthisisacompletelydiff
erentculturebuthonestlyasanitalianwhatstruckmethemostwerethes
imilaritiessaidmoracepeoplearewarmandapproachableandtheresnop
lacewherethatisasclearasinfootballwhatisevidenttomeintehranis
agiganticpassionforfootballalevelofinterestthatstrulyoutstand
ingspecificallyamongthewomenthoughitsclearthatthispassioncarr
iesapotentialwhichisonlynowbeinguntappedhopefullythiscourseis
animportantsteptowardsthismahdiemohammadkhaniamemberoftheiran
ianfaswomenscommitteefullyagreeswiththeformeritalyandcanadaco
achwomensfootballhasflourishedinrecentyearsandnowadaysitsthem
ostpopularsportamongiranianwomenshesaiditsalsooneofthefavouri
tesportsformuslimwomenbecausetheyareallowedtoplaywhilewearing
aheadscarfmohammadkhanialsobelievesthatcombinationofdevelopme
ntcoursesandelitecompetitionslikenextyearsfifauwomensworldinj
ordanthefirstwomensworldcupheldinthemiddleeastarethewayforwar
dfortheregionitsagreatopportunitytoattractpublicopiniontowome
nsfootballandalsoforfemalemiddleeasternteamstoshowtheirstreng
thsagainstinternationalopponentssheconcluded
发现译文是有意义的,就把这个密文破解了。
如果发现译文是无意义的,就需要假设别的加密算法,根据假设的算法来使用相应的解密方法。
使用CPA4破解经典密码算法的更多相关文章
- Android逆向之旅---Android中锁屏密码算法解析以及破解方案
一.前言 最近玩王者荣耀,下载了一个辅助样本,结果被锁机了,当然破解它很简单,这个后面会详细分析这个样本,但是因为这个样本引发出的欲望就是解析Android中锁屏密码算法,然后用一种高效的方式制作锁机 ...
- 破解magento加密的密码算法
magento遇到丢掉密码的情况,其实很常见……比如我这记性,还好我比较暴力:-P 先看一段代码: /** * Hash a string * * @param s ...
- 【十大经典数据挖掘算法】PageRank
[十大经典数据挖掘算法]系列 C4.5 K-Means SVM Apriori EM PageRank AdaBoost kNN Naïve Bayes CART 我特地把PageRank作为[十大经 ...
- 5分钟破解wpa2密码(转)
首先大家要明白一种数学运算,它叫做哈希算法(hash),这是一种不可逆运算,你不能通过运算结果来求解出原来的未知数是多少,有时我们还需要不同的未知数通过该算法计算后得到的结果不能相同,即你不太可能找到 ...
- 密码算法详解——DES
0 DES简介 在20世纪60年代后期,IBM公司成立了一个由Horst Feistel负责的计算机密码学研究项目.1971年设计出密码算法LUCIFER后,该项目宣告结束.LUCIFER被卖给了伦敦 ...
- Mac系统安装Aircrack-ng破解wifi密码(2)
我们上一篇文章说过如何通过Aircrack-ng, 破解使用WPA/PSK加密方式的路由密码, 这一篇介绍的是使用Aircrack-ng破解使用WEP加密方式的路由密码: WEP和WPA/PSK的区别 ...
- Kali Linux使用Aircrack破解wifi密码(wpa/wpa2)
Kali Linux能做很多事,但是它主要以渗透测试及'破解wifi密码'闻名. 如果你使用Macbook 请看 使用macbook破解WPA/WPA2 wifi密码 要求: 安装有Kali Linu ...
- 路由器安全——破解wifi密码,同时中间人攻击
聊聊安全那些事儿 篇一:Wi-Fi安全浅析 2016-04-25 13:18:16 141点赞 712收藏 63评论 前言 近期,Wi-Fi相关的安全话题充斥着电视新闻的大屏幕,先是曝出了路由器劫持的 ...
- liboqs-量子安全密码算法开源C库
liboqs是一个用于量子安全密码算法的开源C库. 一,概述 liboqs提供: 量子安全 密钥封装机制(KEM)和数字签名算法的开源实现的集合: 这些算法的通用API: 测试工具和基准测试例程. l ...
随机推荐
- ssl error rx record too long
- WPF线程获取UI线程
WPF中只能是UI线程才可以改变UI控件相关,当采用多线程工作时,可用以下代码获取 UI线程进行操作: App.Current.Dispatcher.Invoke((Action)delegate() ...
- psd via fft and pwelch
%fft and pwelch方法求取功率谱load x.mat Fs = 1; t = (0:1/Fs:1-1/Fs).'; Nx = length(x); % Window data w = ha ...
- C# FileStream复制大文件
即每次复制文件的一小段,以节省总内存开销.当然,本机复制也可以采用.NET内部的System.IO.File.Copy方法. 本文转载:http://www.cnblogs.com/wolf-sun/ ...
- Yii2版本号新特性简单介绍
Yii2 Beta版本号在今年4月份公布.眼下正在改动问题和完好文档中. Yii2要求PHP版本号不低于5.4,主要有例如以下改进: 1)支持PHP框架间协作组制定的PSR-4标准,这简化了文件夹并提 ...
- Java虚拟机学习 - 对象访问
对象访问会涉及到Java栈.Java堆.方法区这三个内存区域. 如下面这句代码: Object objectRef = new Object(); 假设这句代码出现在方法体中,"Object ...
- Linux内核分析:页回收导致的cpu load瞬间飙高的问题分析与思考--------------蘑菇街技术博客
http://mogu.io/156-156 摘要 本文一是为了讨论在Linux系统出现问题时我们能够借助哪些工具去协助分析,二是讨论出现问题时大致的可能点以及思路,三是希望能给应用层开发团队介绍一些 ...
- lambda显式声明返回值
10.21 编写一个lambda,捕获一个局部int变量,并递减变量值,直至它变为0.一旦变量变为0,再调用lambda应该不再递减变量.lambda应该返回一个bool值,指出捕获的变量是否为0. ...
- Java基础知识强化之IO流笔记61:输入流 和 输出流 使用总结
1. 结构: 字节流:InputStream,OutputStream 字符流:Reader,Writer 2. 字符流 和 字节流: (1)Reader:读取字符流的抽象类 BufferedRead ...
- c语言,strcspn,在串中查找第一个给定字符集内容的段
函数名: strcspn 功 能: 在串中查找第一个给定字符集内容的段 用 法: int strcspn(char *str1, char *str2); 程序例: #include <stdi ...