凯撒密码位移规律表怎么用(密码设置移位法)

2023-03-21 23:56:09 密码用途 思思

凯撒移位密码。

也就是一种最简单的错位法,将字母表前移或者后错几位

,例如:

明码表:ABCDEFGHIJKLMNOPQRSTUVWXYZ。

密码表:DEFGHIJKLMNOPQRSTUVWXYZABC。

这就形成了一个简单的密码表,如果我想写frzy(即明文),那么对照上面密码表编成密码也就是iucb(即密文)了。密码表可以自己选择移几位,移动的位数也就是密钥。

进制转换密码。比如给你一堆数字,乍一看头晕晕的,你可以观察数字的规律,将其转换为10进制数字,然后按照每个数字在字母表中的排列顺序,拼出正确字母。

密码学知识精粹

① 替换法

替换法很好理解,就是用固定的信息将原文替换成无法直接阅读的密文信息。例如将 b 替换成 w ,e 替换成p ,这样bee 单词就变换成了wpp,不知道替换规则的人就无法阅读出原文的含义。

替换法有单表替换和多表替换两种形式。

② 移位法

移位法就是将原文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后得出密文,典型的移位法应用有 “ 恺撒密码 ”。

例如约定好向后移动2位(abcde - cdefg),这样 bee 单词就变换成了dgg。

古典密码破解方式--频率分析法

古典密码的安全性受到了威胁,外加使用便利性较低,到了工业化时代,近现代密码被广泛应用。

恩尼格玛机

恩尼格玛机是二战时期纳粹德国使用的加密机器,其使用的加密方式本质上还是移位和替代,后被英国破译,参与破译的人员有被称为计算机科学之父、人工智能之父的图灵。

① 散列函数加密(消息摘要,数字摘要)

散列函数,也见杂凑函数、摘要函数或哈希函数,可将任意长度的消息经过运算,变成固定长度数值,常见的有MD5、SHA-1、SHA256,多应用在文件校验,数字签名中。

MD5 可以将任意长度的原文生成一个128位(16字节)的哈希值

SHA-1可以将任意长度的原文生成一个160位(20字节)的哈希值

特点:消息摘要(Message Digest)又称为数字摘要(Digital Digest)

它是一个唯一对应一个消息或文本的固定长度的值,它由一个单向Hash加密函数对消息进行作用而产生

使用数字摘要生成的值是不可以篡改的,为了保证文件或者值的安全

MD5算法 : 摘要结果16个字节, 转16进制后32个字节

SHA1算法 : 摘要结果20个字节, 转16进制后40个字节

SHA256算法 : 摘要结果32个字节, 转16进制后64个字节

SHA512算法 : 摘要结果64个字节, 转16进制后128个字节

② 对称加密

对称密码应用了相同的加密密钥和解密密钥。对称密码分为:序列密码(流密码),分组密码(块密码)两种。流密码是对信息流中的每一个元素(一个字母或一个比特)作为基本的处理单元进行加密,块密码是先对信息流分块,再对每一块分别加密。

例如原文为1234567890,流加密即先对1进行加密,再对2进行加密,再对3进行加密……最后拼接成密文;块加密先分成不同的块,如1234成块,5678成块,90XX(XX为补位数字)成块,再分别对不同块进行加密,最后拼接成密文。前文提到的古典密码学加密方法,都属于流加密。

示例

我们现在有一个原文3要发送给B

设置密钥为108, 3 * 108 = 324, 将324作为密文发送给B

B拿到密文324后, 使用324/108 = 3 得到原文

常见加密算法

DES : Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并授权在非密级政府通信中使用,随后该算法在国际上广泛流传开来。

AES : Advanced Encryption Standard, 高级加密标准 .在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。

特点

加密速度快, 可以加密大文件

密文可逆, 一旦密钥文件泄漏, 就会导致数据暴露

加密后编码表找不到对应字符, 出现乱码,故一般结合Base64使用

加密模式

ECB : Electronic codebook, 电子密码本. 需要加密的消息按照块密码的块大小被分为数个块,并对每个块进行独立加密

优点 : 可以并行处理数据

缺点 : 同样的原文生成同样的密文, 不能很好的保护数据

CBC : Cipher-block chaining, 密码块链接. 每个明文块先与前一个密文块进行异或后,再进行加密。在这种方法中,每个密文块都依赖于它前面的所有明文块

优点 : 同样的原文生成的密文不一样

缺点 : 串行处理数据

填充模式:当需要按块处理的数据, 数据长度不符合块处理需求时, 按照一定的方法填充满块长的规则

NoPadding不填充.

对应的AES加密类似,但是如果使用的是AES加密,那么密钥必须是16个字节。

加密模式和填充模式:

AES/CBC/NoPadding (128)

AES/CBC/PKCS5Padding (128)

AES/ECB/NoPadding (128)

AES/ECB/PKCS5Padding (128)

DES/CBC/NoPadding (56)

DES/CBC/PKCS5Padding (56)

DES/ECB/NoPadding (56)

