数字签名的作用是,通过在某个数据上做上标记,表示承认(签字)了这个数据,并发送给了其他人。 其他人可能知道这个数据已经被我认证了,数据没有被篡改。 我们需要首先用一种算法,算出原始数据的摘要,满足:(1)假如原始数据没有任何变化,那么计算出来的摘要值就都会变化。(2)摘要要短,这里最常用的算法就是MD5. 会生成一份非对称加密的公钥和私钥,私钥自己拿着,公钥公布出去。给一份数据算出摘要,给这个摘要用私钥加密,得到一份加密的数据,被称为原始数据,将他和原始数据一块发送给用户。 用户收到数据和签名以后,使用公钥解密得到摘要,用户用同样的算法计算原始数据到的摘要,对比计算出来的摘要和公钥解密签名得到