在大连做安天技术论坛 GuessMe6

不知道为何,最后两关的类型突然转变,从欢乐的猜密码变成了,密文破解,参与的人也变少了。

题目是这样,给几串原文和加密后的密码,要求找出加密方式,并从密文推算原文。

明文	                                   密文
antiylabs	                           trzlvtssb
A fall into the pit a gain in your wit	   tzsiiwfafllpewztnekglrufznwla
Behind bad luck comes good luck	           sallgbrtqtyrjcehpmmffbhzru
?	                                   gqzlhahljazmppbpbafa

所有的加密方式都必须遵从一个原则,可逆性,加密后的密文是不能丢失信息的,

先简单分析一下明文密文的对应关系,完全没有思路,不过可以肯定,其中一定有一种算法

确定一个数字在什么位置被加密成什么密文,而且不会很复杂,在手工可以推算的范畴。

a      t,s,e
b      s,r,
c      r,c,
d      b,
e      p,a,
f      z,
g      n,m,
h      l,
i      l,w,k
j  
k      j,u
l      t,i,h
m      h,
n      r,f,g
o      f,e,
p      e,
q  
r      n,
s      b,m,
t      z,a,l
u      z,y,
v  
w      w,
x  
y      v,u
z  

根据论坛上的讨论,似乎有了密文和原文就可以推算出字典,但这里原始数据太少了,字典还残缺不完整。

不过根据这些数据可以总结出规律,补全字典

a->e,s,t
b->d,r,s
c->c,q,r
d->b,p,q
e->a,o,p

f->z,n,o
g->y,m,n
h->x,l,m
i->w,k,l
j->v,j,k

k->u,i,j
l->t,h,i
m->s,g,h
n->r,f,g
o->q,e,f

p->p,d,e
q->o,c,d
r->n,b,c
s->m,a,b
t->l,z,a

u->k,y,z
v->j,x,y
w->i,w,x
x->h,v,w
y->g,u,v
z->f,t,u

这样加密算法一定是根据某个密钥来确定密文是三列中的哪一个。

简单推算密钥如下

明文              A   f   a   l   l   i   n   t   o   t   h   e   p   i   t   a   g   a   i  n   i   n   y    o     u     r     w   i   t  
密文              t   z   s   i   i   w   f   a   f   l   l   p   e   w   z   t   n   e   k  g   l   r   u    f     z     n     w   l   a
密文字母列号      2   3   1   2   2   3   1   2   2   3   1   2   2   3   1   2   2   3   1  2   2   3   1    2     2     3     1   2   2

这样就可以推算出原文“ time will tell

这里可以写一个小程序来实现加密和解密,不过先留个坑吧。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值