DES/ECB/PKCS5Padding (56)

DESede/CBC/NoPadding (168)

DESede/CBC/PKCS5Padding (168)

DESede/ECB/NoPadding (168)

DESede/ECB/PKCS5Padding (168)

RSA/ECB/PKCS1Padding (1024, 2048)

RSA/ECB/OAEPWithSHA-1AndMGF1Padding (1024, 2048)

RSA/ECB/OAEPWithSHA-256AndMGF1Padding (1024, 2048)

PS: Base64是网络上最常见的用于传输8Bit字节码的可读性编码算法之一

可读性编码算法不是为了保护数据的安全性,而是为了可读性

可读性编码不改变信息内容,只改变信息内容的表现形式

所谓Base64,即是说在编码过程中使用了64种字符:大写A到Z、小写a到z、数字0到9、“+”和“/”

Base64 算法原理:base64 是 3个字节为一组,一个字节 8位,一共 就是24位 ,然后,把3个字节转成4组,每组6位(3 * 8 = 4 * 6 = 24),每组缺少的2位会在高位进行补0 ,这样做的好处在于 base取的是后面6位而去掉高2位 ,那么base64的取值就可以控制在0-63位了,所以就叫base64,111 111 = 32 + 16 + 8 + 4 + 2 + 1 =

toString()与new String ()用法区别

③ 非对称加密

非对称密码有两支密钥,公钥(publickey)和私钥(privatekey),加密和解密运算使用的密钥不同。用公钥对原文进行加密后,需要由私钥进行解密;用私钥对原文进行加密后(此时一般称为签名),需要由公钥进行解密(此时一般称为验签)。公钥可以公开的,大家使用公钥对信息进行加密,再发送给私钥的持有者,私钥持有者使用私钥对信息进行解密,获得信息原文。因为私钥只有单一人持有,因此不用担心被他人解密获取信息原文。

特点:

加密和解密使用不同的密钥

如果使用私钥加密, 只能使用公钥解密

如果使用公钥加密, 只能使用私钥解密

处理数据的速度较慢, 因为安全级别高

常见算法:RSA,ECC

数字签名

数字签名的主要作用就是保证了数据的有效性(验证是谁发的)和完整性(证明信息没有被篡改),是非对称加密和消息摘要的应用

keytool工具使用

keytool工具路径:C:\Program Files\Java\jre1.8.0_91\bin

--- END

设置密码有什么规则?

密码设置时,须遵守以下规则:密码不能和登录名完全一致;和联系方式中电话、传真、手机、邮编的任何一个完全相同zd。

用连续密码设置时,须遵守以下规则:

1、密码不能和登录名完全一致。

2、和联系方式中“电话”、“传真”、“手机”、“邮编”的任何一个完全相同。

3、用连续数字(递增或递减)。

4、用连续且大小写一致的英文字符(顺序字符或倒序字符)。

5、用连续同一个字符或者数字。

例如: 明码表:ABCDEFGHIJKLMNOPQRSTUVWXYZ 

密码表:DEFGHIJKLMNOPQRSTUVWXYZABC,这就形成了一个简单的密码表,如果想写 frzy(即明文),那么对照上面密码表编成密码也就是 iucb(即密文)了。

密码表可以自己选择移几位,移动的位数也就是密钥。

3、栅栏易位法。

即把将要传递的信息中的字母交替排成上下两行,再将下面一行字母排在上面一行的后边,从而形成一段密码。

举例:TEOGSDYUTAENNHLNETAMSHVAED 

解:将字母分截开排成两行,如下T EOG S DY U T AEN NH LN ET AMS H VAED再将第二行字母分别放入第一行中,得到以下结果 THELONGEST DAY MUSTHAVE AN END。

扩展资料:

其他加密方法

替换加密法:用一个字符替换另一个字符的加密方法。

换位加密法:重新排列明文中的字母位置的加密法。

回转轮加密法:一种多码加密法,它是用多个回转轮,每个回转轮实现单码加密。这些回转轮可以组合在一起,在每个字母加密后产生一种新的替换模式。

多码加密法:一种加密法,其替换形式是:可以用多个字母来替换明文中的一个字母。

夹带法:通过隐藏消息的存在来隐藏消息的方法。

其它算法,如XOR、CA (流加密法)、MD5、SHA1、(流加密法)ElGamal、Diffie-Hellman、新型椭圆曲线算法ECC(数字签名、公匙加密法)等。

密码可运用于电脑里的文件保护,防止泄漏个人信息。

参考资料:百度百科-密码

“密码体制”包含哪些要素?分别表示什么含义?

“密码体制”包含要素和含义分别如下所述:

对称密码:用于加密和解密的密码相同,加密速度较快,可用于长文本的加密。

达到的密码学目标:机密性。

非对称密码:该体制有成为公钥密码体制,加密和解密的密码不相同,一般,公钥用于加密,私钥用于解密。 非对称密码加密速度较慢,一般用于对称密码的保护和数字签名。

达到的密码学目标:机密性、认证、不可抵赖性。

