LCG 算法LCG(linear congruential generator)线性同余算法,是一个古老的产生随机数的算法。由以下参数组成: LCG 算法是如下的一个递推公式,每下一个随机数是当前随机数向左移动 log2 a 位,加上一个 c,最后对 m 取余,使随机数限制在 0 ~ m-1 内 从该式可以看出,该算法由于构成简单,具有以下优点:
计算速度快
易于实现
易于写入硬件
以下是针对不同参数 lcg 产生随机数的效果图 可以看出,针对不同的参数,lcg 产生的效果差别很大 以下是针对不同环境下的参数选择
解题模式 - Jeopardy解题模式(Jeopardy)常见于线上选拔比赛。在解题模式 CTF 赛制中,参赛队伍可以通过互联网或者现场网络参与,参数队伍通过与在线环境交互或文件离线分析,解决网络安全技术挑战获取相应分值,类似于 ACM 编程竞赛、信息学奥林匹克赛,根据总分和时间来进行排名。 不同的是这个解题模式一般会设置 一血 、 二血 、 三血 ,也即最先完成的前三支队伍会获得额外分值,所以这不仅是对首先解出题目的队伍的分值鼓励,也是一种团队能力的间接体现。 当然还有一种流行的计分规则是设置每道题目的初始分数后,根据该题的成功解答队伍数,来逐渐降低该题的分值,也就是说如果解答这道题的人数越多,那么这道题的分值就越低。最后会下降到一个保底分值后便不再下降。 题目类型主要包含 Web 网络攻防 、 RE 逆向工程 、 Pwn 二进制漏洞利用 、 Crypto 密码攻击 、 Mobile 移动安全 以及 Misc 安全杂项 这六个类别。
战争分享模式 - Belluminar在 2016 年世界黑客大师挑战赛(WCTF)国内首次引入韩国 POC SECURITY 团队开创的 BELLUM ...
网络安全已经成为了一个备受关注的话题。随着互联网的普及,网络犯罪和安全漏洞的威胁也在不断增加。为了提高网络安全水平,培养更多的安全专业人才,CTF(Capture The Flag)比赛应运而生,成为了网络安全领域的一项重要活动。
什么是 CTF?CTF 比赛是一种网络安全竞赛和训练的形式,旨在考验参赛者在信息安全领域的技能。这些比赛通常包括各种类型的挑战,如网络攻防、逆向工程、加密学、Web 应用程序安全、二进制漏洞分析等。参赛者的任务是解决这些挑战,以获取称为“Flag”的标志性标识,这些标识证明他们已成功攻克了特定的安全难题或系统漏洞。
CTF 的来源CTF 比赛的起源可以追溯到计算机安全社区,最早由一些安全研究人员和黑客组织举办。这些比赛旨在模拟实际的网络攻击和防御场景,以促进网络安全技术的发展。随着时间的推移,CTF 比赛逐渐演变成了一项备受欢迎的竞技活动,吸引了越来越多的参赛者和赞助商的支持。
CTF 的类型CTF 比赛有多种类型,包括线上赛、线下赛、定向赛和综合赛。线上赛允许参赛者通过互联网参加,而线下赛需要参赛者亲临现场。定向赛侧重特定领域的挑战,例如硬件安全或取证,而 ...
什么是 CTF(夺旗)活动?如果您刚刚开始学习很酷的黑客知识,您可能会对 CTF 感到好奇。CTF 代表“夺旗”。在网络安全领域,CTF 是一种动手学习黑客技能的有趣方式。您可能想知道所有的炒作都是关于什么的。在哪里可以了解 CTF?CTF 期间会发生什么? CTF(Capture The Flag,夺旗赛)起源于 1996 年 DEFCON 全球黑客大会,是网络安全爱好者之间的竞技游戏。CTF 是基于信息安全的不同挑战或方面的游戏化竞争性网络安全活动。它们非常适合希望开发、测试和证明自己技能的初学者和经验丰富的黑客,因为它们将黑客概念游戏化了。在 CTF 中游戏化使得学习像视频游戏一样的东西。因为游戏化很有趣并且可以让你创造性地思考,所以它是学习和发展技能的最有效的方法之一。 针对网络安全爱好者和初学者的 CTF 比赛往往具有相似的游戏机制。 在 CTF 游戏中,您和其他几位黑客将获得一个软件、一个 Web 应用程序、一个虚拟机或一个虚拟化网络作为您的目标。您的目标是在对手发现之前找到所有隐藏的旗帜。“标志”可以采用多种不同的形式,但最典型的是隐藏在文档或应用程序文件中的一串代码。 ...
随着互联网和电子通信的普及,保护个人信息和数据的安全性变得至关重要。密码学成为数据保护的前沿领域,而键盘密码(也称为键盘敲击密码)作为一种古老的密码学技术,也值得我们关注。
键盘密码的工作原理键盘密码的基本原理是通过记录用户在计算机键盘上按下的按键顺序和持续时间来创建密码。这种密码以按键的时间和顺序作为独特的标识符,然后将这些数据用作密码或密钥。例如,用户按下键盘上的字母、数字和符号,系统会记录下这些操作,并将它们转化为密码。
手机键盘密码手机键盘加密方式,是每个数字键上有 3-4 个字母,用两位数字来表示字母,例如:ru 用手机键盘表示就是:7382,那么这里就可以知道了,手机键盘加密方式不可能用 1 开头,第二位数字不可能超过 4,解密的时候参考此 关于手机键盘加密还有另一种方式,就是「音的」式(这一点可能根据手机的不同会有所不同),具体参照手机键盘来打,例如:「数字」表示出来就是:748 94。在手机键盘上面按下这几个数,就会出:「数字」的拼音。
电脑键盘棋盘电脑键盘棋盘加密,利用了电脑的棋盘方阵。
电脑键盘坐标电脑键盘坐标加密,利用键盘上面的字母行和数字行来加密,例:bye ...
培根密码,又叫倍康尼密码,是由法兰西斯·培根发明的一种替换密码,其明文中的每个字母都会替换成 5 个字母组。
例如字母“D”被替换为“aaabb”,字母“O”被替换为“abbab”等。
培根密码的安全性并不高,因为它只是一个简单的替换密码,基本上任何破解替换密码的解密方式都可以破解培根密码。
下面是一个简单的例子:
要使用培根密码进行加密,需用到以下密码表
要加密消息,例如“STRIKENOW”,我们将明文中的字母替换为对应的 5 个字母组:
密文:baaab baaba baaaa abaaa abaab aabaa abbaa abbab babaa
然后我们可以通过重新排列密文字母,可以轻微伪装以下:
baa abb aab aba aaa aba aaab aab aab aaab baa abb abb abaa
同时如果觉得这样容易被发现,还有另外一种方法,
根据密文,书写一段特定的英文句子,将 AB 隐藏在文字中,其具体的隐藏方法是这样的,句子中的大写字母表示密文中的 B,小写字母表示密文中的 A,如下:
Hold OFf uNtIl you hEar frOm mE ...
方法一用柠檬汁在白纸上写字,晾干纸张后,用熨斗/熨板/吹风等加热纸张,纸上就会出现褐色字迹。 原理: 柠檬中含有有机物,有机物遇热脱水会发生碳化反应。当然,纸张的主要构成物质——纤维素也是有机物,也会发生碳化。但柠檬碳化的温度要低于纸张,因此遇热时,写字部分率先碳化,呈现褐色,自然就浮现出字迹了。 葱白和柠檬汁一样在干燥的纸上写字,晾干后,纸上的字不见,然而用火烧就能出现。
方法二将白色蜡烛当笔在白纸上写字。然后浸入水中后,原本不明显的画,变得非常清晰。 原理: 蜡不溶于水,放入水中后,周边的纸纤维浸水颜色变深,涂蜡部分会衬托出来。
方法三也许你在电影里看到过这样的情景:间谍为了不泄露秘密,经常用“密信”的形式传递消息。如果你想要用一种最简单的方法写一封“密信”,你最好使用氯化钴制成的隐显墨水。 先配一小瓶 0.1 摩尔/升氯化钴溶液,然后用蘸水钢笔或毛笔在吸水性较好的白纸上写好“密信”。氯化钴的稀溶液是浅粉红色的,所以把氯化钴溶液写在纸上,等纸干了以后,几乎看不出纸上有什么颜色。 现在你就可以把这封“密信”寄给你的朋友了,当然信封不能用隐显墨水写,你还是用蓝 ...
《福尔摩斯:跳舞的小人》(The Dancing Men,又译作“跳舞的人”)的故事发生于 1898 年,那是一个连现代计算机的概念都还没有提出的年代,福尔摩斯却凭借自己的智慧和推理,就破解了替换密码。 影片讲述的是英国富人希尔顿·库比特的妻子在庭院里看到一串跳舞小人的图案后极度害怕,在此之后一个多月库比特家中开始陆续出现跳舞的小人。 库比特先生希望能够保护他的妻子,并希望福尔摩斯能够破解跳舞的小人,就给福尔摩斯写了第一封信,同时附上了上面的小人。 两个星期后,丘比特先生在工具间的门上发现: 两天后: 三天后: 最后又发现: 福尔摩斯破解跳舞的小人密码画面:
解密过程首先,每个小人代表一个字母,运用解读所有密码的套路,就能解开。 第一条信息 根据英文字母出现概率不同,破译密码。 英文中出现概率最高的字母,E 概率依次向下为 T,A,O,I,N,S,H,R,D,L 所以从第一条信息可知下图出现了 4 次。 所以代表E。这四个相同的小人中有的拿着旗子有的没拿,从分布来看,旗子可能是分隔符。现暂定这个假设。 因为 T,A,O,I 的使用率几乎不相上下,所以要根据其他的信息破解。 ...
敲击密码(tap code)最早出现于 1965 年的越南战俘营,由四个美国战俘发明。 敲击密码是一种通过手或者金属棒来敲击墙壁或其他物品,通过敲击的的次数和顺序,来达到传递信息的一种简单密码,其原理类似于摩斯密码。 敲击密码的加密是基于一个 5X5 的波利比乌斯方格来完成的,该表格如下图所示: 数字代表的是敲击的次数,每一个字母都是以敲打两个数字组成(横是行,竖是列)。 首先敲打的是“列”(如敲打两下代表的可能性为:F G H I J) 暂停(让接收者知悉已经敲打完“列”的数字) 其次敲打的是“行”(如再敲打两下代表的字母为:G) 以水的单词 water 为例,密码应该是下面这样的:(注意每一个英文字母之间的停顿必须比“列”与“栏”之间的停顿为长) 根据这个方法,我们完成所有明文信息的敲击即可。 从上面的例子我们可以看到,敲击密码虽然很方便,但是其实很难用来表达长篇幅的信息,所以针对这种情况,一些囚犯们还特别设计了一些简短的单词来表示某种信息,敲击的时候,可以达到事半功倍的效果。
什么是四角号码呢?几个数字是如何精准指代某个汉字的呢?
借鉴电报密码创制“号码检字法”四角号码检字法诞生于民国时期,由当时的商务印书馆编译所所长王云五历时 4 年创制而成。 王云五在对古今中外各类检字法对比的基础上,提出了理想的检字法原则,包括“人人都能明白、检查迅速、不必知道笔顺、无论如何疑难之字必能检得”等等。他希望发明一种检字法,即便是在一个字读不出字音、找不准部首、数不清笔画的情况下,也有办法准确地查到这个字。 1924 年 11 月,王云五看到一本电报密码书,给了他很大启发:如果能给每个字都找到一个可以推算出的号码,那么“找字典词典的人都好像收到一封电报,从号码寻找文字一样的迅速便利”。 四角号码检字法经过王云五坚持不懈地反复尝试、刻苦钻研,历经七十多次修订,终于成为了一种“最彻底、最迅速、最自然、最直接”和“粗而密”的检字法。 胡适于 1930 年 2 月专门编制了一首四角号码记忆歌诀: 一横二垂三点捺, 点下带横变零头; 叉四插五方块六, 七角八八小是九。 如“保密”二字的四角号码为:
绝密四角号码情报挽救中央红军主力1934 年 7 月,打入国民党内部的莫雄拿到了国 ...
