多表代换Virginia加密算法及秘钥破解算法的实现
多表代换Virginia加密算法及秘钥 破解算法的实现
编程任务要求编程语言为C语言或其它语言,要求提交加密解密、破解源代码文件。实现对任意有意义的英文文本文件(*.txt)的Virginia加密、解密算法,其中秘钥是任意输入的一个字符串。要求提供明文文本文件、密文文本文件。·在不知道秘钥的情况下,对一个用virginia加密算法生成的密文文本文件进行破解,包括破解秘钥、生成对应的明文。要求提供程序测试说明文档
编程任务要求 • 编程语言为C语言或其它语言,要求提交加密、 解密、破解源代码文件。 • 实现对任意有意义的英文文本文件(*.txt)的 Virginia加密、解密算法,其中秘钥是任意输 入的一个字符串。要求提供明文文本文件、密 文文本文件。 • 在不知道秘钥的情况下,对一个用Virginia加 密算法生成的密文文本文件进行破解,包括破 解秘钥、生成对应的明文。要求提供程序测试 说明文档
Virginia加密算法、解密算法
Virginia加密算法、解密算法
Virginia加密算法·假设语言的字符集为Charset[26]={'a', 'b', ..., 'z'字符集大小=26·对应的字符编码为Coding[26]={0, 1, ..., 25]
Virginia加密算法 • 假设语言的字符集为 Charset[26]={‘a’, ’b’, ., ’z’} 字符集大小=26 • 对应的字符编码为 Coding[26]={0, 1, ., 25}
Virginia加密算法·Virginia加密算法是对明文进行加密的过程中依照密钥的指示轮流使用多个单表代替密码·设明文串为:M=mjm2...mn,m;Echarset, n是明文长度·秘钥为:d是秘钥长度K=k,kz...ka, k,Echarset,·密文为:C=CiC2...Cn,c,Echarset, n是密文长度
Virginia加密算法 • Virginia加密算法是对明文进行加密的 过程中依照密钥的指示轮流使用多个 单表代替密码。 • 设明文串为: M=m1m2.mn,mi∈charset, n是明文长度 • 秘钥为: K=k1 k2.kd,ki∈charset, d是秘钥长度 • 密文为: C=c1 c2.cn,ci∈charset, n是密文长度