杂凑密码:又称为HASH密码,用于计算消息摘要值。杂凑运算是不可逆的。

达到的密码学目标:完整性

关于“密码体制”的知识延展:

外文名:cipher system

含义:

也叫密码系统,是指能完整地解决信息安全中的机密性、数据完整性、认证、身份识别、可控性及不可抵赖性等问题中的一个或几个的一个系统。对一个密码体制的正确描述,需要用数学方法清楚地描述其中的各种对象、参数、解决问题所使用的算法等。

完成加密和解密的算法。通常,数据的加密和解密过程是通过密码体制(cipher system) +密钥(keyword)来控制的。 密码体制必须易于使用,特别是应当可以在微型计算机使用。密码体制的安全性依赖于密钥的安全性,现代密码学不追求加密算法的保密性,而是追求加密算法的完备,即:使攻击者在不知道密钥的情况下,没有办法从算法找到突破口。

基本模式:

通常的密码体制采用移位法、代替法和代数方法来进行加密和解密的变换,可以采用一种或几种方法结合的方式作为数据变换的基本模式,下面举例说明:

移位法也叫置换法。移位法把明文中的字符重新排列,字符本身不变但其位置改变了。

例如最简单的例子:把文中的字母和字符倒过来写。

或将密文以固定长度来发送,如:5791ECNI SYLDIPAT DEVLOBES AHYTIRUC ESATAD**

组成:

(1)通常情况下,一个密码体制由五元组{M,C,K,E,D}五个部分组成:

(2)明文信息空间Message:它是全体明文m的集合;

(3)密文信息空间Ciphertext:它是全体密文c的集合;

(4)密钥空间Key:它是全体密钥k的集合。其中每一个密钥k均由加密密钥ke和解密密钥kd组成,即k=(ke,kd);

(5)加密算法Encryption Algorithm:它是一族由M到C的加密变换,即 M→C; 也就是 C = ( M, Ke)。

(6)解密算法Decryption Algorithm:它是一族由C到M的加密变换,即 C→M; 也就是 M = ( C, Kd)。

换位密码的加密方法

加密换位密码通过密钥只需要对明文进行加密,并且重新排列里面的字母位置即可。具体方法如下

1、基于二维数组移位的加密算法

给定一个二维数组的列数,即该二维数组每行可以保存的字符个数。再将明文字符串按行依次排列到该二维数组中。最后按列读出该二维数组中的字符,这样便可得到密文。

2、换位解密算法(基于二维数组移位的解密算法)

先给定一个二维数组的列数,即该二维数组每行可以保存的字符个数,并且这个数应该和加密算法中的一致。接下来将密文字符串按列一次性排列到该二维数组中。最后按行读出该二维数组中的字符即可。

3、换位加密算法

首先按照密钥排列顺序:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ将想要加密的明文加密,然后列出表格,找出对应的字母,就是密钥。然后对他们进行换位加密,就是将表格的第二行依据密钥排列顺序进行排序以便得到加密后的密文。

扩展资料

数据加密技术的分类

1、专用密钥

又称为对称密钥或单密钥,加密和解密时使用同一个密钥,即同一个算法。单密钥是最简单方式,通信双方必须交换彼此密钥,当需给对方发信息时,用自己的加密密钥进行加密,而在接收方收到数据后,用对方所给的密钥进行解密。当一个文本要加密传送时,该文本用密钥加密构成密文,密文在信道上传送,收到密文后用同一个密钥将密文解出来,形成普通文体供阅读。

2、对称密钥

对称密钥是最古老的,一般说“密电码”采用的就是对称密钥。由于对称密钥运算量小、速度快、安全强度高,因而如今仍广泛被采用。它将数据分成长度为64位的数据块,其中8位用作奇偶校验,剩余的56位作为密码的长度。首先将原文进行置换,得到64位的杂乱无章的数据组,然后将其分成均等两段;第三步用加密函数进行变换,并在给定的密钥参数条件下,进行多次迭代而得到加密密文。

3、公开密钥

又称非对称密钥,加密和解密时使用不同的密钥,即不同的算法,虽然两者之间存在一定的关系,但不可能轻易地从一个推导出另一个。非对称密钥由于两个密钥(加密密钥和解密密钥)各不相同,因而可以将一个密钥公开,而将另一个密钥保密,同样可以起到加密的作用。公开密钥的加密机制虽提供了良好的保密性,但难以鉴别发送者,即任何得到公开密钥的人都可以生成和发送报文。

4、非对称加密技术

数字签名一般采用非对称加密技术(如RSA),通过对整个明文进行某种变换,得到一个值,作为核实签名。接收者使用发送者的公开密钥对签名进行解密运算,如其结果为明文,则签名有效,证明对方的身份是真实的。数字签名不同于手写签字,数字签名随文本的变化而变化,手写签字反映某个人个性特征,是不变的;数字签名与文本信息是不可分割的,而手写签字是附加在文本之后的,与文本信息是分离的。

参考资料来源:百度百科-换位密码