CTF知识总结--CRYPTO

2023-10-27

CTF知识总结

CRYPTO

1.常见编码

ASCII编码、URL编码、MD5、base家族编码、Hex编码、unicode编码、莫尔斯电码(Morse Code)、shellcode编码、XX encode编码、UUencoded编码、aaencode编码、JSfuck编码、jother编码、Brainfuck编码、Ook编码、敲击码、稀奇古怪的编码、社会主义核心价值观等等

ASCII编码

使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0 到9、标点符号,以及在美式英语中使用的特殊控制字符 。
ASCII编码图片对照表
在这里插入图片描述

URL编码

每对name/value由&;符分开;其实url编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上“%”。比如“\”,它的ascii码是92,92的十六进制是5c,所以“\”的url编码就是%5c。
URL编码对照图

MD5

是由16位或者32位数字0-9和a-f所组成的字符串字符大小写统一,如果出现这个范围以外的字符说明这可能是个错误的md5值, 16位值是取得是8~24位

base家族编码

分为:base16、base32、base58、base62、base64、base91、base92、base100

base16
由 字母A-F、数字0-9共16个字符组成
base16
base32
由 字母A-Z、数字2-7共32个字符组成,“=”符号作为后缀填充
在这里插入图片描述
base58
用于比特币中使用的一种独特的编码方式,主要用于比特币的钱包地址,base58不使用数字 0 ,字母大写 O,字母大写 I(小写i) 和字母大写L(小写l)以及 +,/符号
base62
由(A-Z、a-z、0-9、)62个可见字符组成,相比base64,去掉 +,/两个符号

