北漂日记(一)

Welcome to BeiJing!

​ 2021年1月18日,我乘坐川航,从双流国际机场抵达首都国际机场。北京,是萦绕在无数年轻人脑海的一个城市,爱恨交织着。到达北京,我的第一感受是落后,满眼都是破旧的建筑,与我向往的繁华都市相差甚大(指魔都)。带着失望的心情,我扛着几十斤的行李箱,一层层地爬到五楼,来到一个合租的七平米的小屋,我的北京生活就此拉开了帷幕。

阅读全文

Network Security Protocol

Introdution

假设我们现在有两个用户分别为 Alice 和 Bob,Alice 拥有一个较大的数据文件,Alice 想要通过网络安全地和 Bob 共享这个数据文件。我们知道计算机网络提供的最大功能就是连通性和共享,在网络存在着大量的安全威胁,诸如被动攻击与主动攻击等等,但我们传统的 TCP/IP 网络栈并不提供安全传输,那么我们要如何保证数据传输过程中的安全呢?

这里的“安全”对应着网络安全中种种的网络安全需求,包括保密性、完整性、可用性、可控性、不可否认性等等。因此我们需要设计一个网络安全协议,我们可以借鉴一下 HTTPs的设计理念,利用公钥密码进行密钥分发(公钥加密效率较低),利用对称密码进行数据加密(对称加密适合加密大量数据),完成这里的简单数据传输。显然这个协议并不能满足身份认证等功能,那么如何设计一个完善的网络安全协议呢?

通常我们将网络安全协议划分为协商过程数据通信两个步骤,并针对两个步骤分别规定了相应的语法、语义和时序。在协议过程中,我们需要完成身份认证,算法协商,会话密钥的协商等。

在本篇文章中,我们自顶向下地分析TCP/IP 协议栈中每层的网络安全协议,包括应用层协议PGP、传输层协议TLS、网络层协议IPSec、链路层协议WPA等等。

阅读全文

The Little Go Book

Free Talk

因为下个月将要去字节实习,技术栈要从 Java 转为 Goland ,大约半年多前,我粗略地学习过一次 Goland ,完成了一个简单项目研发。这次打算系统地学习一下 Goland ,这篇文章主要是阅读 The Little Go Book 的笔记,适合有一定其他语言经验的开发者快速了解 Goland。

阅读全文

Technical Notes 1

Free Talk

​ 我发现自己每天都会在实验,或者编程,或者一些知识点上遇到困惑,但是之前总是简单百度看一下就过去了。今天我突然想另开一个专栏,用于记录自己每天的一个简单的知识收获,方便自己加深印象以及后续查阅。这一专栏的文章知识点都比较零碎,更多地是给自己做记录,打算之后有空每天都更新一篇。

阅读全文

Java实习总结

自我介绍

我目前是电子科技大学的一名大三学生。在大一大二两年,我主要的精力都用来准备校内课程学习。在今年的十月份开始准备 Java 实习面试,目前陆续拿到了滴滴、华为、字节跳动的实习offer。

阅读全文