说明:本文仅用于个人总结

系多次遇见加密题常无法判断加密方式,决定做一次整理总结

1.凯撒密码:

因为基本逻辑是在于后移字母,所以密文形式常全为字母

如fuck在密钥为1的情况下加密后为etbj。

上图为flag的枚举凯撒密码(虽然可能没啥用);

枚举凯撒密码的工具:凯撒(Caesar)加密/解密 - Bugku CTF

2.变异凯撒密码:

底层逻辑和凯撒密码相同,但是存在密钥的更复杂的处理,如每个字母的密钥为递增数列。这时需要用python脚本处理。

在此不做展示(懒)

3.摩斯密码&培根密码:

摩斯密码密文特点显而易见,培根密码的密文中只出现A 和 B;

注意的是:摩斯密码解密后全为大写,不存在小写;

4.base16、32、64编码:

底层逻辑:如对Fuck进行base16编码:

F u c k
0100 0110 0111 0101 0110 0011 0110 1011
4 6 7 5 6 3 6  11
46 75 63 6B

这里需要用Ascii表中的二进制先对Fuck进行编码(图源自网络)

每4个数为一组再转换为10进制

最后对照base16转换表(即改为16进制)

最后得到结果:4675636B

放到工具里验证一下:

而base32,则是每5位数一组,最后转化为32进制

不同的是base32有时补位后达不到40位,此时需要 = 补位。

一个 = 相当于 5 个二进制位

base64,6位数一组,最后转化为64进制(下为对照表)

base64中最多出现2个等号

密文特征:

不难得出:如果密文中多为数字,只含小写字母,则可能是base16编码;

如果密文中多为大写字母,不含小写字母,则可能是base32编码;

如果密文中大小写字母均有且等号数量不超过2,则可能是base64;

5.base58:不含O,o,i,l,和+ 、/

6.rot:

rot13:凯撒密码-key = 13;

rot5:移数字,key=5;

rot18:字母 key=13,数字 key=5;

rot47:ASCII值后移47;

7.栅栏密码:

原理:如对Fucking加密,密钥为2

先对Fucking俩俩分组:Fu ck in g@(@用于补空)

再取每组第一个:Fcig

每组第二个:ukn@

将俩组拼接:Fcigukn@

特征:含有多个@,或者能直接看到flag{}的分散

如:fFnlugac}gk@{i@

8.URL编码:

多带百分号

下图为部分编码

9.云影密码(01248密码):

0为间隔,将非零数隔开组合,各个组合相加,对于a~z字母序号。

特征:多次出现0


#初入门 各类加密方法的判断(1)相关推荐

  1. Java入门基础及面试100题--初入门

    Java入门基础及面试100题 注:适合应届毕业生或java初入门者 1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: - 抽象:抽象是将一类对象的共同特征总结出来构造类的过程, ...

  2. 1_RabbitMQ初入门入门Hello消费者+生产者

    文章目录 1_RabbitMQ初入门 1.RabbitMQ的介绍 1.工作原理&发送/接收消息的流程 2. 为什么要使用消息队列? 3.使用了消息队列有什么缺点? 2.安装RabbitMQ 3 ...

  3. js入门·对象属性方法大总结

    数组(Array):系列元素的有序集合: 详细演示请看:[js入门系列演示·数组 ] http://www.cnblogs.com/thcjp/archive/2006/08/04/467761.ht ...

  4. Java中常用的加密方法(JDK)

    加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容.大体上分为双向加密和单向加密,而双向加密又分为对称加密和非对称加密(有些 ...

  5. c语言3%10等于多少,[编程入门]数字的处理与判断-题解(C语言代码)

    # 1009题-[编程入门]数字的处理与判断-题解(C语言描述) 本题解的最终解释权归本人所有,主要用于本班上同学更好的掌握本题的解题方法,同时更好的理解和掌握方法. ------------ ### ...

  6. 计算机硬盘加密的原理,一种计算机硬盘加密方法及装置

    主权项: 权利要求书\r\r\r\r\n1.一种计算机硬盘加密方法及装置,其特征在于:在常规的计\r\r\r\r\n算机基础上,增加了加密芯片而组成的加密电路,对进出硬盘的数\r\r\r\r\n据流选 ...

  7. 几种常用的文件加密方法

    下文是中软通用产品研发中心陈尚义根据http://blog.sina.com.cn/s/blog_611c36a80100gch7.html?tj=1编译. 每个人的电脑硬盘中都会有一些个人隐私或秘密 ...

  8. [python爬虫之路day19:] scrapy框架初入门day1——爬取百思不得姐段子

    好久没学习爬虫了,今天再来记录一篇我的初入门scrapy. 首先scrapy是针对大型数据的爬取,简单便捷,但是需要操作多个文件以下介绍: 写一个爬虫,需要做很多的事情.比如: 发送网络请求, 数据解 ...

  9. 一种基于随机数组so库的Android数据资源硬加密方法 草稿

    一种基于随机数组so库的Android数据资源硬加密方法 作者:AniO软件咨询服务,天涯来客-Leemboy 摘要:本文提供一种简洁的Android数据资源硬加密方案,利用随机数组so静态库,对An ...

最新文章

  1. python中二进制以什么开头_Python二进制表示和位操作
  2. linux 命令之 kill
  3. 调试coffee script 的一个技巧
  4. 20145317《网络对抗》shellcode注入Return-to-libc攻击深入
  5. 利用STM32 的串口来发送和接收数据实验
  6. 数数塔 NBUT - 1083
  7. 马尔可夫链 (Markov Chain)是什么鬼
  8. 给element的select添加复选框
  9. 垃圾回收算法与实现系列-线程安全与锁简介
  10. 野生前端的数据结构基础练习(3)——链表
  11. 九度搜索引擎点击优化_深圳坂田企业老总在想竞价推广和网站优化选哪个?
  12. 第二:Pycharm设置配置(非常详细)
  13. 12muduo_base库源码分析(三)
  14. 易语言最大化控件跟随变化_庄子:利己最大化与博弈圈套
  15. 基于jQuery的视频和音频播放器jPlayer
  16. ModuleNotFoundError: No module named 'tornado'解决办法
  17. 宏基ACER Aspire R3600 REVO离子平台
  18. php超小免杀大马_PHP免杀大马的奇淫技巧
  19. 计算机基础一体化教程(习题)
  20. Google Ad加大型文字广告将停用

热门文章

  1. Noise Contrastive Estimation
  2. 编程语言用 Java 开发一个打飞机小游戏(附完整源码)
  3. jsp中取值方式--${param.name }
  4. PaddlePaddle基本用法详解(一)、PaddelPaddle进行波士顿房价预测
  5. 人工智能语音合成:实现更加智能的语音合成
  6. 2022车工(技师)考试题库模拟考试平台操作
  7. CCF CSP——202206-5 PS无限版(70分题解)
  8. 快速修复DNS服务器乱码fec0,服务器dns地址fec0
  9. 老员工在国企干了14年,辞职去应聘小公司,看到工资后愣了
  10. 深度学习第一步(anaconda、pytorch安装)