我也刚学,有这样一个例子给你看看,很有用: RSA算法概述如下: 找两素数p和q 取n=p*q 取t=(p-1)*(q-1) 取任何一个数e,要求满足e<t并且e与t互素(就是最大公因数为1) 取d*e%t==1 这样最终得到三个数: n d e 设消息为数M (M <n) 设c=(M**d)%n就得到了加密后的消息c 设m=(c**e)%n则 m == M,从而完成对c的解密。 注:**表示次方,上面两式中的d和e可以互换。 在加密中: n d两个数构成公钥,可以告诉别人; n e两个数构成私钥,e自己保留,不让任何人知道。 给别人发送的信息使用e加密,只要别人能用d解开就证明信息是由你发送的,构成了签名机制。 别人给你发送信息时使用d加密,这样只有拥有e的你能够对其解密 而常用公钥体制主要有两个作用:加密信息和认证。由于内容,我把链接给你,你参考着看看……挺好理解的 http://hi.baidu.com/piao2007/blog/item/ae2ec4f881f73202d8f9fd57.html
-
提问者评价
-
谢谢,受教了!
参考资料:http://hi.baidu.com/piao2007/blog/item/ae2ec4f881f73202d8f9fd57.html