- 博客(11)
- 收藏
- 关注
原创 hppt协议的加密流程
具体如下图,黑客对客户端扮演服务器给客户端假公钥,用来解密客户端的对称密钥,对服务器扮演客户端装作无事发生。对称密钥自古流传,通过将信息(如word)每个字母按字母表移动一定位置进行加密,解密方得知密钥(如各个字母移动5位,5即为密钥),向反方向移动对应位置即可解密。非对称密钥与对称密钥不同,它拥有一对公钥和私钥,公钥加密必须得私钥解密,私钥加密可以用公钥解密。但如今网络时代,信息的流通都是公开的,他人也能够知道你们的对称密钥,这时就需要另一种密钥确保对称密钥的安全性,就是非对称密钥。
2024-12-02 20:50:28
638
原创 网络中的一些基本概念
数据在的传输过程中,得按照顺序把每层的协议都加上才能进行数据传输,在接受使用数据时,也得按顺序把每层协议解析后才能得到原始的数据。4.传输层遵循TCP或UDP协议进行解析,将传输层协议头取出(协议头描述了应用层的协议),把剩余的数据交给应用层。2.数据链路层遵循以太网进行解析,将帧头和帧尾取出(帧头描述了网络层的协议),把剩余的数据交给网络层。3.网络层遵循IP协议进行解析,将Ip协议头取出(协议头描述了传输层的协议),把剩余的数据交给传输层。:分为五层,包括物理层、数据链路层、网络层、传输层、应用层。
2024-11-04 17:34:09
157
原创 HashTable, HashMap, ConcurrentHashMap 之间的区别
ConcurrentHashMap线程安全,根据桶级加锁,锁竞争更少,效率更高。3.扩容操作化整为零,把旧HashMap的元素搬运分成多次,避免线程安全问题。HashTable线程安全,所有public方法都加锁。2.通过原子类创建size,保证size线程安全。1.从锁整个HashMap到锁桶。HashMap线程不安全。
2024-10-26 18:46:25
119
原创 synchronized概论
--(其他线程想要获取当前锁)---> 轻量级锁 --- (锁粗化)----> 重量级锁。当一个线程短时间内反复获取同一个锁,JVM会把锁的粒度进行粗化,把代码放入一个锁内。1.不悲观也不乐观(自适应,可根据锁的任务轻重自行调节)无锁 ----(使用sinchronized)--->1.悲观锁(重量,悬挂等待)和乐观锁(轻量,自旋)作出标记并没有真的创建锁,当有线程想要获取时创建锁。2.公平锁(先到先得)和非公平锁(随机)锁对象是该类的所有实例对象。3.可重入锁和不可重入锁。锁对象是调用该方法的对象。
2024-10-24 20:44:11
462
原创 线程池的概要
当任务队列满时,采取的拒绝阻塞的策略,是ThreadPoolExecutor类下实现了RejectExecutorHandler接口的静态内部类,有如下几种。2.判断当前线程数是否小于最大线程数,是则创建新线程执行该任务,否则放入任务队列等待执行。4.DiscardPolicy:丢弃最新未执行任务,,添加当前任务。2.CallerRunsPolicy:在调用者的线程中执行该任务。线程池中非核心线程外线程最大允许空闲的时间,超过则销毁。线程池中核心线程个数,也是线程池中线程最小个数。线程池中线程最大个数。
2024-10-20 19:55:26
162
原创 扫雷优化后续 模式选择和展开为空。解决上篇递归优化的Bug
1. 要想棋盘可以选择,之前定义的常数(详细看上篇扫雷的设计)就都的换了。用变量表示扫雷数组的打印的大小,创建两个足够大的数组以便不同大小的棋盘布置。2. 判断模式选择条件。
2023-12-14 17:26:17
49
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人