博看读书 通过搜索各大小说站为您自动抓取各类小说的最快更新供您阅读!

第220章加密算法

对cqcq软件重构的想法,林鸿实际上在和凯文聊过之后,就开始在脑海中慢慢成型。

对发送消息进行加密这个问题比较好解决,据林鸿所知,目前有一些加密性能比较好的加密算法都是免费并且公开的,他可以直接拿来使用。

关键在于如何建立起负责消息传递中转的“秘密据点”。

这些据点必须具有随机的特点,不能一直固定,这样就可以增加被追踪拦截的难度。

现在这种一台服务器管理并转发所有在线聊天客户端的信息的模式肯定是行不通了,因为这种结构太过脆弱,只要对方攻占了服务器,整个聊天网络就会瘫痪。

林鸿经过慎重思考,觉得还是回归到自己最初的想法比较靠谱,也就是,把客户端和服务器端集成到一起。

也就是说,网络上有多少个是用整个软件的客户,那么就有多少台消息中继服务器,每一台服务器都可以对消息进行中转,构成一个庞大的没有任何规律的网状网络。

确定好了这个大体的方向之后,他脑海中各种灵感不断冒出,以至于他立刻从课桌里面拿出几张白纸,开始以极快地速度将这些想法以图形和简短的文字记录在这些纸上。

不一会儿,不断冒出的想法就记满了五张白纸,林鸿这才停了下来。

林鸿抽出其中一张,这张纸上,画了一张用方块代表计算机的网络拓扑图,用线条表示数据流动的方向。

林鸿重新回过头来,对之前的思路进行整理,然后又对这张图进行完善和修补。

接下来便又抽出另外一张纸,这张纸上画了四个方块表示计算机,中间用几条细线和一条粗线连接,细线表示少量数据交换,粗线表示真正的数据。

想了一下,林鸿又重新在它们之间添加了两条粗线,将原来的那一根粗线给划掉了。

经过刚才一阵头脑风暴,林鸿对于cqcq新版的架构已经有了底稿,总体的设计框架已经想清楚了,接下来就是对它的技术细节的实现。

放弃中央控制服务器的架构,转而采用点对点的架构,消息可以通过每一个客户端进行中转。

不过,还是会存在一个对整个拓扑网络节点进行维护的“中继服务器端”,这些服务器端并不涉及到数据的中转,只保存客户端节点信息,例如ip映射地址,在线节点列表以及它们之间的拓扑结构。

考虑到稳定性方面的问题,这些服务器端不能只有一个,而是多个,并且他们共同维护同一张数据表,即每一台服务器上都有全部的备份,这样,即时某一台服务器下线了,整个通信网络也不会受到影响。

并且,按照林鸿现在的设想,就算是所有中继服务器都被关停或者下线,也不会造成整个通信网络的瘫痪,最多会影响到消息发送的即时性。

当网络中存在中继服务器的时候,客户端会和中继服务器保持连接,以便获知自己好友在线状态,要发送信息的时候,也会先向中继服务器查询整个拓扑结构,然后通过算法计算,随机找出一条最优路径,通过这条最优路径将消息发送到目的地。

而假设所有中继服务器都挂掉了,大家便无法确认好友是否在线,数据传输的时候,是一种广播式的行为,即向全网广播自己的消息,在传输之前,还得确认下一个节点是否在线,然后再传输,最终总会到达自己发送的目的。

不过这样一来,通信就失去了时效性,可能一条信息发送出去,快则几秒钟,慢则要好几分钟甚至上十分钟对方才能够收到,时间的长短和网络的拓扑结构有关。

这种结构,在安全方面也有保证。

一条信息发出,会首先通过自身的软件进行加密,然后再传送到“中转节点”中,那些节点都是匿名的,经过至少五次跳转之后,完全查不到来源路径,最终从“出口节点”对消息进行解密,然后再传递到目标客户端。

在整个流程中,唯一有可能被监听的环节就在于最后的“出口节点”,假设有人正好在出口节点监控,则就可以截获被发送的消息。

这个缺点林鸿也发现了,所以他在后来对图纸进行整理的时候,再次进行了完善。

他想了一个解决方案,那就是消息发送之后,会加密成一个数据包,然后再对这个数据包进行分割,包的各部分通过几条不同的路径最终传递到目的地,这样,就算某一个“出口节点”被监控了,他们截获的内容也只有一部分,没有截获其他包的话,根本无法对整个包进行解密。

理论上,同时将所有包都截获的可能性是趋近于零的,所以这样一来,通讯安全得到了最大限度的保障。

