基于DES算法的文件加密系统的设计与实现
- 格式:pdf
- 大小:530.29 KB
- 文档页数:4
文件加密系统设计与实现摘要:该文论述了数据加密的原理与方法,介绍了几种常见的加密算法并在此基础之上比较了常用的加密算法的优缺点,在掌握了这几种算法的基础之上,对比对称密钥加密体制和公共密钥密码体制的优缺点以及前面的两个需求,最终利用DES算法和RSA算法来设计和实现自己的加密系统。
该文详细的介绍了理论原理并详细记录了系统设计与实现过程。
关键词:密码学;DES算法;RSA算法;加密系统设计中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)14-3299-03Design and Implementation of a Encrypting File SystemLIN Pei-tong(Guangdong Food and Drug Vocational Technical School, Guangzhou 510663, China)Abstract: After mastery these types of algorithms, compared the advantages and disadvantages between the Symmetrical cryptograph and nonsymmetrical cryptograph, as well as consider the two demands in front, at last decide use DES algorithm and the RSA algorithm to design and realize myencryption system. In this article, Detail the theoretical principles of Cryptographic and note the detailed of design and realize process..Key words: cryptography; DES; RSA; design1 绪言随着Internet的发展人类已经步入信息时代,在信息时代,信息安全问题越来越重要。
签名与加密算法设计与实现随着网络技术的不断进步,网络安全问题也越来越受到人们的关注。
在保障网络安全方面,签名和加密技术扮演了至关重要的角色。
本文旨在探讨签名与加密算法的设计与实现。
一、签名算法设计与实现签名算法通常用于验证数字文件的真实性和完整性。
常见的签名算法包括RSA、DSA等。
RSA算法是一种基于大素数因子分解的算法。
其应用广泛,特别是在TLS、SSL等安全通信协议中。
RSA算法的实现需要进行大数运算,这使得其在效率上存在一定的问题。
可以通过采用多线程等手段进行优化。
DSA算法是一种基于离散对数的算法,通常用于数字签名。
DSA算法的实现比RSA算法更为优化,具有更高的效率。
DSA算法在实现时需要注意实现的正确性和安全性。
二、加密算法设计与实现加密算法的主要作用是对敏感信息进行保护,以避免信息在传输过程中被截获和篡改。
常见的加密算法包括DES、AES等。
DES算法是一种基于对称密钥的加密算法。
其核心原理是将明文分成64位的块,通过密钥进行加密,最终得到密文。
然而,由于DES算法的密钥长度较短,易受到暴力破解的攻击,安全性不足。
AES算法是一种基于高级加密标准的对称密钥加密算法。
其具有比DES算法更高的安全性和效率。
AES算法的实现需要注意密钥长度、填充方式等问题。
三、算法实现中的安全性问题在签名和加密算法的设计和实现过程中,安全性是至关重要的问题。
在实现时需要注意以下几个方面。
首先,密钥的安全性非常重要。
密钥的泄露可能导致加密算法的失效。
因此需要采取严格的密钥管理制度,确保密钥的安全性。
其次,算法的实现需要避免泄露敏感信息,例如明文、密钥等。
在实现时需要加入适当的安全措施,确保敏感信息不会被破解和篡改。
最后,算法的实现需要遵循一定的标准和规范。
目前,国际上广泛采用的标准有ISO和NIST等。
遵守标准和规范可以确保算法的正确性和安全性。
综上所述,签名和加密算法的设计与实现是网络安全的重要组成部分。
des加解密算法原理DES(Data Encryption Standard)是一种基于对称加密算法的加解密技术,被广泛应用于计算机和网络安全领域。
它采用分组密码的设计思想,将明文分成64位的数据块,并使用密钥对其进行加密和解密操作。
下面我们将详细介绍DES算法的原理和应用。
DES算法的原理可以分为四个主要步骤:初始置换、16轮迭代、逆初始置换和子密钥生成。
首先是初始置换,将输入的64位明文根据所定义的置换表进行重排,以加强加密的随机性和扩散性。
这一步骤的目的是为了消除输入数据之间的相关性,使其在进入加密过程之前更具随机性。
接下来是16轮迭代,每一轮迭代都包括四个主要步骤:扩展置换、密钥与明文异或、S盒置换和置换函数。
扩展置换将32位数据扩展为48位,以使之与扩展后的子密钥进行异或运算。
然后,将异或结果分为8个组,每个组经过S盒代替置换,将6位数据映射为4位数据,增加了加密的复杂性。
最后,经过置换函数进行置换操作。
第三步是逆初始置换,将经过16轮迭代后得到的数据根据逆置换表进行重排,以得到最终的密文。
逆初始置换是初始置换的逆运算,用于恢复密文的顺序,使之与明文对应。
最后是子密钥的生成,根据输入的64位密钥经过置换和位移操作生成16个48位的子密钥。
每轮迭代都使用一个子密钥,通过改变子密钥可以增加加密的随机性,从而提高安全性。
DES算法的应用广泛,主要用于网络通信中的数据加密保护。
例如,在银行系统中,通过DES算法可以对用户的敏感信息进行加密,保护用户的财产安全。
在电子商务领域,通过DES算法可以对在线交易的数据进行加密,防止黑客窃取用户的个人信息和银行卡号。
此外,DES算法还常用于数据库加密、文件加密和数据传输等领域,以确保机密信息的安全性。
总之,DES算法是一种经典的对称加密算法,通过初始置换、16轮迭代、逆初始置换和子密钥生成四个步骤,实现了对数据的加密和解密操作。
它具有较高的安全性和广泛的应用领域,是保护计算机和网络安全的重要工具。
des算法的设计与实现DES(Data Encryption Standard)是一种对称加密算法,它的设计与实现涉及以下几个方面:1. 密钥生成,DES算法使用56位的密钥,通过一系列的操作生成16个子密钥,每个子密钥48位。
这些子密钥用于加密和解密过程中的轮函数。
2. 初始置换,明文经过初始置换(IP)操作,将64位明文重新排列,得到置换后的明文。
3. 轮函数,DES算法使用16轮的轮函数,每轮包括扩展置换、与子密钥的异或运算、S盒代替、P盒置换等操作。
轮函数的目的是将输入的32位数据扩展为48位,并进行一系列的混淆和置换操作。
4. S盒代替,DES算法中使用了8个不同的S盒,每个S盒输入6位,输出4位。
S盒的作用是将48位数据分成8组,每组6位,然后通过S盒进行代替操作,将6位数据转换为4位数据。
5. P盒置换,DES算法中使用了一个P盒,它对32位数据进行置换操作,重新排列数据的位置。
6. 密钥轮转,DES算法中,每轮的子密钥都是由前一轮的子密钥生成的。
轮函数中的子密钥与明文进行异或运算后,会将左右两部分数据进行交换,然后进入下一轮。
7. 逆初始置换,经过16轮的加密运算后,得到64位的密文。
最后,对密文进行逆初始置换(IP-1)操作,将64位密文重新排列,得到最终的加密结果。
DES算法的实现可以使用不同的编程语言来完成,例如C、C++、Java等。
实现时需要注意使用合适的数据结构和算法来处理数据的置换、代替和置换等操作。
同时,还需要注意保证代码的安全性和效率,避免可能存在的安全漏洞和性能问题。
总结起来,DES算法的设计与实现涉及密钥生成、初始置换、轮函数、S盒代替、P盒置换、密钥轮转和逆初始置换等方面,同时需要注意代码的安全性和效率。
计算机专业本科毕业论文案例评析及改进样例彭剑,王奕(湖南农业大学信息科学技术学院,湖南长沙410128)摘要:在随机抽取30份计算机专业学生毕业论文(设计)文档的基础上,采用案例评析形式,从篇章结构及行文、摘要、关键词、结论4个方面详细分析学生写作毕业论文或毕业设计文档中存在的种种问题,并对每种问题都给出相应的改进样例。
关键词:本科;毕业论文;案例评析;改进范例毕业论文是高校本科教学中的最后、也是最为重要的一个环节。
如何提高毕业论文的质量,使这个教学环节发挥其应有的作用?不少教学一线老师对此进行了探索:文献[1]提出按学科专业特点来改革毕业论文(设计)的教学时间安排、评审和答辩方式以及成绩评定方法,改善相关的教学基本条件,并进行前期、中期、后期质量监控;文献[2]从毕业论文重要性认识、本科教学计划的完善、毕业论文过程的监管、创造学生参与科研项目的条件等方面讨论提高毕业论文质量的一些措施;文献[3]则对毕业论文质量的跟踪管理模式作了详细阐述;文献[4]从学生自身、选题、指导教师、管理几方面讨论目前本科毕业论文存在的问题及其改进途径;文献[5]谈到学生论文写作能力的培养以及教学方法、考核方式、科研教学等方面存在的误区。
这些文献探讨的结果具有指向性意义,但对于学生毕业论文写作实践的具体指导作用有限。
笔者在随机抽取30份计算机专业学生毕业论文(设计)文档的基础上,从篇章结构及行文、摘要、关键词、结论4个方面进行了具体的评析。
1 篇章结构及行文分析正确的论文写作过程应该是:确定主题一收集文献并分类一写文献综述,确定具体写(做)什么一安排论文结构一开始写作。
学生在此部分表现出的主要问题是欠缺谋篇布局和论文语言表达的能力。
1.1 无文献综述,从开篇到进入具体问题的讨论很突然案例1论文题目:仓库信息管理系统。
前言:中国自从加入WTO以后,面临着十分严峻的国内外经济环境,为了适应日趋激烈的市场竞争,企业需要对自己的经营状况有充分的了解,并且通过有效地管理,不断提高企业的绩效水平和经营效率……随着科学技术不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类作为计算机应用的一部分,使用计算机对物资信息进行管理,具有着手工管理所无法比拟的优点……因此,开发这样一套仓库信息管理软件成为很有必要的事情。
分组密码算法DES的加密和解密的实现摘要随着信息社会的到来,人们在享受信息资源所带来的巨大的利益的同时,也面临着信息安全的严峻考验。
信息安全已经成为世界性的现实问题,信息安全问题已威胁到国家的政治、经济、军事、文化、意识形态等领域,同时,信息安全问题也是人们能否护自己的个人隐私的关键。
信息安全是社会稳定安全的必要前提条件。
本文是一篇讨论关于常用文件加密解密算法的毕业设计论文,它详细的讲述了文件加密解密算法实现的过程中所用到的方法、技术。
关键词:解密,文件加密,密码体制,DESI英文摘要ABSTRACTWith the advent of the information society, people in the enjoyment of information resources brought about tremendous benefits, but also faced with a letter Income security, a severe test. Information security has become a worldwide reality, information security has been a threat to the country's political .Governance, economic, military, cultural, ideological and other areas at the same time, the issue of information security is also a possibility of retaining their own personalPrivacy key. Information security and social stability is a necessary precondition for security.This article is a discussion paper on encryption and decryption algorithms commonly used in graduate design thesis, which documents in detail about the encryption and decryption process of algorithm used in the methods and techniques.Key words:Decryption,file encryption,cryptosystem,DESII目录前言 (1)第1章概述 (2)1.1 加密与解密 (2)1.2 单钥密码系统 (2)1.3 分组密码的总体结构 (4)1.4分组密码的安全性 (4)第2章DES算法简介 (5)2.1简介 (5)2.2 DES加密标准 (6)2.2.1 初始置换IP (7)2.2.2 IP-1是IP的逆置换 (7)2.2.3 DES算法的迭代过程 (8)2.2.4 子密钥的生成 (12)2.3 DES算法的解密过程 (13)第3章DES算法用C++语言实现 (14)3.1设置密钥函数des_setkey() (14)3.2 f函数和S函数f_func()和s_func() (14)3.3 DES算法的运行函数des_run( ) (16)3.4 DES算法的主函数void main() (18)3.5 DES的加密过程和举例 (19)3.6 DES算法的分析 (21) (22)结论 (23)参考文献 (24)致谢 (25)附录 (26)III前言密码学是伴随着战争发展起来的一门科学,其历史可以追溯到古代,并且还有过辉煌的经历。
3DES 加密算法的设计与实现宋佳河海大学水文水资源学院,南京(210098)E-mail:********************摘要:数据加密标准DES(Data Encryption Standard)是美国国家标准局于1977 年公布的数据加密标准,二十多年来,它一直在数据加密方面扮演了十分重要的角色,可见其设计思想的缜密和精细。
虽然随着解密技术的发展,DES 的安全性受到了一定的威胁,但其改进的3DES 算法却在很大程度弥补了DES 算法的缺陷,因此在数据加密方面得到了很广泛的应用。
本课题对3DES 算法进行分析和研究,并在此基础上用C 语言实现该算法,最终设计一个能对数据分组和文件进行高效加密的加密软件,为用户提供一种保证数据安全的方法。
关键词:数据加密标准DES;3DES;C 语言;实现中图分类号:TP309.7 文献标识码:A1 引言数据加密标准DES(Date Encryption Standard),是上个世纪70 年代问世的基于64 位明文分组,密钥长度为48×16 的加密标准。
随着计算机网络技术的发展,越来越多的信息都借助于网络来进行传输。
然而,黑客的出现使得信息在网络传输过程中受到各种各样的威胁、干扰和破坏,这不但影响了信息的有效传递,而且也可能由于信息的破坏给用户或者国家造成重大的损失。
为了杜绝或降低这种损失,利用加密技术对数据信息进行加密是一种有效的手段和方法。
而基于数据加密标准的DES(Date Encryption Standard)的三重DES(即3DES)有着高强度加密安全性能,且3DES 设计标准不一而足,有采用2 组密钥三重加密(本文就采取了这种方法),有采用三组加密密钥三重加密的。
然而由于它是基于DES 的三重加密,速度上自然不容乐观,但对DES 以及三重DES 的深入分析和理解,有利于研究和设计更好的密码算法,从而在一定程度上促进密码学的研究和发展。
实验(实训)报告项目名称实验四加密算法DES和RSA的实现所属课程名称计算机安全与保密项目类型验证性实验(实训)日期2011年5月17日班级08信息(2)班学号0820400228姓名楼俊指导教师郭柏林浙江财经学院东方学院教务部制实验四:加密算法DES和SDA的实现实验4.1:对称加密算法DES的实现1.实验名称:对称加密算法DES的实现2.实验目的:通过MixedCS软件对实际数据进行加密和解密来了解DES的运行原理3.实验内容:1、直接运行MixedCS.exe ,打开软件的主界面,如图所示2、“浏览文件”按钮,选择要进行DES加密的源文件,成功后在“输出文件”文本框中将自动出现默认的文件名钥”文本框中重新输入相同的4位密钥。
密5、将步骤3的密钥长度设为10位,重复加密过程,此时该软件将自动采用3DES算法进行加密,可以看到加密的时间明显增加了请大家自己试验。
实验4.2:非对称加密算法RSA的实现1.实验名称:非对称加密算法RSA的实现2.实验目的:通过RSATool2v17软件对实际数据进行加密和解密来了解RSA算法的运行原理3.实验原理:(一)、回顾RSA实现的原理i.寻找出两个大素数P和Q。
ii.计算出 N=P*Q和 Z=(p-1)*(Q-1)。
iii.选择一个随机数E(0<E<Z),满足gcd(E,Z)=1。
iv.使用欧几里德扩展算法计算密钥D,即 D=E-1 mod Z。
v.公开(N,E)作为公钥,而(N,D)作为私鈅。
(二)、实例讲解1、选择两个素数P=17,Q=472、计算N=17*47=799;计算Z=(17-1)*(47-1)=736 。
3、选择E=5, 使 gcd(5,736)=14、计算D,D==E-1 mod Z =1, D=589则(799,5)作为公钥,而(799,589)作为私鈅。
设:明文s=19是要进行加密的信息,加密算法为:(19)5 mod 799=797, 解密算法为:(797)589 mod 799=194.实验内容:任务一:验证上述给出的实例进行验证,如下图示在Number Base中选择10作为数制,在 Public Exponent(E)[HEX]中写入E 的值5,在 1st Prime(P)中填入第一个素数17,在2nd Prime(Q)中填入第二个素数47,然后点击 Calc.D 则计算出 N和D。
DES加密算法的实现及应用学生姓名:梁帅指导老师:熊兵摘要随着信息与通信技术的迅猛发展和广泛应用,人们通过互联网进行信息交流,难免涉及到密码保护问题,这就需要使用DES加密技术来对数据进行加密保护。
本课程设计介绍了DES加密的基本原理以及简单的实现方法。
本课程设计基于C语言,采用DES算法技术,设计了DES加密程序,实现了DES加密解密功能。
经测试,程序能正常运行,实现了设计目标。
关键词DES加密,C语言,信息交流1 引言1.1本文主要内容DES是一个分组密码算法,使用64位密钥(除去8位奇偶校验,实际密钥长度为56位)对64比特的数据分组(二进制数据)加密,产生64位密文数据。
DES是一个对称密码体制,加密和解密使用同意密钥,解密和加密使用同一算法(这样,在硬件与软件设计时有利于加密单元的重用)。
DES的所有的保密性均依赖于密钥。
DES算法的入口参数有三个:Key、Data、Mode。
其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。
DES算法是这样工作的:如Mode为加密,则用Key 去把数据Data进行加密,生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。
在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。
这样,便保证了核心数据(如PIN、MAC等)在公共通信网中传输的安全性和可靠性DES的加密过程:第一阶段:初始置换IP。
在第一轮迭代之前,需要加密的64位明文首先通过初始置换IP 的作用,对输入分组实施置换。
摘要随着计算机的应用和网络技术的不断发展,网络间的通讯量不断的加大,人们的个人信息、网络间的文件传递、电子商务等方面都需要大力的保护,文件加密技术也就随之产生。
文件的加密主要是由加密算法实现,加密算法有多种,常见的有RSA、DES、MD5等。
本程序设计对文件的加密使用的是DES加密算法。
DES是分块加密的。
DES用软件进行解码需要用很长时间,而用硬件解码速度非常快,1977年,人们估计要耗资两千万美元才能建成一个专门计算机用于DES的解密,而且需要12个小时的破解才能得到结果。
所以,当时DES被认为是一种十分强壮的加密方法。
但今天,只需二十万美元就可以制造一台破译DES的特殊的计算机,所以现在 DES 对要求“强壮”加密的场合已经不再适用了。
Java语言具有简单、安全、可移植、面向对象、健壮、多线程、体系结构中立、解释执行、高性能、分布式和动态等主要特点。
利用Java语言中秘密密钥工厂对DES算法的支持,使程序实现文件加密、解密两大功能更简单。
本程序设计所采用的就是DES算法。
同时利用Java的GUI编程,生成文本对话框,对文件的路径进行选择、提供密钥框、加密和解密按钮。
使用本程序可以对txt,word等多种文件进行加密解密,使用便捷实用,功能完善,满足了用户对文件安全性的需求。
关键词:JA V A ,DES,加密,解密。
目录1题目分析 (1)1.1课程设计的要求和内容 (1)1.2 DES算法描述 (1)2概要设计 (3)2.1抽象数据类型的定义 (3)2.1.1 程序所需要引入的包 (3)2.1.2 其他定义 (3)2.2主程序流程图 (4)2.3各程序模块之间的层次(调用)关系 (4)3详细设计 (6)3.1 窗体的设计与实现 (6)3.2文件导入模块 (8)4测试分析与结果 (9)4.1. 测试结果 (9)4.1.1运行程序 (9)4.1.2加密 (9)4.1.3解密 (11)总结 (13)参考文献 (14)附录 (15)1题目分析1.1课程设计的要求和内容基本要求:1.利用某种加密算法对指定的文本文件进行加密(应判断其是否已经加密,若已加密则结束该步骤,否则提示输入加密口令,对文件进行加密);2.加密解密方法:本设计采用DES加密算法。
数据加密与解密实验报告计算机信息安全实验一数据的加密与解密集美大学计算机工程学院实验报告课程名称:计算机信息安全技术指导教师:付永钢实验项目名称:数据的加密与解密实验项目编号:实验一一、目的通过对DES和RSA的使用和开发,加深对数据加密算法的理解,掌握对称加密和非对称加密体制的框架,提高对加密和解密原理的认识,学会使用加密和解密软件。
二、实验内容与设计思想1. 从服务器下载DES实力程序并执行,输入明文、密钥进行加密盒解密,可以观察采用不同的密钥进行加密和解密后的结果情况。
2.从服务器下载RSA示例程序(2个),阅读其中基于MFC的RSA加密解密程序,并对该程序进行修改,完善其中的加密解密功能。
3.从服务器下载RC4的加密和解密文档,自己独立实现一个基于RC4的加密和解密系统,能够实现对给定的文档进行基于RC4的加密和解密软件。
4. 从服务器下载PGP软件相关文档,学习基于PGP加密和解密的应用。
要求能够实现基于PGP和公钥密码的outlook邮件加密和解密功能。
三、实验使用环境一台装有Windows 2000/XP的PC、Visiual C++四、实验结果1. 班级:计算12 姓名:学号:组号:实验成绩:上机实践日期:2014.4.17 上机实践时间:4 学时错误密钥:2.3.直接输入:生成明文zhyf2 生成密文zhyf1:打开密文:篇二:实现DES加解密算法实验报告实现DES加解密算法实验报告一、DES加解密算法问题简介DES算法全称为Data EncryptionStandard,即数据加密算法,它是IBM公司于1975年研究成功并公开发表的。
DES 算法的入口参数有三个:Key、Data、Mode。
其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据:Mode为DES的工作方式,有两种:加密或解密。
二、DES加解密算法设计方法简介DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,其功能是把输入的64位数据块按位重新组合,并把输出分为L0 、R0两部分,每部分各长32位,其置换规则见下表:58,50,12,34,26,18,10,2,60,52,44,36,2 8,20,12,4,62,54,46,38,30,22,14,6,64,56,48,40,3 2,24,16,8,57,49,41,33,25,17,9,1,59,51,43,35,27,19,11,3,61,53,45,37,29,21,13,5,63,55,47,39,3 1,23,15,7,即将输入的第58位换到第一位,第50位换到第2位,……,依此类推,最后一位是原来的第7位。
简单的基于des算法的加解密系统设计与实现关于基于DES算法的加解密系统的设计与实现。
一、介绍DES(Data Encryption Standard)是一种对称加密算法,由IBM公司于1977年研发。
该算法使用56位的密钥进行加密和解密操作,每个数据块的大小为64位。
DES算法的安全性已经有所降低,但在某些应用场景下仍然被广泛使用。
本文将介绍一个简单的基于DES算法的加解密系统的设计与实现。
该系统具有以下功能:1. 生成随机密钥;2. 对文本进行加密;3. 对密文进行解密。
二、系统设计1. 密钥生成在该系统中,首先需要生成一个随机密钥。
密钥的长度为56位,由用户指定。
系统将使用随机数生成算法生成一个随机的56位二进制数作为密钥。
2. 文本加密系统接受用户输入的明文,并对其进行加密。
加密使用的密钥由用户输入。
加密过程如下:a) 将明文划分为64位的数据块,如果最后一块不满64位,则使用空白符填充;b) 对每个数据块的64位明文应用初始置换(IP)置换表。
置换表指定了数据块中每个位的位置;c) 执行16轮迭代,每轮迭代都包括以下步骤:i) 将数据块分成左右两部分(每个32位);ii) 将右半部分进行扩展置换(EP)操作。
扩展置换将32位数据扩展为48位;iii) 将扩展后的数据与密钥进行异或操作;iv) 将异或结果分为8个块,每个块6位。
每个块通过对应的S盒进行替换操作,将6位数据压缩为4位数据;v) 将替换后的结果合并为32位数据,并通过P置换表进行置换;vi) 将得到的32位结果与左半部分进行异或操作,作为下一轮迭代的右半部分;vii) 交换左右两部分;d) 执行16轮迭代后,将最后一轮迭代的得到的左右两部分合并为一个64位数据块;e) 对合并后的数据块应用逆初始置换(IP^-1)置换表;f) 将加密后的数据块输出为密文。
3. 密文解密系统接受用户输入的密文,并对其进行解密。
解密使用的密钥由用户输入。