00:00
配置你看我是不是通过这个FD5数把这个值算出来了,好算出啊算出来之后呢,有地方呢,各位需要注意一下,我们看一下好,那么啊这个地方呢是如果呢,你不使用这个叫做转码的话,那么会出现乱码,好刚刚呢我是直接呢这个呢叫做贝瑞做了一个转码,所以呢,它就不会乱码,看一下在这个位置做一个转码好转码完之后呢,我们接下来来看一个东西好,看什么东西我们看一下好那么现在我去找个叫在线的数字摘要,大家看一下好,这边是呃,一个在线的一个叫做加密解密的这么一个工啊这个在线工具,好,那在这个工具里面我们看点一下MD5,好,点完MD5之后我们看啊输一下A好,大家看一下。好,这是AA这个值,我把A1呢做一个MD5,好大家看一下有没发现我的铭文呢是AA,但是你看一下通过MD5进行计算之后,你看它的值呢,是这么一个值,好现在呢,我把它的这个值呢给拷贝一下,好拷贝完之后呢,那么跟我们刚刚称的MD5值呢,啊做个比较,我们看一下。好,大家看一下这样的是不是密文对不对,好,我们来看一下我们的密文。
01:10
好,大家看一下有没有发现呢?这两个密文呢,是不是不一样对不对?好,那不一样的话,有的哥们可能会想也为什么它会不一样,因为很奇怪,你看我这个地方明明使用是MD5算法,对不对?好,我使用MD5算法啊,你看一下好那么它这个位置是不是使用的也是MD5算法好么?既然我们俩用都是MD5算法,那么这个位置呢,为什么这个值不一样的,好那这个地方我就跟大家说一下,好那么他的这个MD5算法的话,我们看一下,好那么他的这个MD5算法是没有进行转码的,好,但是我们刚刚的这个MD5算法,大家看一下这地方我是是不是使用了一个叫做贝,就是色区做一个转码对不对?好,那么转码完了之后,那么你的这个值呢,其实就不一样了,这个转码值呢就不一样了,好了,现在呢,我们看一下,好,那么我我现在想生成一件事,好生成什么,我想生成呢,就是我通过MP5计算出来的这个结果,我想呢,跟这个工具生出啊,生出的这个结果是一样的,好如果想跟它一样的话,那么在这个位置我就不啊,不能使用它进行转码了,好,那么。
02:11
那这个东西该怎么办?我们就需要呢,好通过我手动呢,再进行转一下,好那么怎么去做一个叫做手动进行转换呢?我们来看一下啊大家一下好,那么在这个位置,你看是不是拿到这个叫做数字摘要了,对吧,这是拿了一个密纹了,好那么拿到这个密纹之后呢,那现在呢,我就需要干一件事情,好干什么事情,我把这个密纹作为迭代。啊,这个迭代或循环好答案一下,这边是进行对密文进行迭代啊,对密文进行迭代好,那现在我就需要把这个密文进行迭代好,那我把这个密文进行迭代的话,我们看一下,好,那首先我就需要呢,把这个值我们看一下。好,那么在这个密文集迭代,迭代完之后,我们看那么这个位置呢,是不是会得到一个叫B对吧,会得到B,好那么现在我就把这个值呢,就转换一下,它转成什么,我把它转成16进制。
03:04
好,那把密文啊转换成16进制,转16进制好,那么怎么转成16进制呢?各位应该清楚应该清楚对吧?好,通过叫好,那么在里面是不是有叫哈西这么一个方法好,那么在哈西里面方法的话,我看通过一个B好,然后一下与上谁零叉F,大家看一下好么?零叉FF话是不是就是16进制对不对,好大看一下好,那么在这位置你看我是不是就要把这个叫做字节,是不是叫把这个叫密文的字节是不转换成一个叫16进制好,转化成16进制之后,我们看,那么他是不得了一个叫S对不对得S好,现在我把这个S呢,把它给打印出来,我们来看效果,我看一下好,那么这个S的话是我转换成的16进制,我们再运行一下。好大家看一下,你看现在呢,我是把这个叫做啊16进制呢,把它给转换了,好转换完之后,你看这个值好大,看一下有没有发现呢,这个值跟我上面值其实就是一样的了,我把它给拿拿过来。
04:09
哦,我这边不换行吧,比如说这个地方。啊,重新运行一下,换行的话,你看不出来效果。好,大家下这个时候是把这个值给转换了,好转换完之后我们看一下,再跟刚刚的工具生成的这个值进行对比一下,好,大家看一下有没有发现这两个值其实是一样的,你看一下,好,你看四幺啊,这是不是四幺好,二四这是不是二四好,BC这是不是BC好但是呢,大家看这个地方是A,前面的这个地方是零,答案就缺个零,好为什么我算出来这个结果跟原文算出结果好像又有区别,好为什么是这个样子,好跟大家说一下,是因为我要把这个东西呢,把它打印出来,再给大家看一下。好,大家看一下,你看好,刚刚我们在这个A的这个地方,大家看一下,好,那么在A的这个地方有没有发现,你看A的前面,你看它是做一些事情,是不是做了个补啉,你看我的这个A,你看A的话,这个地方是不是只有一个一个字节,你看这个八是不也只有一个字节,好然后呢,我们看一下,你说我的这个八和这个A呢,其实都是一个字节,好,如果都是一个字节的话,我想把它转换一下,转换完之后我们的高位是不是应该把它给进行补零,好所以大家看一下,如果我在这个位置,我把它做个补零,好,然后我在八前面也做个补零,大家看一下这个八前面做个补啉,好,补完零之后大家有没有发现好,那么你这两个值呢,其实是不是就又完全一模一样了,好所以呢,我们看一下,好那么我之前呢,不一样,是因为我做了一个贝斯斯的一个转码,好现在我不转码,所以通过手动设置好,我手动设置的话,大家看一下这两个值是不是完全一模一样,对不对?好那么这个地方我就把它做完了,好做完之后我们看一下,咱尽量把这个代码给稍微改一下,你看下,因为你的这个地方呢,转换完了之后呢,是不是有可能是啊字节是一位对不对,好,如果是一位话,我们是不是应该在高位做。
05:57
和补啉对不对,好,所以我们看一下好在这个位置我就需要做个判断,判断好如果如果呢,这个呃密纹记住啊,如果呢,这个密纹的这个长度是一个字节长度是一个字节长度是一,长度是一,好需要在高位进行补邻啊在高位级补零好那怎么判断呢?我们看一下是不是通过if好,那么在if里面的话,我们看通过s.lengths是不是长度好,我们看一下,如果你的长度为一好完我长度为一的话,大家看一下是不是就相当于我们刚才这个A是不是为一好,这个八是不是也为一对不对,好,那如果我A为一,八为一的话,我们看一下,那我是不在高位把它进行补零好,那怎么在高位进行补零呢?我们看一下S等于好,S等于什么?我们看一下,在前面加上一个零好,零后面的话我们看一下再去加上一个S,好大家看一下这样的话是不是就在高位做一个补灵操作,对吧?就做补灵操作好了,大家把这个S呢,就把它做完了好做完之后呢,我们看一下,那么我在这个位置你再进行打算。
06:57
再进行打印的话,那么它结构值肯定就是一模一样的,我们来试一下好再进行运行。
07:04
好一学完之后,我们看再把这个纸搬过来,好,我们看一下放这个位置。好,有没有发现完全是不是一模一样好,所以呢,这个位置的话是我们就啊通过这个MD5呢去习计算好算完之后呢,那么这个结果呢,其实是一样的好,那如果呢,我想把这个值给返回,比如说我想把这个S把它给装起来,把它装起来好了,怎么把它装起来,我就使用这string build装下好六项string build。好得了一个叫好大案一下好,那么拿这之后我们知道好,那这B的话是不可以进行open的,今天啊添加对不对,所以呢,大家看一下点open的openend好,然后呢,在当前这个openend里面,我是把这个S是不是就可以把它给丢进去好答案一下你把这个S丢进去好,那最后呢,我们直接呢把这个叫呢,就直接呢把它给返回一下是不是就OK了,我们看一下好,那么在这个位置再进行打印好,那么再进行打印时候,我们就在这个位置,我就直接呢把张的这个好,把这个对象呢,把它给输出出来好,大家看一下好记住啊,这个位置我就没有使用叫newtream好,为什么这个地方不使用newtam,因为呢,在进行编辑码的时候呢,才会使用叫string好,如果我想进行打印对现的话,那么就直接叫to string就可以了,好,那这个原理咱之前呢,跟大家已经说过了,好,我们再来看一下这个结果。
08:21
我们预习一下。好,咱这个呢,是不是就就实现完就已经实现对不对,好,那么咱就把这个叫做MD5加密呢,就跟大呢已经说完了。
我来说两句