林鸿设计的整个新的架构,不但实现了信息传递的匿名性,而且消除了中心化的服务器端,极大地提升了软件的保密性和稳定性。

经过反复完善和优化,林鸿觉得最终没有问题之后,便开始着手进行代码编写。

由于他对加密解密方面还不是很了解,所先将其他基本功能暂时实现,将加密解密放到了最后。

到天亮的时候,新版cqcq的原型便被编写出来了,首先实现的功能非常简单,只能传递文字版,并且还没有对其进行加密。

今天是周一,林鸿的课不多,上午在十点多的时候就已经没课,他便立刻奔向了学校图书馆。

今天来这里有两个问题需要解决。

一个是查找一下,看看有没有posix标准的书籍,另外就是学习一下加密解密算法方面的内容。

由于林鸿是图书馆的常客,另外又是最近风头正盛的sam小组成员,图书馆中的不少工作人员都对他非常熟悉了,见到他之后,纷纷和他打着招呼。

林鸿微笑着一一回应,这几个月来,他算是彻底融入了拉丁学校的这个大集体当中。虽然这里也存在着一些瑕疵,但是总体上还是让人觉得比较舒服的,大家相互之间都比较友好,别人遇到什么困难,也会热心帮忙。

有一点林鸿感触最深:这里的学生和老师之间的关系完全是对等的,相互间说话,完全没有国内的那种一个聆听,另外一个不是训话就是大讲道理的那种常见情况。

林鸿来到计算机科学类区域,开始慢慢寻找自己所需要的内容。

“posix……加密算法……”

林鸿口中念叨着这两个词汇,在书架间一格格看过去。

走过几个格子之后,林鸿停了下来,一本书籍吸引住了他的目光——《md5算法应用》。

他将这本书拿到手中,翻看了一下前言和目录,于是将其拿在了手里,继续查看书架上其他书籍。

在书架走廊上转了几圈之后,林鸿手中已经多了好几本大部头:《rsa加密算法》、《加密算法导论》、《公钥密码学》、《对称和非对称加密算法》……

在选择这几本书的时候,林鸿都会大致看一下前沿和目录,他原本只是想研究其中的一本,可是这几本书他实在是难以选择,觉得都非常不错,于是决定干脆都进行阅读,反正他看书的速度很快。

让林鸿有点遗憾的是,这个图书管里面并没有关于posix标准的书籍。

实际上,对于这点他早就有所预料。算法这么科学本质上是属于数学领域,很早的时候就有数学家在进行研究,只是具体的应用实现在计算机领域得以开始爆发。

而posix标准则是最近几年才开始兴起的,发行量并不是很多,拉丁学校图书馆没有收藏是很正常的,毕竟这是一所中学的图书馆,有这么多关于算法的书籍已经非常不错了。

按照往常一样,林鸿找了一个比较偏僻的小角落位置坐了下来,然后开始按顺序阅读这几本书。

首先阅读的是《加密算法导论》,这本书对初学者来说比较容易理解,作者专门回顾了算法的历史,重点介绍了古代战场上凯撒大帝用于军队情报传递的密码系统。

当时的密码加密方式还比较简单,就是单纯地向前或者向后推移几个字母就得出了密文,解密的时候方向操作即可,例如abc情报,向后推移一位加密之后就变成了bcd,敌人就算截获了这份情报,如果不知道加密原理,是很难破解密文的。

不过随着时代的发展,简单的加密技术自然无法满足要求,破解和反破解技术是伴随着发展起来的。

看完《加密算法导论》,林鸿接着看其他几本书籍。

此刻,他的大脑急速运转,如同海绵一样吸收着书籍里面的知识。

林鸿一边看,一边还有时候在稿纸上计算着什么。他对书籍里面的内容理解起来完全没有障碍,甚至有一种如鱼得水,相见恨晚的感觉。

他真心感叹,前人的智慧真不是盖的,竟然在对这方面的内容有了如此深刻的研究,要是自己重新去摸索,可能一辈子都达不到这个高度。

时间逐渐流逝,林鸿完全陷入了加密算法的世界之中,对外界发生的事情完全没有了感知。

!@#

