前言

众所周知,信息化时代离不开Password(密码)了。

毕竟密码是对号入座以及安全性必要的门槛嘛~

今天这章呢,我打算给大家科普一下密码学这个东西。

至于我为什么要把密码学放在社会工程学专栏里呢……

嗯……

可能我开这个专栏,大家看的时候都不太理解社会工程学这个东西吧~

那,开门见山,同时为了更好解释我社会工程学专栏里的东西,我先说一下社会工程学到底是什么。

一、问题所在1:什么是社会工程学?

所谓社会工程学,根据我自己的定义是这样的:

社会是人群体生活的环境,而使这个环境变化的一般情况下都是人心,在这里我们可以理解为研究人类在社会当中所出现的心理(“人类观察所”)。这门学科归类于心理学范畴,在百度百科也有明确的定义:

社会工程学(Social Engineering,又被翻译为:社交工程学)在上世纪60年代左右作为正式的学科出现,广义社会工程学的定义是:建立理论并通过利用自然的、社会的和制度上的途径来逐步地解决各种复杂的社会问题,经过多年的应用发展,社会工程学逐渐产生出了分支学科,如公安社会工程学(简称公安社工学)和网络社会工程学。

——百度百科

而无论是什么东西,只要和人有关系的都会牵扯到人心。

所以,我开这个专栏的目的就是通过心理学角度去剖析人心被骇客利用的bug所产生的黑客攻防的攻击方法,以及希望大家了解骇客是怎么想的,然后做好防护措施。

希望大家提高防范意识,不过最多的,还是免得一些不法骇客以及自以为是的脚本小子不思进取酿成大错。

毕竟善恶只在一念之间,我不相信有绝对的好人和坏人。

不过无论是真善美还是假恶丑,大家还是想见到好的一面对吧。

那么回到正题。

二、问题所在2:密码学和社会工程学有什么关系?

别的不说,你可以自己看看你的密码:除非是乱打,如果你想设计一个密码并记住它,肯定会设计一个和身边事物有关的的密码。

比如你的身份证,你的学号,你的工作号,你的名字、生日,以及你的男/女朋友或者是老公/老婆的生日等等。

这些东西和你的心理是有很大关系的:哪些重要,谁先谁后,或多或少都会在心里有一个衡量标准的吧。

而密码学注重的,是设计密码的方法。

当你把心里所想的东西用密码学的方法设计成密码,是不是就好记而且复杂了好多?

当然,好记的密码,逻辑性也很强:无论是心理逻辑还是思维逻辑。至于那些昙花一现的新玩法甚至毫无逻辑的密码,咱们另说。

三、问题所在3:什么是密码(学)?

首先咱们需要了解什么是密码。

我对密码的定义是:明文通过某种逻辑和方法加密后所形成的字符串(或编码)。

当然,密码的定义有很多,不过最准确的还是下面的说法靠谱:

密码是一种用来混淆的技术,使用者希望将正常的(可识别的)信息转变为无法识别的信息。但这种无法识别的信息部分是可以再加工并恢复和破解的。密码在中文里是“口令”(password)的通称。

——百度百科

而对于密码学的定义是这样的:

密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。

——百度百科

密码学其实也分很多类,不过在这里我们会分成两类来说:一个是经典(传统)密码学,另外一个是现代密码学。

而为了能让你更透彻理解下面的内容,你还需要知道:

密钥:分为加密密钥和解密密钥。

明文:没有进行加密,能够直接代表原文含义的信息。

密文:经过加密处理处理之后,隐藏原文含义的信息。

加密:将明文转换成密文的实施过程。

解密:将密文转换成明文的实施过程。

——百度百科

四、衍生问题: 经典(传统)密码学 & 传统密码学

在近代以前,密码这个东西只是为了信息的机密性。

说白了就是如何将可理解的信息转换成乍一眼看着难以理解的信息,并且有其他人根据某些逻辑看懂并且能供用同样的方式回复。

这么一看大家都应该懂了:这样做的话,缺乏秘密信息的拦截者或窃听者则无法解读。

我们把上述称为“经典(传统)密码学”。

而它包括:

1.替换式密码2.移项式密码3.替换+移向式密码

看着这种密码其实比较简陋对吧。

因为这里有一个东西叫Kerckhoffs原则。

Kerckhoffs认为,一个密码系统的安全性不是取决于其算法对于攻击者来说是否保密, 而是建立在它所选择的密钥对于攻击者来说是否保密。也就是说,即使密码系统的任何细节已为人悉知,只要密钥(key)未泄漏,它也应是安全的。

确实,在近代之前科技没有现在这么发达,他说的这些当然是对的。

