3DES加解密,指定键的大小对于此算法无效

qq_37254374 2021-03-12 06:14:57
验证KEY失败,KEY:A000020001180809 ,这个key长度不是16字节怎么办
...全文
36 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
数据密技术 我们经常需要一种措施来保护我们的数据,防止被一些怀有不良用心的人所看到或者破坏。在信息时代,信息可以帮助团体或个人,使他们受益,同样,信息也可以用来对他们构成威胁,造成破坏。在竞争激烈的大公司中,工业间谍经常会获取对方的情报。因此,在客观上就需要一种强有力的安全措施来保护机密数据不被窃取或篡改。数据密与解密从宏观上讲是非常简单的,很容易理解。密与解密的一些方法是非常直接的,很容易掌握,可以很方便的对机密数据进行密和解密。 一:数据密方法 在传统上,我们有几种方法来密数据流。所有这些方法都可以用软件很容易的实现,但是当我们只知道密文的时候,是不容易破译这些算法的(当同时有原文和密文时,破译算法虽然也不是很容易,但已经是可能的了)。最好的算法对系统性能几乎没有影响,并且还可以带来其他内在的优点。例如,大家都知道的pkzip,它既压缩数据又密数据。又如,dbms的一些软件包总是包含一些密方法以使复制文件这一功能对一些敏感数据是无效的,或者需要用户的密码。所有这些算法都要有高效的密和解密能力。 幸运的是,在所有的算法中最简单的一种就是“置换表”算法,这种算法也能很好达到密的需要。每一个数据段(总是一个字节)对应着“置换表”中的一个偏移量,偏移量所对应的值就输出成为密后的文件。密程序和解密程序都需要一个这样的“置换表”。事实上,80x86 cpu系列就有一个指令‘xlat’在硬件级来完成这样的工作。这种算法比较简单,解密速度都很快,但是一旦这个“置换表”被对方获得,那这个密方案就完全被识破了。更进一步讲,这种算法对于黑客破译来讲是相当直接的,只要找到一个“置换表”就可以了。这种方法在计算机出现之前就已经被广泛的使用。 对这种“置换表”方式的一个改进就是使用2个或者更多的“置换表”,这些表都是基于数据流中字节的位置的,或者基于数据流本身。这时,破译变的更困难,因为黑客必须正确的做几次变换。通过使用更多的“置换表”,并且按伪随机的方式使用每个表,这种改进的密方法已经变的很难破译。比如,我们可以对所有的偶数位置的数据使用a表,对所有的奇数位置使用b表,即使黑客获得了明文和密文,他想破译这个密方案也是非常困难的,除非黑客确切的知道用了两张表。 与使用“置换表”相类似,“变换数据位置”也在计算机密中使用。但是,这需要更多的执行时间。从输入中读入明文放到一个buffer中,再在buffer中对他们重排序,然后按这个顺序再输出。解密程序按相反的顺序还原数据。这种方法总是和一些别的算法混合使用,这就使得破译变的特别的困难,几乎有些不可能了。例如,有这样一个词,变换起字母的顺序,slient 可以变为listen,但所有的字母都没有变化,没有增也没有减少,但是字母之间的顺序已经变化了。 但是,还有一种更好的算法,只有计算机可以做,就是字/字节循环移位和xor操作。如果我们把一个字或字节在一个数据流内做循环移位,使用多个或变化的方向(左移或右移),就可以迅速的产生一个密的数据流。这种方法是很好的,破译它就更困难!而且,更进一步的是,如果再使用xor操作,按位做异或操作,就就使破译密码更困难了。如果再使用伪随机的方法,这涉及到要产生一系列的数字,我们可以使用fibbonaci数列。对数列所产生的数做模运算(例如模3),得到一个结果,然后循环移位这个结果的次数,将使破译次密码变的几乎不可能!但是,使用fibbonaci数列这种伪随机的方式所产生的密码对我们的解密程序来讲是非常容易的。 在一些情况下,我们想能够知道数据是否已经被篡改了或被破坏了,这时就需要产生一些校验码,并且把这些校验码插入到数据流中。这样做对数据的防伪与程序本身都是有好处的。但是感染计算机程序的病毒才不会在意这些数据或程序是否过密,是否有数字签名。所以,密程序在每次load到内存要开始执行时,都要检查一下本身是否被病毒感染,对与需要解密的文件都要做这种检查!很自然,这样一种方法体制应该保密的,因为病毒程序的编写者将会利用这些来破坏别人的程序或数据。因此,在一些反病毒或杀病毒软件中一定要使用密技术。 循环冗余校验是一种典型的校验数据的方法。对于每一个数据块,它使用位循环移位和xor操作来产生一个16位或32位的校验和 ,这使得丢失一位或两个位的错误一定会导致校验和出错。这种方式很久以来就应用于文件的传输,例如 xmodem-crc。 这是方法已经成为标准,而且有详细的文档。但是,基于标准crc算法的一种修改算法对于发现密数据块中的错误和文件是否被病毒感染是很有效的。 二.基于公钥
(1)替换和换位是密码技术的基础,如果采用替换算法,遵循以下规则:A G、 B I、C K、D M、E O、F Q;则BED经过移位转换之后的密文是______。 (2)在以下程序中,input的长度大于__20____,就会造成buffer的溢出,使程 序运行错误。 Void func(char*input) { Char buffer[20]; Strcpy(buffer,input); } (3)黑客的英文表示为___hacker_____,骇客的英文表示为_cracker ___________。 (4)对于共享式和交换式两种结构的网络,___共享式______相对来说易于窃听, 而___交换式______需要用更为复杂的技术才能实现。 (5)Sniffer通过对网卡的工作模式由正常模式改变为_混杂模式__,就可以对所 有听到的数据帧都产生一个硬件中断以提交给主机进行处理。 (6)一个56位密钥长度的算法将会有___2^56____种可能不同的钥匙,如密钥长 度为57位,则可能会有___2^57______种可能不同的钥匙。 (7)用户收到了一封可疑的电子邮件,要求用户提供银行账号及密码,这是属于 ________攻击手段 A、缓存溢出攻击 B、钓鱼攻击 C、暗门攻击 D、DDOS攻击 (8)在网络安全中,中断指攻击者破坏网络系统的资源,使之变成无效的或无用 的,这是对系统________的攻击。 A、可用性 B、保密性 C、完整性 D、真实性 (9)在混合密方式下,真正用来解密通信过程中所传输数据(明文)的密钥 是_______ A、非对称算法的公钥 B、对称算法的密钥 C、非对称算法的私钥 (10)在以下人为的恶意攻击行为中,属于主动攻击的是_______ A、数据篡改及破坏 B、数据窃听 C、数据流分析 D、非法访问 (11)下列说法哪一条不正确? A、密码学主要研究对信息进行编码,实现对信息的隐藏 B、算法是对明文进行密时采用的一组规则 C、解密算法是对密文进行解密时采用的一组规则 D、密钥是密和解密时使用的一组秘密信息 (12)下列哪一种不是三重DES模型? A、使用三个不同密钥顺序进行三次密变换 B、使用三个不同密钥依次进行密—解密密变换 C、使用k1=k3顺序进行三次密变换 D、使用k1=k2依次进行密—解密密变换 (13)下列有公钥关密码学的说法哪些是正确的? (1)解决了密钥的发布和管理问题,任何一方可以公开其公开密钥,而保留 其私钥 (2)发送发可以用人人皆知的接收方公开密钥对发送的信息进行密,安全 的传送给接收方,然后由接收方用自己的私钥进行解密 (3)可以应用于密/解密、数字签名和密钥交换 (4)基础是单向陷门函数 (5)两个密钥中的任何一个都可以用作密而另一个用作解密 A、1,2,3 B、1,2,4 C、1,2,3,4 D、以上说法都正确 (14)下面入侵检测技术当中,哪一种是基于模式匹配技术的 A、异常检测 B、误用检测 C、基于统计的检测 D、基于数据挖掘的检测 (15)以下关于宏病毒说法正确的是:() A、宏病毒主要感染可执行文件 B、宏病毒仅向办公自动化程序编制的文档进行传染 C、宏病毒主要感染软盘、硬盘的引导扇区或主引导扇区 D、CIH病毒属于宏病毒 (16)以下关于计算机病毒的特征说法正确的是:() A、计算机病毒只具有破坏性,没有其他特征 B、计算机病毒具有破坏性,不具有传染性 C、破坏性和传染性是计算机病毒的两大主要特征 D、计算机病毒只具有传染性,不具有破坏性 (17)以下关于混合密方式说法正确的是:() A、采用公开密钥体制进行通信过程中的解密处理 B、采用公开密钥体制对对称密钥体制的密钥进行密后的通信 C、采用对称密钥体制对对称密钥体制的密钥进行密后的通信 D、采用混合密方式,利用了对称密钥体制的密钥容易管理和非对称密钥体制的 解密处理速度快的双重优点 (18)密技术不能实现:() A、数据信息的完整性 B、基于密码技术的身份认证 C、机密文件密 D、基于IP头信息的包过滤 (19)以下关于数字签名说法正确的是:() A、数字签名是在所传输的数据后附上一段和传输数据毫无关系的数字信息 B、数字签名能够解决数据的密传输,即安全传输问题 C、数字签名一般采用对称密机制 D、数字签名能够解决篡改、伪造等安全性问题 (20)为什么进行DoS攻击的时候,攻击源通常要伪造不存在的IP地址或未 启动 主机的IP地址? 为了掩藏自己不被受害者发现。 ----------------------- 网络安全练习全文共6页,当前为第1页。 网络安全练习全文共6页,当前为第2页。 网络安全练习全文共6页,当前为第3页。 网络安全练习全文共

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