密码学

概述

如何将信息进行加密,传送到接收方,接收方在进行解密获取信息,中间即使有窃听者窃听到信息也可解密破解。

密码学分类

  1. 密码编辑学(保密)
  2. 密码分析学(破译)
  • 该破译与传统的黑客技术有一定的区别

传统密码体质

  1. 密码系统图示

  2. 密码系统定义

  • 一个密码系统是一个五元组(P,C,K,E,D),

    • P:明文集
    • C:密文集
    • K:密钥集
    • E:加密算法集
    • D:解密算法集
  • 密码学 Cryptography
  • 加密 Encryption
  • 解密 Decryption

置换密码

  • 置换密码是根据一定的规划重新排列明文,以便打破明文的结构特征,也称为换位密码。
  • 常见有两种:
    • 列置换密码
    • 周期置换密码

1.置换定义

在限集X上的运算:X->X若是双射函数,则称其为一个置换。

M=(1 2 3 4 5 6 7 8
2 5 3 6 1 8 4 7)=(1 2 5)(3)(4 6 8 7)

逆置换

M^-1=(1 2 3 4 5 6 7 8
2 5 3 6 1 8 4 7)^-1=(2 5 3 6 1 8 4 7
1 2 3 4 5 6 7 8)
=(1 2 3 4 5 6 7 8
5 1 3 7 2 4 8 6)=(1 5 2)(3)(4 7 8 6)

2.置换密码

  • 加密:
  • 解密:
  • 攻击:
    • 穷举密钥进行攻击知道有意义的明文为止

3.周期置换密码

  • 周期置换密码是将明文串P按照固定长度m分组,然后对每一组按照1,2,……,m的某个置换重新排列位置,从而得到密文C。
  • 解密时将密文按照长度m分组,对每组按照逆置换重新排列,从而得到明文m。
    • 明文M=abcdefg,分组长度m=4,密钥=(1 3)(2 4)则密文C=cdabghef
m=(1 2 3 4
3 4 1 2)
m1=(a b c d)->(c d a b)
m2=(e f g h)->(g h e f)
C=(cdabghef)

4.列置换密码

  • 加密:

    • 将明文P以固定分组宽度m按行写出,每行m个字符,不足部分用空格代替,设有n行,得n行m列字符矩阵M;
    • 按1,2,……,m的某个位置交换列的位置次序,得字符矩阵M';
    • 将M'按1,2,……,m列的顺序依次独处密文序列C;
P=abcdefgh,分组宽为m=4,得2行4列矩阵M:
M=(a b c d
e f g h)
设置换x=(1 3)(2 4)
则M'=(c d a b
g h e f)
则密文序列C=cgdhaebf

解密:

  • 将密文C以分组宽度m按照写出字符矩阵,的n行m列M';
  • 按1,2,……,m的逆置换交换列的位置次序,得字符矩阵M;
  • 将M按行的顺序依次独处明文序列P。
密文序列C=cgdhaebf
M'=(c d a b
g h e f)
逆置换x'=(1 3)(2 4)
M=(a b c d
e f g h)

注:

  1. 置换摩玛、周期置换密码、列置换密码三种加密方法本质上相同;
  2. 三种加密方法都可以通过穷举密钥来进行攻击
  3. 明文字母打乱后变成密文字母,字母相同不变,由密文中特殊的字母组成由意义的单词可去推测密钥的部分信息。