但如果拿到现在的话……首先计算机代替人力测试不说,我们还有更加严谨的算法加密方式。

然后,新的密码学诞生了:

本身应该是有一种东西叫做近代密码学的。

但是个人认为它的安全性和现代密码学差不多,请原谅我把近代密码学和现代密码学混为一谈。

不过这里的区别还是要说一下的:近代密码学加密的技术对象是字符,而现代密码学加密的技术对象是计算机的底层进制——二进制。

现代密码学研究信息从发端到收端的安全传输和安全存储,是研究“知己知彼”的一门科学。其核心是密码编码学和密码分析学。前者致力于建立难以被敌方或对手攻破的安全密码体制,即“知己”;后者则力图破译敌方或对手已有的密码体制,即“知彼”。

——百度百科

也就意味着,密码从字符衍生到了编码,并且使用了更高级的算式、算法以及思维。

综上所述,大家也应该能理解我对密码的定义是怎么来的了吧。

那么,我们对密码(学)有了更深刻的了解。下面我将介绍一下几种密码方法。

五、几种通俗易懂的常见密码方法

1.凯撒密码

小的时候我想大家基本都干过一件事:

数字:(+2)0 1 2 3 4 5 6 7 8 92 3 4 5 6 7 8 9 0 1

如果两行两两对应去取代原文数据,比如明文为“2022.4.22”,我可以通过这种方式取代成:

4244.6.44

诸如此类,无论0~9数字串了几位,都可以这么做。

那如果我把数字全换成字符或者……数字加字符,是不是也可以这么做呢?~

1#字符:(+11/-15)A B C D E F G H I J K L M N O P Q R S T U V W X Y ZL M N O P Q R S T U V W X Y Z A B C D E F G H I J K2#数字加字符:(+8/-18)0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y ZH I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 A B C D E F G

上述的括号里,“+”代表着向前串,后面的数指串了多少位,“-”是向后串,后面的数同理。

这就是凯撒密码——由一个叫凯撒的国王发明。

2.摩斯电码

摩斯电码又被称为“莫尔斯电码”,就是咱们熟知的‘.’和‘-’。

而这个电码的运行媒介,最开始是声音。‘.’代表着声音响的时间短,而‘-’代表着声音响的长。

随着时间的推移,‘.’与‘-’分别可以用‘A’和‘B’替代。

而‘.’和‘-’的不同组成代表着不同的字符:

当然,由于时代在进步,摩斯电码如今也能用于其他字符的加密(各国语言)。

3.云影密码

云影密码,也称作“幂数加密”,这个加密过后的密文由0、1、2、4、8(0以及2的幂数)组成。

一位只能用一个数字或字符表示,因此最高只能到‘8’。(看16进制组成你就明白了,但是云影密码为了和16进制分开,只能用数字表示。)

‘0’为间隔符,每当一串数字表示完一个字符后,由‘0’隔开。

而明文(仅限英文字母)里,每个字母在字母表当中都对应着唯一的数字:

1 2 3 4 5 6 7 8 9 10 11 12 13
A B C D E F G H I J  K  L  M14 15 16 17 18 19 20 21 22 23 24 25 26
N  O  P  Q  R  S  T  U  V  W  X  Y  Z

那么,在云影加密时,我们把明文中的字母先替换成字母表中的相应数字,然后再用上述5除了0以外另外的4个数字(1、2、4、8)拆分,再加上分隔符‘0’,就可以获得相应密文

举个栗子~

比如我的名字是“Redice”,那么 R=18=8+8+4,e=5=4+1,d=4=4,i=9=8+1,c=3=2+1,e=5=4+1。

那么再加上间隔符就是:88404104081021041

除此之外,“R”不止可以这么拆,还可以拆成 4+4+4+4+4,2+2+2+2+2+2+2+2+2+2,也可以用18个‘1’替代(只要你不嫌麻烦),而其他字母亦是如此。

后序

除了这些,还有很多密码加密方式,当然了,密码学的脚步不会止步于此,如果可以,之后我会出密码学的专栏,我们可以一起研讨一下有趣的密码哦~

——Redice(Yatogami)

