未知数的博客

首页

关于

归档

随笔

编程银弹

小白 记得在大一刚接触编程时,经常陷入语法的陷阱,把大部分精力放在了学习语法上,经常因为知道了语言上的一些奇技淫巧而沾沾自喜。大一实验课设计一个的图书管理系统,代码删删改改,磕磕碰碰最后勉强跑通,感觉费了好多脑细胞。时常听到编程语言只是工具,好的代码是给人看的,好的代码需要好的设计。之后学习了软件工程、接触了23种设计模式,但是仍然懵懵懂懂,经常在想编程到底有没有银弹。

更多
loading..
网络

HTTPS基本原理简析

基础 对称加密算法 对称加密算法的特点是加密密钥和解密密钥是同一把密钥K,且加解密速度快,典型的对称加密算法有DES、AES等 非对称加密算法 ​ 非对称加密算法的特点是加密密钥K1和解密密钥K2是不一样的,他们是一对可互为加解密的密钥,一个可以公开,叫公钥;一个自己保留,不能让其他人知道,叫私钥。这样就能比较好的解决信息传递的安全性,相对来说加解密速度较慢,典型的非对称加密算法有RSA、DSA等。 非对称加密的两大应用 加密通信:公钥加密,私钥解密 数字签名:私钥加密,公钥解密 发送方(甲方)签名过程:使用单向哈希算法对明文生成摘要,用私钥将摘要加密 接收方(乙方)校验过程:接受方把接收到的发送方的明文用单向哈希函数取得摘要值与发送方的公钥解密发送方的数字签名而得到的摘..

更多
loading..
字节序

字节序/比特序

大端序/小端序 ​ 字节序即字节的存储顺序,如果数据都是单字节的,那怎么存储无所谓了,但是对于多字节数据,比如int,double等,就要考虑存储的顺序了。字节序是硬件层面的东西,通常只和你使用的处理器架构有关,而和编程语言无关。字节序分为大端序和小端序。 大端序:将高序字节存储在起始地址,一个占有4个字节类型的数据0x00112233在内存中如下分布: 小端序:将低序字节存储在起始地址,数据0x00112233在内存中如下分布: 比特序/位域 ​ 位域的写入顺序和当前系统字节序有关:先定义的位域在大端环境从最高bit位(MSB)开始分配。如果为小端环境则先定义的位域从最低bit位(LSB)开始分配。(CPU操作内存还是以字节为单位的) struct bitfield { uint8_..

更多
156789