1.密码学
   密码学(cryptology)是研究编制密码和破译密码的技术的科学。研究密码变化的客观细律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。
    著名的密码学者Ron Rivest认为“密码学是关于如何在敌人存在的环境中通讯”,是信息安全等相关议题,如认证、访问控制的核心。其首要目的是隐藏信息的含义,而不是隐藏信息的存在。
2.加密模型
我要介绍几种基本的加密解密方法,首先了解一下数据加密的模型:

(1)密码(password):是通信双方按约定的法则进行信息特殊变换的一种重要保密手段。
(2)明文(plaintex或Message):就是原始的信息,或是需要被密码保护的信息,可能是比特流、文本文件、位图、数字化的语音流或视频图像等.

(3)密文(ciphertext):原始信息经过加密处理后,隐藏原文含义的信息。
(4)加密(enciphering):把原始信息转换成不直接可读形式的过程。
(5解密(deciphering):是加密的逆过程,从加密过的信息中得到原始信息的过程。

(6)密钥(key):是在控制加密和解密算法实现过程中通信双方掌握的专门信息。密钥是一个具有特定长度的数字串,其值是从大量的随机数中选取的。

3.基本加密方法

1.移位密码(凯撒密码)

Step:将密码按顺序向前(向后)移动n位。

Eg:

明文:ABCDEFG   key=3

密文:DEFGABC

2.置换密码(换位密码)

Step:一般是纵行换位密码,明文以固定的宽度水平的写在一张图表纸上,密文按垂直方向读出,解密就是密文按相同的宽度垂直的写在图表纸上,然后水平的读出明文。

Eg:

明文:attack begins at five   密钥:cipher

因为密钥有6个字符,所以将明文按照一行6个字母排成矩阵得

a

t

t

a

c

k

b

e

g

i

n

s

a

t

f

i

v

e

分析置换规则,根据26个英文字母排列顺序,得出密钥cipher各个字母的先后顺序,c是第一位出现。其次是e,以此类推得出其顺序为:145326

随即将顺序规则插入明文矩阵得

a

t

t

a

c

k

b

e

g

i

n

s

a

t

f

i

v

e

1

4

5

3

2

6

纵列依次写下得密文:aba cnv aii tet tgf kse

3.替换密码

Step:这是一种基于凯撒密码的加密方式。得到偏移数量后,将明文与密文相对照,得到一个混合表。使用混合表,我们能得到最终密文。

Eg1:

明文:ABCDEFGHIJKLMNOPQRSTUVWXYZ   key=3

密文:DEFGGHIJKLMNOPQRSTUVWXYZABC

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

得知混合表为:A=D B=E C=F D=G E=H F=I G=J……X=A Y=B Z=C

明文:I want give you a hug

密文:L ZDQW JLYH BRX D KXJ

Eg2:

当得到字母组合的密钥时,将字母组合写在混合表最前面,重复的字母删去,组成混合表。

明文:ABCDEFGHIJKLMNOPQRSTUVWXYZ   key=ZEBRAS

密文:ZEBRASCDFGHIJKLMNOPQTUVWXY

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

Z

E

B

R

A

S

C

D

F

G

H

I

J

K

L

M

N

O

P

Q

T

U

V

W

X

Y

得知混合表为:A=Z B=E C=D D=R E=A F=S G=C …… W=V X=W Y=X Z=Y

明文:We are discovered

密文:VA ZOA RFPBLUAOAR

3.Vigenere加密

话不多说,直接上例子!

Eg:

明文:We are finally discovered    密钥:radio

首先先将26个英文字母标个序号(从0开始标记)

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

接着将明文拆分成单独的字母记为P1、P2……P22,根据26个字母所对应的序号将其标记。同理,将密钥拆分为单独的字母循环放入表格中并对应相应序号。

P1

P2

P3

P4

P5

P6

P7

P8

P9

P10

P11

P12

P13

P14

P15

P16

P17

P18

P19

P20

P21

P22

w

e

a

r

e

f

i

n

a

l

l

y

d

i

s

c

o

v

e

r

e

d

22

4

0

17

4

5

8

13

0

11

11

14

3

8

18

2

14

21

4

17

4

3

K1

K2

K3

K4

K5

K6

K7

K8

K9

K10

K11

K12

K13

K14

K15

K16

K17

K18

K19

K20

K21

K22

r

a

d

i

o

r

a

d

i

o

r

a

d

i

o

r

a

d

i

o

r

a

17

0

3

8

14

17

0

3

8

14

17

0

3

8

14

17

0

3

8

14

17

0

最重要的一步来了,我们将根据上表算出密文的所对应的字母。

公式:密文C=明文P+密钥K

当计算结果超过25时,将超过25的部分重新归0开始计算。

例如:C1=P1+k1=22+17=39 超过25的部分为14,因为是从0开始计算,所以得出C1=13,又因13对应的字母为N,得出C1=N。

C2=P2+K2=4+0=4=E

C3=P3+K3=0+3=3=D

……

C22=P22+K22=3+0=3=D

得出密文为:NEDZSWIQIZCOGQGTOYMFVD

以上便是我介绍的几种比较简单基础的加密算法。

——参考内容:《边做边学信息安全(人民邮电出版社)》、百度百科

密码学概述与基本加密方式相关推荐

  1. 密码学的几种加密方式

    这段时间开始接触区块链技术,区块链中很重要的一个环节就是加密,本文简要介绍一下常用的加密方式 常用的加密方式有这四种,比特币的交易就是基于数字签名加密方式的. 1.对称加密 对称加密是使用同一个密钥对 ...

  2. 密码学之常见加密方式(05)

    常见加密方式 文章目录 常见加密方式 前言 一.对称加密 二.DES加密 三.DES解密 Base64 算法简介 Base64 算法原理 Base64 构成原则 四.base64补等号测试 五.AES ...

  3. Python实现前端AES加密方式分析,***密码学必备!

    在前端常见的加密方式中AES很少使用,因为相对于非对称的RSA安全性很低,AES是典型的对称加密,密钥就在前端源码里. 案列网站是ewt360.com,一个并不复杂的网站,首先抓个包看看: 加密字段只 ...

  4. 密码学之恺撒加密(03)

    恺撒加密 文章目录 恺撒加密 一.中国古代加密 二.外国加密 三.凯撒位移加密 四.凯撒加密和解密 五.频度分析法破解恺撒加密 密码棒 频率分析解密法 英文字母频率统计表: 以下是本篇文章正文内容 一 ...

  5. 简述https的几种加密方式

    加密方式 常见的加密方式:对称加密和非对称加密. 对称加密算法和非对称加密算法只不过是密码学中的两种加密算法罢了,所谓的算法就是一种可以将信息从一种形式转变为另一种形式的规则. 对称加密 概念:对称密 ...

  6. 无线路由的四种加密方式

    Do you know the encryption technology of Wi-Fi application? 一.WEP加密 1.1 百度释义   WEP(Wired Equivalent ...

  7. 最常见加密方式和Python实现

    前言 我们所说的加密方式,都是对二进制编码的格式进行加密的,对应到Python中,则是我们的Bytes. 所以当我们在Python中进行加密操作的时候,要确保我们操作的是Bytes,否则就会报错. 将 ...

  8. Java各种加密方式集锦(AES,DES,RSA,DSA,MD5,SHA)

    一. 什么是加密 加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容.在网络数据传输过程中会经常用到报文加密,通常是对报文体 ...

  9. Android常用加密方式

    加密解密简介 加密技术是最常用的安全保密手段,利用技术手段把重要的数据变为乱码(加密)传送,到达目的地后再用相同或不同的手段还原(解密).加密技术包括两个元素:算法和密钥.算法是将普通的信息或者可以理 ...

最新文章

  1. 进一步提升用户信息安全保护意识 小米安全与隐私宣传月完满落幕
  2. php基础知识(六)
  3. PendingIntent与Intent区别
  4. dbms支持哪几种数据模型_DBMS中不同类型的数据模型
  5. hdu 4588 Count The Carries
  6. 在BCB中使用多线程实例
  7. 编译LTIB遇到的问题解决办法
  8. javashop B2C开源电商系统源代码
  9. 利用canvas制作乱跑的小球
  10. 计算机连接小米usb驱动,win7系统安装小米usb驱动的操作方法
  11. 偏差与方差、L1正则化、L2正则化、dropout正则化、神经网络调优、批标准化Batch Normalization(BN层)、Early Stopping、数据增强
  12. 同步升压与非同步升压区别
  13. ADB命令连接逍遥模拟器
  14. 计算机应用Office2016,Office 2016
  15. 如何删除PDF水印?PDF删除水印怎么操作
  16. 【译】Jep文档(4)——数据类型(Data Type)
  17. unity 模拟弹簧
  18. nova3安装android10系统,华为nova3 刷机教程 华为nova3 强刷升级教程
  19. Python + Selenium环境搭建
  20. Android系统服务(SystemService)简介

热门文章

  1. 〖OKaimi点金胜手_2019年4月〗走地大球分析系统|万胜
  2. C语言编棱,2009计算机二级C语言:C语言棱形图案写法
  3. CW32L083系列MCU系统时钟详解
  4. Spring集成JMS入门
  5. 翻译文章后再来看翻译文章
  6. 关于任意群是否都是可以由其元素生成,及群中心与元素正规化子关系的分析(2009及1997群论真题)
  7. 啦啦~~~记录江苏省C等级考试相关题目
  8. 2021CCPC新疆省赛题解BDEFGHIJK
  9. C Primer Plus (第6版) 读书笔记_Chapter 2
  10. css滚动条-webkit-scrollbar