哈希函数:把给定数据转换成固定长度的无规律数值。
哈希值:输出的无规律数值。多用十六进制来表示。
哈希函数特征
1>输出的哈希值数据长度不变。即使输入了相当于的数据,输出的哈希值的长度也保持不变
2>如果输入的数据相同,那么输出的哈希值也必定相同
3>即使输入的数据相似,哪怕只有一比特的差别,那么输出的哈希值差别也会很大。
4>哈希冲突。即使输入的俩个数据完全不同,输出的哈希值也可能是相同的。(概率很低)
5>不可逆。不可能从哈希值反向推算出原本的数据。
应用举例:基于密码的用户认证。(服务器保存哈希值)
密钥
加密就是用“密钥”对数据进行数值运算,把数据变成第三者无法理解的过程。
共享密钥加密(对称加密):AES算法
A使用密钥加密数据后,将密文发送给B。B收到密文后,使用相同的密钥进行解密。只要是被加密号的数据,就算被第三方恶意窃听也无需担心。
公开密钥加密(非对称加密):RSA算法
A向B发数据,由B生成公开密钥和私有密钥。B把公开密钥发送给A。A发密文给B,B再使用私有密钥对密文进行解密。
图:由顶点和连接每对顶点的边所构成的图形就是图。
举例:若以车站作为顶点,将相邻俩站用边连接,就能用图来变现地铁的路线了
![](https://i-blog.csdnimg.cn/blog_migrate/f4c3372d35a1515474555f5501d71d7a.png)
加权图
给边加一个值,这个值叫作边的“权重”。可以表示顶点间的连接程度。
比如在上面路线图中,如果把时间作为“权”。那么整张图就能表示整个路线图的移动时间。
如果把俩个站之间的票价加在一起作为“权”。那么就能表现乘车费了。