DES加密问题

时间:2008-05-13 23:40:05   来源:论坛整理  作者:  编辑:chinaitzhe
我写了一个c语言的DES加密,速度差不多是1M/s,但是当我执行大文件时,比如一个700M的电影就会死机,这是为什么?还有DES加密速度大多应该是多少?谢谢指教!!
网友回复:开线程
网友回复:不是死机,是自动关机!是硬件问题还是我程序的问题?

网友回复:再补充一下。我的程序是读8字节然后加密,然后写到文本文件里。这样会应该不会出现缓存不够的情况吧!
网友回复:用 openssl 试了下, 速度大概 22M/秒 ( 包含文件读写时间 , PM 1.4G, RamDisk , DES_ECB ) 测试的文件大概100M 左右 ....
自己写应该 10M /s 左右还是比较轻易的 ....
网友回复:自动关机?那么强
网友回复:CPU散热不行,过热自动保护了
网友回复:不太可能是CPU过热,读写文件的时间比CPU时间长多了,
你看楼主是边读边写,所以100%占用的机率很小
即便把文件缓冲的数据变多,比如4k,也不会占去所有可以用的时间
网友回复:自动关机很可能是因为程序漏洞
8字节的话缓存不够是不会,但可以仔细查一下有没有缓冲区溢出之类的
网友回复:还有内存泄漏
网友回复:建议调用 openssl 的加密算法 ~
网友回复:crypto.nknu.edu.tw/textbook/CHAP2-Cipher.pdf
网友回复:还需要去写des算法么?
还是读读ibm 92年那个版本吧。
太经典了,你会几乎找不到可以增减的地方的。
网友回复:内存泄露!
网友回复:关于Des的算法,最高速度可以达到10M/s,但是,CPU的占用也相当可观,要想使程序不被当调,就是在你进行加解密算法的的线程中,每达到一定的速度就sleep(1),这样,不至于它老占用CPU的时间,影响其他线程的执行。至于这个一定的速度,可以自己尝试查找。或者你可以调整一下Des的内部算法机制,因为他的内部算法中有个循环处理语句,Cpu的执行效率就是影响在这里了。
网友回复:这个问题极难回答,主要是问法希奇。一般假如在代码中未加非凡限制的话,无论什么算法的速度都是和硬件速度(不光是CPU,还有内存,硬盘以及CPU的缓存等各方面问题)成正比关系。另一方面,无论如何一个DES算法本身都不会引引起自动关机这么~夸张~的事情,怀疑可能内存中某个地方有问题,一次把巨大的文件全部载入内存外加没有好的异常处理的话,会引起很多问题的。
网友回复:帮up下,
我也写了一个DES加密程序,
速度大概是2.7M/7S,
比大家的差远了,
看来需要优化自己的程序了....
关键字:DES,加密,问题,
上一篇:hough检测直线

相关文章

文章评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面