风中纸鹞 脚本之家

从长安十二时辰中学到的东西_Java

从长安十二时辰中学到的东西_Java_02

作者 | 风中纸鹞

出品 | 脚本之家(ID:jb51net)

如有好文章投稿,请点击 → 这里了解详情

19年的暑期里,长安十二时辰(下文简称长安)不愧是电视连续剧中的一匹黑马。紧凑的故事情节,扑朔迷离的人物关系,给观众再现盛唐一片气派的景象。这是1个令人引以自豪的时代,这是1个文人骚客辈出的朝代。

不同的人会在剧中找到不一样的东西,这里更多的是从科技以及技术的层面进行分析,而不是更多地从文化的角度。

在长安中,比较有意思的自然就是:

  • 望楼传信

  • 大案牍术

根据已经更新到26集的进度,下面进行简单的分析。

望楼传信

在古代通信最简单的例子,就是飞鸽传书。无论是周王的烽火戏诸侯,还是长安的望楼,离不开的东西就是消息。翻开任何一本通信工程的教材,都可以看到类似如下的模型:

信息源->通信媒介->信宿

其中的通信媒介,可以是飞鸽、烽火、驿邮等方式。
对上述的模型进行扩展,可以得到类似如下的模型:

信息源->信源编码->信道编码->信道->信道译码->信道译码->信宿

在长安中,角色通传陆三的作用就是信源的编码及译码,因此该角色很重要。

而在这个过程中,离不开的1个就是信息的编码与译码。对于信息的编码,最典型的自然就是摩尔码。

从长安十二时辰中学到的东西_Java_03

在长安中,采用的编码以1个九宫格为背景,根据不同的颜色表示不同的编码内容。如下图所示:

从长安十二时辰中学到的东西_Java_04

根据不同颜色的组合,选择出来64种组合,分别对应易经中64个卦象,并对其进行编码。
之后,根据之前约定好的编码方式,表示不同的消息,从而实现消息的传播。

然而,上述的编码方式存在1个安全隐患,就是如果在整个通信系统中有人截取到对应的消息,并使用对应方法进行破译,就会出现消息泄露的情况。比如,望楼传信中陆三是外面的内应,从而导致不能再使用望楼彼此进行通信。另1个简单的例子就是靖安司司丞李必被龙波抓住后,何孚说出要全城通缉张小敬的消息。

可以发现,在整个望楼系统中,不止1个人会破译其消息。

在信息安全中,有1个术语叫作中间人攻击(Man-in-the-middle attack),如下图所示:

从长安十二时辰中学到的东西_Java_05

在长安中1个典型的例子就是在靖安司还要抓狼的时候,竟然有人向圣人报喜狼卫全歼,从而成功绕过了靖安司。

而为了防止中间人攻击,最常见的方式就是对消息进行加密,无论是当前常用的RSA还是DH算法,其目的都是为了确保消息即使被窃听,也要能对抗被破译的可能性。

大案牍术

大案牍术,发明者是老实人徐宾,实属是马亲王(马伯庸)虚构的1个技术,其作用类似现代的大数据。

现代说起大数据,动不动就是Hadoop架构或者Spark框架,实际上它们不过只是工具,而不是数据的实质。

在大案牍术中,通过吏员记录在唐册的数据,通过彼此的关联与计算,从而可以推算当前,预测未来。然而,放眼现在,也是不大可能做到的事情。

在大数据概念出现之前,最被人熟知的自然就是OLAP,1种联机分析技术。其中典型的就是数据立方模型,我们根据需要分析的视角进行切片、上卷、下钻操作,从而查看对应维度的数据。

OLAP的1个不足之处在于,它只是1种分析技术,对于更深一层的数据挖掘是无能为力的。这也是为什么Hadoop及Spark中会集成了机器学习的1个原因。

我们常常认识的数,只局限于有理数,在有理数之外还有无理数、实数以及遥不可及的虚数。至于数域,也不是一般人会接触到的。

数的演算和归纳是数中最基本的内容,在人工智能中说的最多的就是图灵测试。而在真正的人工智能时代,机器可以像人一样智能的思考。但是,现实是电脑是个智障,虽然它确实做出很多让人惊讶的事情。

在于机器而言,它能处理的东西只是数字,对于智能是人为添加的产物。于是,数的演算就变得异常重要。通过演算,机器才可能自我推导和进化,然而世界并不仅仅只是由数字组成那么简单,否则一切都不会变的有规可循,也变的单调许多。

因此,这也是为什么大数据中说的最多的内容还是不确定性。而至于大案牍术选出张小敬,在剧中已经透露是徐宾自己的决定。

本文作者:风中纸鹞,1个多年滚打于Web开发的研发工程师。熟悉PHP、Java、C++等编程语言,以编程作为乐趣。

声明:本文为 脚本之家专栏作者 投稿,未经允许请勿转载。