本文作者:i春秋签约作家MAX、

凯撒密码作为一种最为古老的对称加密体制,在古罗马的时候都已经很流行,他的基本思想是:通过把字母移动一定的位数来实现加密和解密。

给大家先找两道题,来一起探讨基础密码学~

下一题

看了看题目就是一个隐写术的题嘛  上神器ss

扫描一下我们看看flag不就出来了吗!!

下一题

一看就知道是AES加密先解密再说

提交答案错误

仔细观察,感觉可能用了凯撒移位

前5个字母按照flag的规律应是NSCTF,由此得到移位数

手工破解即可flag{NSCTF_Rot_EnCryption}

恺撒密码

它是一种代换密码。据说凯撒是率先使用加密函的古代将领之一,因此这种加密方法被称为恺撒密码。

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

下一题

里面有汉语什么鬼???汉语怎么解密???我们想想一般都是/什么的标识符等等难道是==???那其他字就是/??我们尝试一下可以!

不是flag接着RainRaid解密

下一题:

下载文件发现是py脚本还有一个txt文件题目给了一个py脚本和一个密文文件,阅读源码可知:py脚本将明文转换为密文,现在需要将密文文件中的密文解密得到明文。
很明显加密流程为将明文转换为16进制编码,在转化为10进制数,将每两位数字构成的数进行FAN函数运算,再拼接起来得到密文。

因此解密流程为:将0~99利用FAN函数求得加密值,建立加密值到原数的字典,在明文中查字典拼接得到10进制数,转化为16进制数,再求取字符串。

按照要求用python脚本跑即可

flag:SIS{a9ab115c488a311896dac4e8bc20a6d7}

下一题:

rot13解密即可

下一题

不用我说了吧以前我们见过摩斯码解密即可。

CTF中密码学一些基础的更多相关文章

  1. CTF中密码学一些基础【三】

    本文作者:i春秋签约作家——MAX. 看看今天教程: 看着几个字符在键盘的位置,直接就是三个圈圈,圆心的三个字符就是答案 非常简单! 答案就是KEY 看题解密就好了!! 根据提示Asp encode解 ...

  2. CTF中那些脑洞大开的编码和加密

    0x00 前言 正文开始之前先闲扯几句吧,玩CTF的小伙伴也许会遇到类似这样的问题:表哥,你知道这是什么加密吗?其实CTF中脑洞密码题(非现代加密方式)一般都是各种古典密码的变形,一般出题者会对密文进 ...

  3. CTF中编码与加解密总结

    CTF中那些脑洞大开的编码和加密 转自:https://www.cnblogs.com/mq0036/p/6544055.html 0x00 前言 正文开始之前先闲扯几句吧,玩CTF的小伙伴也许会遇到 ...

  4. [CTF]中那些脑洞大开的编码和加密

    [CTF]中那些脑洞大开的编码和加密 摘自:https://www.cnblogs.com/mq0036/p/6544055.html 0x00 前言 正文开始之前先闲扯几句吧,玩CTF的小伙伴也许会 ...

  5. 实战经验丨CTF中文件包含的技巧总结

    站在巨人的肩头才会看见更远的世界,这是一篇技术牛人对CTF比赛中文件包含的内容总结,主要是对一些包含点的原理和特征进行归纳分析,并结合实际的例子来讲解如何绕过,全面细致,通俗易懂,掌握这个新技能定会让 ...

  6. 公钥体系(PKI)等密码学技术基础

    公钥体系(PKI)等密码学技术基础 公钥体系(Public Key Infrastructure, PKI)的一些概念 对称密码算法, 典型算法:DES, AES 加解密方共用一个密钥 加/解密速度快 ...

  7. CTF中的命令执行绕过

    本位原创作者:Smity 在介绍命令注入之前,有一点需要注意:命令注入与远程代码执行不同.他们的区别在于,远程代码执行实际上是调用服务器网站代码进行执行,而命令注入则是调用操作系统命令进行执行. 作为 ...

  8. 如何在ASP.NET Core中实现一个基础的身份认证

    注:本文提到的代码示例下载地址> How to achieve a basic authorization in ASP.NET Core 如何在ASP.NET Core中实现一个基础的身份认证 ...

  9. [转]如何在ASP.NET Core中实现一个基础的身份认证

    本文转自:http://www.cnblogs.com/onecodeonescript/p/6015512.html 注:本文提到的代码示例下载地址> How to achieve a bas ...

随机推荐

  1. 把CString转化为char*

    转:http://blog.sina.com.cn/s/blog_58e19ae7010003jt.html 正确方法:CString m_Head:char *codefile;codefile=( ...

  2. Draw Call(Unity 5中显示为SetPass calls

    Draw Call(Unity 5中显示为SetPass calls

  3. js获取不到动态添加的标签的值的解决方法

    遇到了js无法获得动态添加的标签的值,百度了一番,最后自己解决了问题,但是原理现在还不怎么明确. $("input[id='txtAttValue']").each(functio ...

  4. ThinkPHP出现General error: 2006 MySQL server has gone away的解决方法

    错误: #13 {main}SQLSTATE[HY000]: General error: 2006 MySQL server has gone awayFILE: \ThinkPHP\Library ...

  5. SpringMVC学习总结(一)--Hello World入门

    一.什么是Spring MVC Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 ...

  6. ant的hello world很好的官方文档[z]

    http://ant.apache.org/manual/tutorial-HelloWorldWithAnt.html

  7. [OS] 远程启动计划任务时以管理员身份运行

    在Jenkins建了一个task自动启动Selenium的Grid,命令行是这样写的: schtasks /end /tn RestartGrid /s SZTEST201606 /u szdomai ...

  8. [Jmeter]如何才能通过ant运行jmeter

    在开始运行build.xml之前,还有一步必须要做,那就是将JMeter所在目录下extras子目录里的ant-JMeter-1.1.1.jar复制到Ant所在目录lib子目录之下,这样Ant运行时才 ...

  9. socket收发消息

    .socket通讯类 using System; using System.Collections.Generic; using System.Net; using System.Net.Socket ...

  10. Spring Boot配置FastJson报错'Content-Type' cannot contain wildcard type '*'

    升级到最新版本的fastjson以后报的错,查了一下资料,发现 fastjson从1.1.41升级到1.2.28之后,请求报错:json java.lang.IllegalArgumentExcept ...