base64
由(A-Z、a-z、0-9、+、/ )64个可见字符组成,“=”符号作为后缀填充
在这里插入图片描述
base91
由(0-9,a-z,A-Z,!@#$%^&*()_+,./:;<>=?`[]{}|~")组成

base92
比base91 多了一个反向 ~ 字符

base100
由一堆Emoji 表情 组成

Hex编码

由0-9,A-F组成,字母不区分大小写,与十进制对应关系是0-9不变,A-F对应10-15

unicode编码

特征:&#x006C
用数字0-0x10FFFF来映射这些字符,最多可以容纳1114112个字符,或者说有1114112个码位。码位就是可以分配给字符的数字。
在这里插入图片描述
在unicode中:汉字“字”对应的数字是23383。

四种编码方式:
&#x [Hex]:&#x0068;&#x0065;&#x006C;&#x006C;&#x006F;
&# [Decimal]:&#00104;&#00101;&#00108;&#00108;&#00111;
\U [Hex]:\U0068\U0065\U006C\U006C\U006F
\U+ [Hex]:\U+0068\U+0065\U+006C\U+006C\U+006F

shellcode编码

特征:\x34\x65\98
shellcode是一段用于利用软件漏洞而执行的代码,shellcode为16进制的机器码,因为经常让攻击者获得shell而得名。shellcode常常使用机器语言编写。 可在暂存器eip溢出后,塞入一段可让CPU执行的shellcode机器码,让电脑可以执行攻击者的任意指令。
在这里插入图片描述
shellcode可以按照攻击者执行的位置分为本地shellcode和远程shellcode.
本地shellcode
本地运行的shellcode经常用于利用软件漏洞提升权限。比如在Linux下由普通权限提升至root权限。
远程shellcode
利用软件漏洞获得特定的shellcode,再经由C或Python编写远程攻击程序,进而取得对方电脑的root权限。

XXencode编码

将输入文本以每三个字节为单位进行编码。如果最后剩下的资料少于三个字节,不够的部份用零补齐。这三个字节共有24个Bit,以6bit为单位分为4个组,每个组以十进制来表示所出现的数值只会落在0到63之间。以所对应值的位置字符代替。它所选择的可打印字符是:±0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz,一共64个字符。跟base64打印字符相比,就是uuencode多一个“-” 字符,少一个”/” 字符。
在这里插入图片描述
在这里插入图片描述

UUencode编码

是将二进制文件转换为文本文件的过程,转换后的文件可以通过纯文本e-mail进行传输,在接收方对该文件进行uudecode,即将其转换为初始的二进制文件。
在这里插入图片描述

aaencode编码

特征:颜文字
PHP的 JS颜文字
将正常的js代码转为好玩的特殊网络表情符号。

(゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]

在这里插入图片描述

jjencode编码

jjencode代码,就是将正常的js代码转换成复杂的只有符号的字符串编码,

进行加密 如:[$._$_]+$._$+",\\"+$.$__+$.___+"\\"+$.__$+$.__$+$这样的组合。

在这里插入图片描述

jother编码

由 ! + ( ) [ ] { } 8个字符组成 也是在console中运行就好,
这encode出来时字符串,不是js程序。

2.常见密码

摩尔斯电码(Morse Code)

包括:英文字母A-Z(无大小写区分)十进制数字0-9,以及“?”“/”“()”“-”“.”在这里插入图片描述
摩斯密码与ASCII对照表:
在这里插入图片描述

JSfuck

是基于JavaScript原子部分的深奥和教育性编程风格。它仅仅使用六个不同的字符来编写和执行代码。
分别是:() [ ] + !
它不依赖于浏览器,因此可以在Node.js上运行。

[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]

Brainfuck

由 (> < + - . , [ ]) 八种符号,也有脚本可解密
在这里插入图片描述

Ook

由大量的Ook和(. ? ! )的形式组成
在这里插入图片描述

敲击码

特征:全是 ‘ …/… …/. …/… …/. …’
敲击码(Tap code)是一种以非常简单的方式对文本信息进行编码的方法。因该编码对信息通过使用一系列的点击声音来编码而命名,敲击码是基于5×5方格波利比奥斯方阵来实现的,不同点是是用K字母被整合到C中。
在这里插入图片描述
在这里插入图片描述

QWE加密

从电脑键盘上的字母从Q开始数,顺序是Q W E R T Y U I。。。对应的字母顺序依次是A B C D E F G H 也就是说Q=A,W=B,E=C,依次类推。

栅栏密码

栅栏密码(Rail-fence Cipher)就是把要加密的明文分成N个一组,然后把每组的第1个字符组合,每组第2个字符组合…每组的第N(最后一个分组可能不足N个)个字符组合,最后把他们全部连接起来就是密文,这里以2栏栅栏加密为例。


示例1:
明文:The quick brown fox jumps over the lazy dog
去空格:Thequickbrownfoxjumpsoverthelazydog
分组:Th eq ui ck br ow nf ox ju mp so ve rt he la zy do g
第一组:Teucbonojmsvrhlzdg
第二组:hqikrwfxupoeteayo
密文:Teucbonojmsvrhlzdghqikrwfxupoeteayo
示例2:
明文:栅栏密码加密规则示例
每组字数:5
按照字数先把明文分成:
栅栏密码加
密规则示例
先取每组第一个字:栅密
再取每组第二个字:栏规
      密则
      码示
      加例
最后得到“栅密栏规密则码示加例”。
解密则反推:
密文被分成2个字一组:
栅密
栏规
密则
码示
加例 
先取每组第一个字:栅栏密码加
再取每组第二个字:密规则示例
最后得到“栅栏密码加密规则示例”

仿射密码

是一种表单代换密码,字母表的每个字母相应的值使用一个简单的数学函数对应一个数值,再把对应数值转换成字母。
在这里插入图片描述
加密函数:E(x) = (ax + b) (mod m),a与m互质,b任意取,其中 a与m互质,m是编码系统中字母的个数(通常都是26)。
**解密函数**:D(x) =a

Ploybius 棋盘密码 波利比奥斯方阵

把字母排列好,用坐标的形式表现出来。字母是密文,明文便是字母的坐标。
在这里插入图片描述
它们的坐标读取并不是我们习惯的行列读取,而是与之列行读取。比如字母“B”,用数字表示它就是“12”,而不是“21”。比如要表达单词“HELP”,则写成密码就是23 15 31 35。
判断是否是用棋盘密码破解的方式页很简单,只要出现数字是成双出现的数组串,而且有出现最大数字大于26的,那是棋盘密码的可能性就很大。

普莱费尔密码 Playfair

是一种使用一个关键词方格来加密字符对的加密法
它有一些不太明显的特征:密文的字母数一定是偶数;任意两个同组的字母都不会相同,如果出现这种字符必是乱码和虚码。
编写分三步:1.编制密码表 2.整理明文 3.编写密文 构成部分:1.密钥 2.明文3.密文4.注明的某个字母代替的另一个字母
算法:它依据一个5*5的正方形组成的密码表来编写,密码表里排列有25个字母。如果一种语言字母超过25个,可以去掉使用频率最少的一个。如,法语一般去掉w或k,德语则是把i和j合起来当成一个字母看待。英语中z使用最少,可以去掉它。

加密
编制密码表
第一步是编制密码表。在这个5*5的密码表中,共有5行5列字母。第一列(或第一行)是密钥,其余按照字母顺序。密钥是一个单词或词组,若有重复字母,可将后面重复的字母去掉。当然也要把使用频率最少的字母去掉。如:密钥是Live and learn,去掉后则为liveandr。如果密钥过长可占用第二列或行。
同时字母I和J会被当成一个字母。
如密钥crazy dog,可编制成
![在这里插入图片描述](https://img-blog.csdnimg.cn/b8b1139281c04554a65fd7112a3b5978.png)
整理明文
第二步整理明文。将明文每两个字母组成一对。如果成对后有两个相同字母紧挨或最后一个字母是单个的,就插入一个字母X(或者Q)。
如,communist,应成为co,mx,mu,ni,st。
编写密文
最后编写密文。对明文加密规则如下:
1 若p1 p2在同一行,对应密文c1 c2分别是紧靠p1 p2 右端的字母。其中第一列被看做是最后一列的右方。如,按照前表,ct对应dc
2 若p1 p2在同一列,对应密文c1 c2分别是紧靠p1 p2 下方的字母。其中第一行被看做是最后一行的下方。
3 若p1 p2不在同一行,不在同一列,则c1 c2是由p1 p2确定的矩形的其他两角的字母(至于横向替换还是纵向替换要事先约好,或自行尝试)。如,按照前表,wh对应ku或uk。
如,依照上表,明文where there is life,there is hope.
可先整理为:WH ER ET HE RE IS LI FE TH ER EI SH OP EX
然后密文为:KU YO XD OL OY PL FK DL FU YO LG LN NG LY
将密文变成大写,然后几个字母一组排列。
如5个一组就是KUYOX DOLOY PLFKD LFUYO LGLNN GLY
解密
Playfair解密算法首先将密钥填写在一个5*5的矩阵中(去Q留Z),矩阵中其它未用到的字母按顺序填在矩阵剩余位置中,根据替换矩阵由密文得到明文。
对密文解密规则如下:
1 若c1 c2在同一行,对应明文p1 p2分别是紧靠c1 c2 左端的字母。其中最后一列被看做是第一列的左方。
2 若c1 c2在同一列,对应明文p1 p2分别是紧靠c1 c2 上方的字母。其中最后一行被看做是第一行的上方。
3 若c1 c2不在同一行,不在同一列,则p1 p2是由c1 c2确定的矩形的其他两角的字母。
其实就是反其道而行之。
另外PlayFair解密算法不能解决字母中连续出现'XX'的情况,但是在英语中很少有连续两个XX的字母,所以不太影响PlayFair算法的使用。

凯撒密码

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

曲路密码

曲路密码(Curve Cipher)是一种换位密码,需要事先双方约定密钥(也就是曲路路径)。

明文: The quick brown fox jumps over the lazy dog
填入5行7列表(事先约定填充的行列数)

在这里插入图片描述

培根密码

特征:出现大量ababababab
培根密码中的ab,代表的是数学二进制中的0和1
培根密码本质上是将二进制信息通过样式的区别,加在了正常书写之上。培根密码所包含的信息可以和用于承载其的文章完全无关。培根密码实际上就是一种替换密码,根据所给表一一对应转换即可加密解密 。它的特殊之处在于:可以通过不明显的特征来隐藏密码信息,比如大小写、正斜体等,只要两个不同的属性,密码即可隐藏。

AABABABABAAAAAAAABBA

在这里插入图片描述

3.稀奇古怪的编码

社会主义核心价值观

由 社会主义核心价值观:富强、民主、文明、和谐;自由、平等、公正、法治;爱国、敬业、诚信、友善

与佛论禅

密文以“佛曰”开头,密文一般是与关佛经的汉字
在这里插入图片描述

与熊论道

密文以“熊曰”开头
在这里插入图片描述

兽音

由“嗷呜啊~”组成
在这里插入图片描述

4.需要看图对照的密码

元音密码

在这里插入图片描述

举例:
明文:I LIKE ENGLISH
密文:3.33.3.32.2.2.35.22.33.3.44.23

当铺密码

特征:出现奇怪组合的汉字
当铺密码就是一种将中文和数字进行转化的密码,算法相当简单:
当前汉字有多少笔画出头,就是转化成数字几

王:
你看王字 外面,有多少条横突出,六条, 那就是6;
口
有多少个横插出去? 封闭的,插个j8, 那就是0;
人
三个插出去,就是3啦
王夫 井工 夫口 由中人 井中 夫夫 由中大
​
                                                    # 67 84 70 123 82 77 125

在这里插入图片描述

猪圈密码

特征:各种 匚凵
猪圈密码(亦称朱高密码、共济会密码或共济会员密码),是一种以格子为基础的简单替代式密码。即使使用符号,也不会影响密码分析,亦可用在其它替代式的方法。
传统猪圈密码如下:
在这里插入图片描述
设计图:
在这里插入图片描述在这里插入图片描述

圣堂武士密码

作为共济会猪圈密码的一个变种,一直被共济会圣殿骑士使用。
在这里插入图片描述

标准银河字母

在这里插入图片描述
在这里插入图片描述

跳舞的小人

特征:一群跳舞的小人
来自夏洛克福尔摩斯在《归来记》中侦探案件使用的一种加密方式。
在这里插入图片描述

海军手旗旗语

旗语是世界各国海军通用的语言。手旗旗语适用于白天、距离较近且视距良好的情况下。夜间距离较近时,一般使用灯光通信。
在这里插入图片描述

六十甲子

请添加图片描述

提瓦特文

在这里插入图片描述

拉丁字母

在这里插入图片描述

5.文件格式

文件头 文件尾

PNG
文件头:89 50 4E 47
文件尾:AE 42 60 82
JPG(jpeg)
文件头:FF D8 FF
文件尾:FF D9
ZIP
文件头:50 4B 03 04
文件尾:50 4B
GIF
文件头:47 49 46 38
文件尾:00 3B

文件修复

有些图片无法正确打开,可能是因为图片的文件头错误,所以将图片的文件头修改为正确的文件头即可打开

十六进制异或 CRC校验修复宽度高度修复

工具—十六进制运算—二进制异或
更改图片的高度或者宽度

6.图片隐写

EXIF信息隐藏、嵌入式隐写、文件分离、LSB替换隐写、NTFS隐写、GIF隐写和修复、盲水印隐写、直接附加、

EXIF隐写

记录图片的拍摄日期、宽度、高度、分辨率、位深度等
kali中使用exif隐写:
exiftool + 图片名称 (显示文件信息、备注信息)
文件筛选:exiftool + 图片名称| grep flag (筛选出关于flag的信息)
解压压缩包命令:unzip + 文件名

嵌入式隐写

分为 追加嵌入法和前置插入法
插入的信息种类分为:文本插入(将文本插入到图片里)、文件插入(将图片插入到图片里)

文件分离

文件提取工具:binwalk或者foremost工具(kali使用)
binwalk + 文件名称
binwalk -e + 文件名称 (完全提取图片信息)
binwalk + 文件名称 -D=png(按照png格式分离出)
foremost + 文件名称 (直接分离)
blinwalk -n + 文件名
dd bs = 4308 if=baozou_new.jpg of=1.zip
foremost -v -i 要提取的原文件 -o 要输出的文件夹

LSB替换隐藏

图片中的像素一般由三种颜色组成rgb
rgb三种轨道
工具:Stegsolve

GIF隐写和修复

使用Stegsolve工具
在Analys----Frame Browser下(gif一帧一帧显示)
在Analys----Data Extract下(数据提取) LSB First ,rgb六种格式一个个试,有个图片文件头正常全选保存,
在010工具中,新建文件–接着编辑—粘贴自—粘贴自十六进制文本,最后将文件头修改正确即可
pyc文件:通过在线网站进行反编译 https://tool.lu/pyc/

NTFS隐写

盲水印隐写

直接附加

7.音频隐写、压缩包分析

频谱、波形、盲水印、Silentsys、MP3steg

8.杂项综合例题

弱口令爆破、已知明文爆破、crc32碰撞、多个压缩包合并、隐写文件或信息、docx文件转压缩包、伪加密、文件头修复

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CTF知识总结--CRYPTO 的相关文章

  • 【计算机毕业设计】电商个性化推荐系统

    伴随着我国社会的发展 人民生活质量日益提高 于是对电商个性化推荐进行规范而严格是十分有必要的 所以许许多多的信息管理系统应运而生 此时单靠人力应对这些事务就显得有些力不从心了 所以本论文将设计一套电商个性化推荐系统 帮助商家进行商品信息 在
  • 【计算机毕业设计】二手图书交易系统

    随着世界经济信息化 全球化的到来和互联网的飞速发展 推动了各行业的改革 若想达到安全 快捷的目的 就需要拥有信息化的组织和管理模式 建立一套合理 动态的 交互友好的 高效的二手图书交易系统 当前的信息管理存在工作效率低 工作繁杂等问题 基于
  • 【gee】下载modis土地利用类型

    var china ee FeatureCollection projects assets china boundary var lc dataset ee ImageCollection MODIS 061 MCD12Q1 filter
  • 网络安全:绕过 MSF 的一次渗透测试

    这次渗透的主站是 一个 Discuz 3 4 的搭建 违法招 piao 网站 配置有宝塔 WAF 用 Discuz ML 3 X 的漏洞进行攻击 但是没有成功 发现主站外链会有一个发卡网 引导人们来这充值 是 某某发卡网 而且域名指向也是主
  • 华为OD统一考试 Python【数字转化】

    描述 我们想要一种特殊的整数编码方式 让数字小的时候 编码占的空间也小 编码的方法如下 我们每7位组成一部分来编码 在每个字节里 用前7位来存数字 如果后面还有数据 最高的那一位就是1 否则就是0 数据要按小端序保存 也就是说 小的数据部分
  • 面试官随便问几个问题就知道你究竟做没做过微信支付宝支付

    面试官随便问几个问题就知道你究竟做没做过微信支付宝支付 你知道直连模式和服务商模式吗 网上的课程一般给你演示的都是直连模式 而企业中有不少是申请成为了服务商 因为里面有佣金提成 我粗俗地解释 直连模式 就是说你是一个会做生意的老板 自己会搞
  • 最新整理Java面试八股文,大厂必备神器

    在看这篇文章之前 我想我们需要先搞明白八股文是什么 明清科举考试的一种文体 也称制义 制艺 时文 八比文 八股文章就四书五经取题 内容必须用古人的语气 绝对不允许自由发挥 而句子的长短 字的繁简 声调高低等也都要相对成文 字数也有限制 八股
  • 计算机Java项目|基于SSM的篮球系列网上商城设计与实现

    作者简介 Java领域优质创作者 CSDN博客专家 CSDN内容合伙人 掘金特邀作者 阿里云博客专家 51CTO特邀作者 多年架构师设计经验 腾讯课堂常驻讲师 主要内容 Java项目 Python项目 前端项目 人工智能与大数据 简历模板
  • Python 文件的复制重命名以及xlsx文件中表格分开保存

    1 需要的头文件 import shutil import os import openpyxl 2 复制文件以及重命名 直接使用shutil库复制 重命名 移动即可 函数封装示例 source path 为全局变量被复制文件路径 dest
  • 计算机Java项目|学生成绩管理系统

    作者简介 Java领域优质创作者 CSDN博客专家 CSDN内容合伙人 掘金特邀作者 阿里云博客专家 51CTO特邀作者 多年架构师设计经验 腾讯课堂常驻讲师 主要内容 Java项目 Python项目 前端项目 人工智能与大数据 简历模板
  • 2024史上最全Java面试八股文(带全部答案)

    今天要谈的主题是关于求职 求职是在每个技术人员的生涯中都要经历多次 对于我们大部分人而言 在进入自己心仪的公司之前少不了准备工作 有一份全面细致 面试题 将帮助我们减少许多麻烦 在跳槽季来临之前 特地做这个系列的文章 一方面帮助自己巩固下基
  • 【卡尔曼滤波】具有梯度流的一类系统的扩散映射卡尔曼滤波器研究(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码 数据 文章
  • 【go语言】读取toml文件

    一 简介 TOML 全称为Tom s Obvious Minimal Language 是一种易读的配置文件格式 旨在成为一个极简的数据序列化语言 TOML的设计原则之一是保持简洁性 易读性 同时提供足够的灵活性以满足各种应用场景 TOML
  • 【心电图基线估计和去噪方法的群稀疏正则化】带有群稀疏正则化的心电图基线估计和去噪(Matlab实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码及文章
  • 15天学会Python深度学习,我是如何办到的?

    陆陆续续有同学向我们咨询 Python编程如何上手 深度学习怎么学习 如果有人能手把手 一对一帮帮我就好了 我们非常理解初学者的茫然和困惑 大量视频 书籍 广告干扰了大家的判断 学习Python和人工智能 成为内行人不难 为此 我们推出了
  • 网络安全(黑客)自学启蒙

    一 什么是网络安全 网络安全是一种综合性的概念 涵盖了保护计算机系统 网络基础设施和数据免受未经授权的访问 攻击 损害或盗窃的一系列措施和技术 经常听到的 红队 渗透测试 等就是研究攻击技术 而 蓝队 安全运营 安全运维 则研究防御技术 作
  • 【无标题】

    大家都知道该赛项的规程和样题向来都是模棱两可 从来不说具体的内容 导致选手在备赛时没有头绪 不知道该怎么训练 到了赛时发现题目和备赛的时候完全不一样 那么本文将以往年信息安全管理与评估赛项经验来解读今年2023年国赛的规程 帮助选手们指明方
  • 【C#】基础巩固

    最近写代码的时候各种灵感勃发 有了灵感 就该实现了 可是 实现起来有些不流畅 总是有这样 那样的卡壳 总结下来发现了几个问题 1 C 基础内容不是特别牢靠 理解的不到位 导致自己想出来了一些内容 但是无法使用正确的C 代码实现 导致灵感无法
  • 软件测试/测试开发|给你剖析闭包与装饰器的魔力

    测试管理班是专门面向测试与质量管理人员的一门课程 通过提升从业人员的团队管理 项目管理 绩效管理 沟通管理等方面的能力 使测试管理人员可以更好的带领团队 项目以及公司获得更快的成长 提供 1v1 私教指导 BAT 级别的测试管理大咖量身打造
  • 【安全】Java幂等性校验解决重复点击(6种实现方式)

    目录 一 简介 1 1 什么是幂等 1 2 为什么需要幂等性 1 3 接口超时 应该如何处理 1 4 幂等性对系统的影响 二 Restful API 接口的幂等性 三 实现方式 3 1 数据库层面 主键 唯一索引冲突 3 2 数据库层面 乐

随机推荐

  • 释伴:Linux 上的 Shebang 符号(#!)

    使用类Unix系统的同学可能都对 这个符号并不陌生 但是你真的了解它吗 这个符号的名称 叫做 Shebang 或者 Sha bang 长期以来 Shebang都没有正式的中文名称 Linux中国翻译组的GOLinux将其翻译为 释伴 即 解
  • LinearLayout.LayoutParams动态设置子控件属性

    LayoutParams相当于一个Layout的信息包 它封装了Layout的位置 高 宽等信息 假设在屏幕上一块区域是由一个Layout占领的 如果将一个View添加到一个Layout中 最好告诉Layout用户期望的布局方式 也就是将一
  • JAVA常量、变量和基本数据类型

    常量 常量 是指在Java程序中固定不变的数据 常量的分类 类别 含义 举例 整数常量 所有的整数 1 0 1 100 1000 浮点数常量 所有的小数 0 1 1 5 6 8 1 2 字符常量 单引号引起来 只能写一个字符 必须有内容 A
  • 西门子PLC用TIA博途SCL语言写的一个产生随机实数的指令块(学习1)

    这是西门子的一个功能FC 我们可以用它来学习SCL语言 也可以用来分析和学习怎样做一个比较合理且完整的功能FC 1 在设计该功能时 先确定好 它的具体功能 比如 此例的功能是获取一个随机实数 该随机实数是可以定义在自己想要的数值范围内的 还
  • Redis的数据类型

    Redis的数据类型 redis支持五种数据类型 string 字符串 hash 哈希 list 列表 set 集合 及zset sorted set 有序集合 String 字符串 是key value 方式 可以包含任何数据 包括图片或
  • Echart提示框组件tooltip的formatter属性中params的值

    Echart提示框组件tooltip的formatter属性中params的值 其中params的值就是seriesData的值 function test var seriesData 数据封装 var ret tooltip forma
  • springboot 配置templates并放行swagger页面

    import org springframework context annotation Configuration import org springframework web servlet config annotation Res
  • R语言入门——笔记(三)创建数据集

    第一部分 数据结构 1 创建向量 c c recursive FALSE use names TRUE 根据元素坐标访问 2 创建矩阵 matrix matrix data NA nrow 1 ncol 1 byrow FALSE dimn
  • 使用GCC编译STM32工程

    一 STM32在linux环境编译 STM32等arm芯片的工程编译环境比较多 类似于keil IAR等成熟的MDK集成环境被大部分开发者所使用的 但是如果要在linux在开发 或者使用的芯片不是stm32芯片 需要自己搭建编译环境 本文将
  • const的一些用法和理解

    首先先说一下const常量的用处 我们知道宏定义 define是没有数据类型的 编译器在编译的时候 不会对宏常量进行类型检查 只进行简单的字符串替换 字符串替换时极易产生意想不到的错误 所以这个时候 我们用需要用到某种声明了数据类型的常量
  • 时隔两三年之后重新思考“写博客”的意义所在,为什么还是选择使用csdn

    重新开始写博客的理由 在推上看了很多大佬的博客 如迟先生 他们的博客上并不会包含很多基础内容 更多的都是个人实践 论文阅读 底层原理 然后回想我大学时期写博客的动机 只是为了从阅读量和排名中获取满足感 那个时期写的博客 不例外如抄书 转载
  • linux下git怎么保存账号密码

    我是用 shell 命令来执行 git 操作的 所以就决定在 global 配置一下用户名和密码 不用每次手动输入了 设置步骤 1 首先需要 ftp 连接到你的 Linux 服务器 在根目录 下 使用 touch 命令创建文件 git cr
  • 目标检测与识别算法综述:从传统算法到深度学习(三)

    作 者 XJTU Ironboy 时 间 2018年12月 联系方式 tzj19970116 163 com 本文结构 摘要 介绍 2 1 大致框架 2 2 测试评价指标 2 3 相关比赛介绍 2 4 相关数据集介绍 基于图像处理和机器学习
  • CentOS7 时间与网络时间同步

    问题描述 使用date命令查看之后 发现时间与本地时间不一致 三步解决方法 1 安装ntpdate工具 yum y install ntp ntpdate 2 设置系统时间与网络时间同步 ntpdate 0 asia pool ntp or
  • YTU2897:E--外星人供给站 C++ 贪心

    目录 编辑 题目描述 输入 输出 输入输出样例 样例输入 样例输出 代码C 题目描述 外星人指的是地球以外的智慧生命 外星人长的是不是与地球上的人一样并不重要 但起码应该符合我们目前对生命基本形式的认识 比如 我们所知的任何生命都离不开液态
  • ubuntu使用技巧总结(长期更新)

    1 新装系统 需要先更新软件源 再下载程序 sudo apt update 2 安装中文输入法 右上角下拉框 gt 点击设置 gt 区域和语言 gt 输入源下的 gt 点击汉语 gt 双击中文 智能拼音 随后在输入列表中有智能拼音选项 可以
  • vue 实现微信分享

    引入微信JS SDK 在Vue应用的index html文件中 可以使用script标签引入微信官方提供的JS SDK 例如 在Vue组件中配置微信分享参数 在需要进行分享的Vue组件中 可以使用Vue的生命周期钩子函数 如created或
  • sql-labs详细解题过程(less1-less10)

    sql labs详细解题过程 前言 less1 less4 预备知识内容 less1 less2 less3 less4 less5 less8 预备知识 less5 less6 less7 less8 less9 less10 预备知识
  • Tcp是怎样进行可靠准确的传输数据包的?

    概述 很多时候 我们都在说Tcp协议 Tcp协议解决了什么问题 在实际工作中有什么具体的意义 想到了这些我想你的技术会更有所提升 Tcp协议是程序员编程中的最重要的一块基石 Tcp是怎样进行可靠准确的传输数据包的呢 看过很多文章里都提到过T
  • CTF知识总结--CRYPTO

    CTF知识总结 CRYPTO 1 常见编码 ASCII编码 URL编码 MD5 base家族编码 Hex编码 unicode编码 shellcode编码 XXencode编码 UUencode编码 aaencode编码 jjencode编码