CoffeeCat's IT Blog

用Javascript写的RSA加密演示程序

    这个程序是为我的计算机信息安全课程设计而编写的,实现了基于RSA算法的文本加密功能。
    本程序只用于演示,没有实用价值,主要原因是Javascript运算速度太慢,以至于我选用的质数只能小于10000,太大了,生成的密钥也会很大,对加密的时间有着直接影响。
    钥匙是程序自动选取两个质数以后,计算得到的,最终的格式如下,数1,数2,其中数2是N,数1是E或者是D,一般,我们把含有E的钥匙叫公钥,含有D的钥匙叫做私钥,当然,如果你想倒过来也没关系~至于E,D,N是什么东东,您查阅一下RSA的资料,看一下计算方法就知道了~
    钥匙中的数1的大小和加密或解密的时间成正比,如果你的钥匙用于加密,那么数1越大,加密所需时间也就越长。我测试了一下,选取的数1不应该超过2000,否则要等很长时间(至少能让你失去耐心),其次,要加密的文本也不要太长,建议5个字母以内(所以说没有实用价值 :P)。在加密或解密的时候,浏览器会经常询问您是否终止Javascript的运行,你只有选择继续运行,才能完成整个加密过程。

    我们学校这学期开了计算机信息安全这门课,更像是科普讲座,介绍了一些常用的加密算法,对称加密,非对称加密,数字签名等等,还有防火墙,病毒防范等,给我们上课的老师叫胡春光,我很喜欢他,他知识渊博,上课语速平和,说话很有逻辑性,能用很通俗易懂的方式为我们讲课,引人入胜,而且他是个很有个性的老师,能成为他的学生真是三生有幸~

    好了,以下是程序的源代码,供大家学习参考,程序没有经过优化,质量不算高,欢迎大家提出宝贵意见。

    P.S:
    1:程序使用了mootools框架进行开发,其实就是用mootools的方法来定义类创建对象~没有用其他的特性~
    2:密钥产生页面:Keygen.htm,加密页面:encrypt.htm,解密页面:decrypt.htm

CoffeeCat
2007-12-30


http://www.cnitblog.com/Files/CoffeeCat/rsa/RSA.rar

posted on 2007-12-30 22:29 CoffeeCat 阅读(6058) 评论(6)  编辑 收藏 引用

评论

# re: 用Javascript写的RSA加密演示程序 2008-02-23 10:03 kwen

呵呵~~看你说的内容,真是羡慕你啊。

我那的老师只知道按教科书讲课(没有所谓的根据课程内容进行的实验),而且教科书就是一些基本的计算机教科书。如c++程序设计、数据库、计算机网络等

学完以后,根本不知道怎么把学到的知识用于实践。

等到工作时才知道那些学到的知识是这么用的。呵呵~~

被你笑话了,其他原因也可能是自己那时不会去找资料自学的缘故,一味等着老师教。  回复  更多评论   

# re: 用Javascript写的RSA加密演示程序 2008-02-25 20:09 CoffeeCat

@kwen
呵呵,是啊,能上胡老师的课感觉很幸福~
学编程大多数的时候都是自学的,老师只能带我们入门,教材只能普及基础知识,拓宽我们的知识面,要深入,还是需要找资料自学,呵呵~  回复  更多评论   

# re: 用Javascript写的RSA加密演示程序 2008-05-26 13:09 闲耘

学习了,正在找相关的资料,感谢分享。  回复  更多评论   

# re: 用Javascript写的RSA加密演示程序 2009-09-18 17:50 菜客

我也正需要用这个,谢谢分享。  回复  更多评论   

# re: 用Javascript写的RSA加密演示程序 2011-02-21 09:28 scaret

我也写过.由于计算速度还好,所以可以对大整数计算进行适当优化,以适应比较大的数字.当然在任何方面都无法跟成熟的c编出来的算法相比...  回复  更多评论   

# re: 用Javascript写的RSA加密演示程序 2013-04-16 11:06 heema

我们老师也发布了相似的作业,学业未精,找了相关算法的js套用都出线很多问题,学习了!感谢分享  回复  更多评论   

只有注册用户登录后才能发表评论。
<2007年10月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

导航

统计

公告

常用链接

留言簿(203)

随笔档案

收藏夹

搜索

最新评论

阅读排行榜

评论排行榜