博看读书推荐阅读:东邪物语穷小子当上总经理34号妖管所四合院:不要算计我壹佰章四合院:贾东旭想娶妻?截胡了凌天狂婿隐婚娇妻boss爱上瘾变成女生后与女友的日常生活神仙都去哪儿了小鲜肉从军记神医小农民(炊饼哥哥)影视娱乐诸天万界之娇妻太撩人这个废物有点凶都市:开局薅羊毛一块钱假面骑士ZIO的自我修养女尊高武:从幼儿园开始拒绝表白绝美妻子的失踪赌神会医术,谁也挡不住乡村孤儿财阀千金是病娇,又来绑我了!重回高三,这学生实在太有钱了我有灵泉空间,打造最美乡村天界战神在都市人人都爱于休休铸星御兽师开局重生被退学,然后我逆袭了直播:老登,鬼火停你家楼下咯!糟糕!假死脱身后被女主逮住了老六开挂,神见了都怕魔妃无霜重生之乡村逍遥那年十八,捧个女明星带回家一拳和尚唐三藏重生互联网:从游戏开始韩娱稳稳的幸福都市超级雇佣兵王小弟大熊猫,打造盛世动物园不是,让你跟校花分手,你真分?软萌校花太粘人,我好爱武道等级一亿级,斩杀神灵如屠狗开局穿书:我竟是反派高富帅陈二傻的美丽生活逆天神医妃都市逆天狂少小时候救的校花,长大后她倒追我天道好轮回,那谁,别老追着我捶我的美艳女房客人人都爱大箱子末世大佬问鼎娱乐圈
博看读书搜藏榜:重生之锦绣美人谋婚婚欲醉:亿万老婆惹不得憋宝人我的修仙游戏,开局氪金成仙!萌宠豪门冷妻:非你不可美妆皇妃:我在古代直播带货我的愿望就是你!娱乐:我这么帅你们竟然叫我狗贼慕葵兮九零炮灰她被迫暴富震惊!我的徒弟居然是女帝双城:开局和蔚做狱友和离前我重生了蛇夫总裁的小狼犬盛嫁之田园贵夫重生之目中无人斗罗之暗金斗罗夫人,顾总又在求复婚了!霸妻难宠:夫人,低调点护花冷少我医武双绝,体内还有一条龙真千金被读心后,五个哥哥宠上天启航1999之大国建工年代文女配只想当咸鱼妻子的游戏神算小小姐马甲一地修仙归来,我无敌你随意穿成恶毒女配和反派he刚会五雷正法,整蛊主播上门打假浪子不浪重生归来的她们重生之影后的宠夫日常灾厄乐章盛世田园:拐个将军,忙种田!净身出户,只能靠双修无敌邻居是热芭?我有个大胆的想法!妻子的隐私国医:开局扮演神级手术大师王磊特工医妃她不讲武德风水神医诡异:开局觉醒鬼医瞳我的极品护士老婆幼龙一岁半:我被九个妹妹团宠了早安孟少心,我的霸道老公官道天下命气师四合院:从少年到首富惊!暴君的团宠崽崽是天道亲闺女腹黑王爷的小毒妃震惊:这个植物系领主太妖孽
博看读书最新小说:大院人家针破苍穹抛夫弃子求真爱,被白月光渣了你找我?被女知青抛弃后,我靠打猎走上人生巅峰重生1931,我有一座军事仓库玄天神医重生77,从拒绝村花开始逆转人生1961饥荒:从打猎开始,带领全家致富!清纯校花一实习,就被我追到手了复明后,傲娇总裁在我怀里哭唧唧未来世界AI统治人类离婚后,我的绝世战神大老婆后悔了魔族圣女和他的极品师傅玲珑塔下的爱情我为穿越者跑腿,惊动了国家爸爸我就养个电子宠物,你跟我说是九尾天狐?谁说当舔狗蠢啊,当舔狗可太棒了!灵烛师神医:开局同居丰满女护士娱乐:摆烂的我要发力了!舞侠2开局分家,真少爷一家悔哭了鉴昭行浴火重生:凤逆天下一人:我都硬刚天师了,系统才来权途:从乡镇科员开始重回85,开局和吸血鬼家庭断亲惊山月全职法师:开局八奇技,下山无敌重回1985之长姐风华昭娇修仙吗,舒心就好重生之无敌帝尊重回2001加点升级公司全是女网红,这谁顶得住啊!一不小心穿越成了老天爷重生80,断绝关系后我垄断了南方市场带上五岁妹妹走天下官途:从偶遇美女县长开始你都手撕鬼王了,还说不会武功?你家小教授也呆呆的?路边要奶喝的我,被杀手姐姐养大抗战:旅长,冤枉啊我真不是军阀四合院:我是有空间的保安重生78,开局赤手干掉一头熊大唐傀儡医带着房子穿女尊卖妻求荣?踹渣男嫁新帝荣宠后宫穿成花瓶美人,反派老公破产了惊春阙