社会工程学之黑客番外——密码学相关推荐

  1. 社会工程学之黑客七宗罪——傲慢(Hooking)

    前言 至于这次我把Hooking(钩子)归类为傲慢,原因只有一点:自负只会导致不注重甚至忽略小错误,而小错误也可以将整个局面崩盘. 显然,一部分黑客,或者说脚本小子,他们觉得自己超过了身边的人就是很厉 ...

  2. 黑客还是间谍?让你惊出一身冷汗的10个社会工程学黑客攻击手段

    世界第一黑客凯文 米特尼克在<欺骗的艺术>中曾提到,人为因素才是安全的软肋.很多公司在信息安全上投入重金,最终导致数据泄露的原因却在人本身.你可能想象不到,对黑客来说,通过网络远程渗透破解 ...

  3. 社会工程学——基础与认知建立

    社会工程学(Social Engineering)在上世纪60年代左右作为正式的学科出现,广义社会工程学的定义是:建立理论并通过利用自然的.社会的和制度上的途径来逐步地解决各种复杂的社会问题. 世界第 ...

  4. 社会工程学中个人信息的防护

    有人的地方就有江湖,有江湖的地方一定有社会工程学. 社会工程学是黑客米特尼克悔改后在<欺骗的艺术>中所提出的,是一种通过对受害者心理弱点.本能反应.好奇心.信任.贪婪等心理陷阱进行诸如欺骗 ...

  5. 郭盛华:黑客使用社会工程学进行欺骗的3种方式

    近日,国际知名白帽黑客.东方联盟创始人郭盛华微博发布一篇技术论文,他提到黑客使用社会工程学进行欺骗的3种方式,我们来仔细研读一下. 1.黑客通过网络钓鱼电子邮件或电话进行攻击. 网络工程是最常见的社会 ...

  6. 黑客必学之社会工程学

    2019独角兽企业重金招聘Python工程师标准>>> 黑客必学之社会工程学什么是社会工程学? 总体上来说,社会工程学就是使人们顺从你的意愿.满足你的欲望的一门艺术与学问.它并不单纯 ...

  7. 2008社工新书《黑客社会工程学攻击》

    保留一份以免淡忘了.     这本书写的非常的好,对于想深入了解这门艺术的人看是个不错的选择. --------------部分目录------------------------ 第一章.黑客时代的 ...

  8. 黑客社会工程学攻击的八种常用伎俩

    著名黑客Kevin Mitnick在上世纪90年代让"黑客社会工程学"这个术语流行了起来,不过这 个简单的概念本身(引诱某人去做某事,或者泄露敏感信息)却早有年头了. 专家们认为, ...

  9. 黑客社会工程学攻击2 新书来袭

    黑客社会工程学攻击2 黑手不出,谁与争锋!阔别4年,社工尸再现江湖. 2008年 <黑客社会工程学攻击>上市,它是当时国内第一本"社工尸"图书,启智中国式社工黑商.荣获 ...

  10. 可怕的社会工程学黑客渗透技术,比骗术更高明的艺术

    社会工程学渗透到底有多可怕?一个真正的黑客,他是一个喜欢整夜熬夜的人,他和机器处于一种爱恨交织的关系,他们凭借自己的技术知识,利用漏洞或漏洞攻击计算机系统. 在国内,黑客安全组织东方联盟的社会工程渗透 ...

最新文章

  1. smartcrop.js智能图片裁剪库
  2. 接口、类、抽象类、对象的另类解释
  3. 高压发生器的输出电压波形
  4. java awt canvas_JavaFX AWT Canvas
  5. java把一个list_java 把一个大list分成N个小list,然后用map存储的小方法
  6. 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言——1099:第n小的质数
  7. OC-通知+Block
  8. 在离线环境中使用.NET Core
  9. Java多对多关系示例
  10. IDEA 配置weblogic home时,weblogic version无法选择
  11. 陈奕迅为什么也哭穷?
  12. springcloud项目的启动顺序_spring boot/cloud 启动方式说明
  13. php 可变变量 数组赋值,PHP可变变量学习小结
  14. bind2nd的注意事项 zz
  15. JavaWeb图书管理系统+论文+答辩ppt
  16. IEEE期刊如何查找论文模板
  17. java 取系统当前时间_java获取当前系统时间方法
  18. 如何玩转OA系统业务审批流程
  19. STM32L475 SPI驱动LCD ST7789V2详解
  20. 关于C++ 虚函数 子类和父类 一点小的总结

热门文章

  1. 进化算法之粒子群算法介绍附代码——PSO
  2. 单片机c语言编程定时,单片机C语言编程定时器的几种表达方式
  3. 微型计算机原理与接口技术第二版答案邹逢兴,清华大学出版社-图书详情-《微型计算机原理与接口技术教学辅导(第2版)》...
  4. [译]概率论沉思录——第一章合情推理
  5. 国家统计局指标数据深入分析
  6. matlab平差实习报告,《测量平差》课程设计实习报告 五星文库
  7. 金士顿 U盘群联 ps2251_60 量产
  8. Linux 硬盘读写测速
  9. python 复制到剪贴板_Python脚本将文本复制到剪贴板
  10. 基于thinkphp6开放,免费开源可商用的兴趣社区论坛圈子小程序