Iuhrey

一个常年被吊打的Web手 一个唱歌不好指弹垃圾的吉他手

0x01 在蓝鲸打卡所学到的基本操作(Crypto篇)

怎么说呢。。。对我这个刚刚入门密码学的萌新来说,在蓝鲸打卡的几天里,密码学的知识是学到了很多的(当然对大佬来说是基本操作),所以借此,归纳一下所学到的一些知识吧(按照时间顺序)。

Day 1 摩斯密码

第一天的题目自然是最简单了的,这是题目:

第一眼看到这个就联想到了莫斯密码,因为题目只有两个元素,而只有两个元素的密码不多,最为通用的就是摩斯密码,果不其然,将其0和o转化为.和-,然后对照密码表答案就出来了。
在看到题目只有两种符号的情况下,自然而然地优先考虑莫斯密码,尝试不行之后再去考虑其他的密码类型。

Day 2 RSA加密

第二天则是一种新的加密方式,也是如今用途十分广泛的加密方式-RSA加密:

普及一下RSA加密:简单来说就是,取两个十分大的素数p和q,计算出它们的乘积n=pq,然后公开n,再计算欧拉函数∮(x)=(p-1)(q-1),计算过后找一个与∮(x)互素的小素数作为公钥进行加密,然后寻找d,使得d*e-1是欧拉函数∮(x)的k倍数,d就是用于解密的私钥,举个简单的例子:
p=23 q=11
n=253 公开
∮(x)=220
我取e=13 公开
k=1 d=17
至于这个公钥和私钥怎么加密后文再说,今天RSA加密算法了解了为后一天的学习做了一个铺垫。题目呢,运用工具直接就能出答案,自己写算法自然是最好的(虽然我不会写)。

Day 3 RSA解密

第三天带了附件我就不放题目了,今天所涉及的内容是Zip文件的伪加密以及RSA解密。
在遇到打开文件,内容并不是我们想要的东西时,就需要考虑一下了,如果是乱码的话,考虑一下把文件的编码丢进编辑器改一下,如果是空白的话,那就是遇到文件的伪加密了,今天的便是后者。

找到PK对应的Hex,显而易见,09数字显示的便是文件进行了伪加密,将其手工改成00保存就能看到原文件的内容了,打开之后看到的就是私钥了

丢进解密的工具题目就算告一段落了。
然而今天的重点不是这个伪加密,而是理解RSA公钥私钥不同解出来的内容却是一样的。
KU:e,n所构成的也就是公钥对。
KR:d,n所构成的也就是私钥对。
然后把待加密的内容分为k组并转化为数字
加密:C=M^e mod n
解密:M=C^d mod n
我们再次来实验一下:
p=23 q=11
n=253 公开
∮(x)=220
我取e=13 公开
k=1 d=17
这是前文所用的数字,以此来实验:
令M=7
C=7^13 mod 253=112
M=112^17 mod 253恰恰等于7
通过基本的验证可以确定用RSA加密是可以还原数据的,有兴趣的可以去研究为什么会还原(反正我是没兴趣,毕竟数论太他妈不是人学的了)。

0x00 关于搭建博客的一些心得

第一篇文章自然是讲讲我在搭博客所获得的收获了(其实是遇到各种各样的BUG)。
第一,hexo,node.js是不要求与教程相同的版本的,虽然有些功能不同但是大体上不会影响你博客的搭建的。
第二,千万别把你的Blog文件夹建立在需要管理员权限的地方,如果这样做了,在hexo deploy时会什么信息都不会返回的。
第三,在搭建博客时,别想着急于求成,毕竟一个好看的博客是人家花了很久才搭出来的,先把基础框架搭好,在想着逐步去完善自己的博客。
第四,遇到问题先百度,别去问你的室友(除非他非常好心),要不然你收到的回答是:“百度啊” “CNM百度啊”
“滚去百度啊”。

#最后附上我参考的链接
[基础教程][http://www.cnblogs.com/fengxiongZz/p/7707219.html]
[主题更换][https://www.jianshu.com/p/469e985288b3?from=jiantop.com]

本站总访问量