密码学概述&置换密码的更多相关文章

  1. android 数据加密——加密的概述

    数据加密又称密码学,它是一门历史悠久的技术,指通过加密算法和加密密钥将明文转变为密文,而解密则是通过解密算法和解密密钥将密文恢复为明文.数据加密目前仍是计算机系统对信息进行保护的一种最可靠的办法.它利 ...

  2. 【原创】浅析密码学在互联网支付中的应用|RSA,Hash,AES,DES,3DES,SHA1,SHA256,MD5,SSL,Private Key,Public Key

    一)概述 什么是互联网支付? 当支付遇到互联网,一场革命自然不可避免.成为现实的是传统的现金支付已经“退居二线”,各种在线支付方式成为人们日常消费的主要支付方式.银行推出的网银以及第三方支付公司推出的 ...

  3. 2019-11-26:密码学基础知识,csrf防御

    信息安全的基础是数学--->密码算法--->安全协议(ssl VPN)-->应用(证书 PKI)密码学入门密码编码学:研究加解密算法的学科密码分析学:研究破译密码算法的学科 加解密分 ...

  4. 分组密码(三)DES 算法— 密码学复习(六)

    在介绍完Feistel结构之后,接下来进入到著名的DES算法. 6.1 DES算法的意义 在正式介绍DES之前,首先介绍几个重要的历史时间节点. ① 1973年,美国国家标准局(NBS)向社会公开征集 ...

  5. 密码学基础:AES加密算法

    [原创]密码学基础:AES加密算法-密码应用-看雪论坛-安全社区|安全招聘|bbs.pediy.com 目录 基础部分概述: 第一节:AES算法简介 第二节:AES算法相关数学知识 素域简介 扩展域简 ...

  6. Bristol大学密码学博士生的五十二个知识点

    Bristol大学密码学博士生的五十二个知识点 这个系列,是Bristol大学的密码安全工作组为密码学和信息安全相关的博士准备了52个基本知识点. 原地址:http://bristolcrypto.b ...

  7. 密码学之PRP/PRF转换引理

    本文将介绍密码学中的PRF.PRP等相关概念,并介绍 PRP/PRF 转换引理及其证明,希望读完本文后,你能对现代密码学中这几个基础概念有所了解. 在开始本文前,希望你有如下预备知识: 现代密码学是怎 ...

  8. 【AR实验室】ARToolKit之概述篇

    0x00 - 前言 我从去年就开始对AR(Augmented Reality)技术比较关注,但是去年AR行业一直处于偶尔发声的状态,丝毫没有其"异姓同名"的兄弟VR(Virtual ...

  9. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

随机推荐

  1. 「CTSC2008」网络管理

    「CTSC2008」网络管理 传送门 整体二分做法,应该和这题一样的吧. 就是把序列换成树,第 \(k\) 小换成第 \(k\) 大. 然后就切了... 参考代码: #include <algo ...

  2. jquery-ajax的用法

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. 登陆页面的Sql注入

    自己手工注入的知识比较薄弱,这里就记录一下注入过程 题目: .登陆页面,使用sql万能密码可以登陆账号,但是flag不会自己跳出来,出题人是想让我们手工注入 常用万能密码: 'or'='or' adm ...

  4. JS闭包(3)

    在将内部函数作为函数的返回值的时候,由于闭包的存在会携带上内部函数所使用的外部函数的变量,如果这些变量很多或者很大,那么在使用完返回的内部函数后最好将其置为null以便释放闭包中的携带变量,一面造成内 ...

  5. 吴裕雄--天生自然ORACLE数据库学习笔记:Oracle数据备份与恢复

    run{ allocate channel ch_1 device type disk format = 'd:\oraclebf\%u_%c.bak'; backup tablespace syst ...

  6. 南京江行智能获得百度和松禾资本的A+轮融资

    导读 据公司情报专家<财经涂鸦>消息,南京江行联加智能科技有限公司(江行智能)获得百度 和松禾资本的A+ 轮融资. 天眼查信息显示,12 月 8 日,公司工商信息发生变更,股东新增了广州百 ...

  7. Eth合约攻击

    前言 Ethernaut是一个类似于CTF的智能合约平台,集成了不少的智能合约相关的安全问题,这对于安全审计人员来说是一个很不错的学习平台,本篇文章将通过该平台来学习智能合约相关的各种安全问题,由于关 ...

  8. IDEA中找不到spring的配置文件,或者不存在某个目录(比如没有src 目录)

    比如 项目中src目录找不到了,解决方式为: 这类问题都是设置这儿.

  9. 【JAVA蓝桥杯】基础练习1 十进制转十六进制

    资源限制 时间限制:1.0s   内存限制:512.0MB 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16 ...

  10. Write-up-NODE-1

    关于 下载地址:点我 哔哩哔哩:哔哩哔哩 一天研究OBS终于不闪屏了 顺便在这里记录一下,上网查了很久.刚刚开始是不闪屏了,但是锁屏后就唤醒不了了,只能强制关机. 然后又上网找了很久,重启了N次,终于 ...