ctfshow简单密码题

  • Post author:
  • Post category:其他



1.brainfuck/Ook编码

这里提供一个链接:

可对Ook和Brainfuck编码进行在线解密:


Brainfuck/Ook! Obfuscation/Encoding [splitbrain.org]

Ook编码:

ook密码中有大量ook,加上一些符号;

Ook密码题常见题型为:

brainfuck编码常见题型为:

brainfuck语言用> < + – . , [ ]八种符号来替换C语言的各种语法和命令:

例如: +++++++++++++++++.>++++++++++++++++++

对于上述两种编码,我们只需把它复制粘贴到改网站,转化为文本即可得出flag



2.base64




编码



Base64


是网络上最常见的用于传输8Bit


字节码


的编码方式之一,base64就是一种基于64个可打印字符来表示二进制数据的表示方法。由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符。三个字节有24个比特,对应4个base64单元,即3个字节可表示4个可打印字符。它可用来作为电子邮件的传输编码。在base64中的可打印字符包括字母A-Z、a-z、数字0-9,这样共有62个字符,此外两个可打印符号在不同系统中而不同。

特征:

base64


文本后常加上一个或两个“=”号

所以,

当看到==号的加密方式时,可以考虑base64。



base32


特征:


base32


中只有大写字母(A-Z)和数字234567



base16


特征:


base16


中只有数字0-9以及大写字母ABCDEF



3.




凯撒密码


凯撒密码作为一种最为古老的对称加密体制,在古罗马的时候都已经很流行,他的基本思想是:通过把字母移动一定的位数来实现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推X将变成A,Y变成B,Z变成C。由此可见,位数就是凯撒密码加密和解密的密钥。现今又叫“移位密码”,只不过移动的位数不一定是3位而已。


通常凯撒密码只有25个移位密钥

。因此我们可以逐个检验,暴力破解


4.当铺密码

第一次做题时去搜了这个编码,发现了一些解题技巧

当铺密码 [1]


就是一种将中文和

数字

进行转化的

密码

,算法相当简单:当前汉字有多少笔画出头,就是转化成数字几。例如:

王:该字外面有 6 个出头的位置,所以该汉字对应的数字就是 6;

口:该字外面没有出头的位置,那就是0;

人:该字外面有 3 个出头的位置,所以该汉字对应的数字就是 3;

以此类推 ….

下面是一段由当铺密码组成的字符:

密文:王夫 井工 夫口 由中人 井中 夫夫 由中大

对应:67 84 70 123 82 77 125

翻译成 ASCII [2]


码: CTF{RM}

因此对应上面的题目,得出它们对应的数字分别为:102 108 97 103 123 99 116 102 115 104 111 119 125

接着对照ASCII码即可找出它的flag{ctfshow}


5.

Rabbit加密

Rabbit加密算法是一个高性能的流密码加密方式

例如:

(我觉得可能rabbit加密大概都是U2Fsd开头的大小写字母、数字加一些特殊字符,看起来比较奇怪的一串东西)

rabbit解密可能会要密钥也可能不用,但题目给提示,密钥为其加密方式,且要注意大小写!

由此得到flag


6. Quoted-printable编码

Quoted-printable可译为“可打印字符引用编码”,编码常用在电子邮件中,如:Content-Transfer-Encoding: quoted-printable ,它是MIME编码常见一种表示方法! 在邮件里面我们常需要用可打印的ASCII字符 (如字母、数字与”=”)表示各种编码格式下的字符!Quoted-printable将任何8-bit字节值可编码为3个字符:一个等号”=”后跟随两个十六进制数字(0–9或A–F)表示该字节的数值。

这个稍微有点犯规了,憋介嗷@x@

7.serpent加密

百度了一下发现有serpent加密:


Serpent

,是一个对称密钥块密码,这是在高级加密标准(AES)的较量,它被排在第二位,以Rijndael算法入围。Serpent是由罗斯·安德森,礼比哈姆,和Lars努森设计。像其他的AES意见书,Serpent具有128比特的块大小和支持的128,192或256位的密钥大小。[2]所述的密码是32轮取代-置换网络的4个32位字的块上操作。每轮适用的8个4比特至4比特S-box的并行32倍之一。Serpent的目的是使所有的操作可以并行执行时,采用32位的切片。

下载zip文件打开发现被加密了,因此我用ziperello爆破解密得key为4132

之后用文件所说的serpent解密;

serpent解密网站:

Serpent Encryption – Easily encrypt or decrypt strings or files (online-domain-tools.com)

暂时那么多,后面会继续补充哒



版权声明:本文为babywhale_bi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。