摘要:
目录输入/输入模型分层层的一些通用法则算法和程序 输入/输入 现代计算机都采用存储程序结构,又称为冯·诺依曼结构,所有对计算机的操作,都可以简化为如下模型: 现代计算机组成的五大部分: 控制器 运算器 存储器 输入/输出设备 冯·诺依曼结构主要特点有: 以运算单元为中心; 输入/输出设备与存储器之间
阅读全文
posted @ 2025-01-09 17:42
Mysticbinary
阅读(317)
推荐(0)
摘要:
目录贪心算法的基本原理找钱案例问题描述:贪心策略:具体步骤:贪心算法的步骤:代码:测试:注意:一些优缺点 贪心算法(Greedy Algorithm)是一种通过选择当前状态下最优的决策来逐步达成全局最优解的方法。 它的核心思想是:在每一步的决策中,都选择当前看起来最好的选择(即局部最优解),希望通过
阅读全文
posted @ 2025-01-07 16:28
Mysticbinary
阅读(236)
推荐(0)
posted @ 2024-12-23 08:53
Mysticbinary
阅读(0)
推荐(0)
摘要:
目录数字证书证书格式证书的工作流程PKI的引入CA提供的服务证书的工作流程(细讲)证书链证书运营机构(CA)总结Reference 先回答这些问题: 证书是什么? 证书解决能解决什么问题? 证书和CA机构的关系? 数字证书 数字证书的定义: 公开密钥认证(英语:Public key certific
阅读全文
posted @ 2024-12-09 16:18
Mysticbinary
阅读(107)
推荐(0)
摘要:
目录正向代理反向代理透明代理CDN代理 网络代理的定义: 一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接。 为什么不能直接连接? 特定的场景下,就需要不能直连,如下是几种常见的网络打理。 正向代理 你在手机上设置的VPN就是一个正向代
阅读全文
posted @ 2024-12-06 14:24
Mysticbinary
阅读(392)
推荐(0)
摘要:
目录DH、ECDH 和 ECDHE 的关系Flow chartReference 背景: 对称加密算法都需要一把共享密钥,但是很多情况下,互联网环境不适合传输这把对称密钥,有被中间人拦截的风险。 为了解决这个问题,我们看看ECDH秘钥交换算法是怎么做的? DH、ECDH 和 ECDHE 的关系 DH
阅读全文
posted @ 2024-12-05 16:53
Mysticbinary
阅读(2066)
推荐(0)
posted @ 2024-12-05 14:14
Mysticbinary
阅读(0)
推荐(0)
摘要:
目录账号+密码账号+短信验证码第三方渠道鉴权——微信 本文只是一个Demo设计,仅供学习思路,并不能用于真实的线上业务,因为有很多漏洞。 一般线上应用都需要对用户身份进行鉴权,通过身份校验的用户,都会得到一个access_token,这个凭证是全局唯一接口调用凭据,调用应用的各接口时都需使用acce
阅读全文
posted @ 2024-12-04 08:27
Mysticbinary
阅读(626)
推荐(0)
摘要:
系统和多个线程的关系: 一个系统内可以创建多个进程, 一个进程可以类比为一个应用程序, 一个进程内可以创建多个线程, 协程是Go语言首创,通过在一个线程内代理当前线程的所有系统的调度权,模拟出多个子线程——称作协程,以达到优化效率的目的。 线程和协程的关系: 协程 Coroutine的精髓就是在一个
阅读全文
posted @ 2024-12-03 17:19
Mysticbinary
阅读(32)
推荐(0)
摘要:
目录多线程的基础线程的生命周期 计算机多线程的定义: 多线程(Multithreading)是指在同一进程内并发执行多个线程的技术。每个线程代表一个执行流,可以独立执行代码。 在多线程程序中,操作系统会将多个线程的执行时间片交替分配给不同线程,从而使它们看起来几乎同时运行。 多线程的原理涉及操作系统
阅读全文
posted @ 2024-12-03 17:11
Mysticbinary
阅读(98)
推荐(0)
摘要:
目录公钥密码的基础ECC 引入PrincipleRSA和ECC对比Reference: 下文介绍两种主流的公钥密码算法的一些入门原理, 通过对比两种算法的陷门函数来作对比。 公钥密码的基础 以下是公钥密码学一些关键点,区别于对称加密,公钥密码区分两把钥匙,一把公钥,一把私钥。 公钥可以发送给任何人,
阅读全文
posted @ 2024-12-03 11:31
Mysticbinary
阅读(830)
推荐(2)
posted @ 2024-11-27 10:45
Mysticbinary
阅读(0)
推荐(0)
posted @ 2024-11-06 16:40
Mysticbinary
阅读(0)
推荐(0)
摘要:
目录广度优先的动态图深度优先的动态图广度和深度的具体步骤深度和广度的应用场景 图的两种遍历方式: 深度优先遍历(DFS——Depth First Search) 广度优先遍历(BFS——Breath First Search) 图的遍历算法里,处理临时数据,依赖两个抽象数据结构: 栈 队列 广度优先
阅读全文
posted @ 2024-09-26 16:26
Mysticbinary
阅读(375)
推荐(0)
摘要:
目录双链表的适合场景 为什么双链表可以访问第一个和最后一个节点? todo 双链表的适合场景
阅读全文
posted @ 2024-09-19 13:20
Mysticbinary
阅读(22)
推荐(0)
摘要:
目录Why need Binary Tree?树也是节点结构规定术语树的创建树的查找查找的效率树的删除适合场景树的遍历 Why need Binary Tree? 有时候,我们希望数据按照特定顺序排列。 比如: 想要按字母顺序排列人名; 按价格顺序排列产品; ... 树也是节点结构 规定 二叉树的每
阅读全文
posted @ 2024-09-19 11:31
Mysticbinary
阅读(47)
推荐(0)
摘要:
目录实践1 —— 从字符串中移除星号 栈和数组存储数据的方式一样,它们都只是元素的列表。不同之处在于栈的以下3个限制: 数据只能从栈末插入; 数据只能从栈末删除; 只能读取栈的最后一个元素。 栈和队列、链表...一样,都是抽象的数据结构, 何为抽象数据结构? 它指一种数据组织的形式,它不关注具体的实
阅读全文
posted @ 2024-09-14 17:33
Mysticbinary
阅读(188)
推荐(0)
摘要:
目录题目背景解题思路 题目背景 这个题目用常规的双循环就可以完成。 但不是最优解。为什么? 看看他的步骤数: N =[3,2,4] 求结果为6的两个元素坐标如下, 1). 3+2 = 5 不等于 2). 3+4 = 7 不等于 3). 2+4 = 6 等于,获取坐标[1,2] 求N的步骤数规律: 2
阅读全文
posted @ 2024-09-13 10:28
Mysticbinary
阅读(48)
推荐(0)
摘要:
目录需求背景 需求背景 给你一个数组,把这个数组里面每个元素之间都求差(结果忽略负符号),然后把这些差求和。 给你数组 n = [1,3,5] 正常演示步骤: [1,3,5] 1-3 = 2 1-5 = 4 - 3-5 = 2 sum = 8 反过来思考子问题是什么: 假设已经有一个x函数帮忙搞定了
阅读全文
posted @ 2024-08-30 18:34
Mysticbinary
阅读(37)
推荐(0)
摘要:
目录需求背景、限制条件、化简模拟盘子的移动步骤递归实现Code分析练习 1 需求背景、限制条件、化简 汉诺塔就是一个由柱子和盘子组成的玩具,它有一些玩法上的限制,主要是规定了盘子移动有限制。 想理解到递归本质,汉诺塔是个不错的载体。 怎么体会? 在盘子移动的过程中。 # 盘子的数量: # 通常,我们
阅读全文
posted @ 2024-08-30 08:50
Mysticbinary
阅读(124)
推荐(0)
摘要:
目录递归的基础递归的底层实现(不是重点)递归的应用场景编程中 两种解决问题的思维自下而上(Bottom-Up)自上而下(Top-Down)自上而下的思考过程——求和案例台阶问题 案例易位构词生成 案例 递归和for循环(迭代法)很像,都是通过循环去完成一件事。 但采用Top-Down思维去设计的递归
阅读全文
posted @ 2024-08-29 16:42
Mysticbinary
阅读(571)
推荐(1)
摘要:
目录equals用法hashCode用法总结为什么一个类中需要两个比较方法为什么重写 equals 方法时必须同时重写 hashCode 方法?Reference 这个并不是一个通用性编程问题,只属于在Java领域内专有问题。 要做好心理准备,这是一个复杂类的问题,要解答这个问题,需要梳理清楚两个函
阅读全文
posted @ 2024-08-26 11:39
Mysticbinary
阅读(397)
推荐(2)
posted @ 2024-08-20 14:28
Mysticbinary
阅读(0)
推荐(0)
摘要:
目录Hash表的起源Hash表的别名The working principle插入操作查找操作解决键冲突问题Hash的应用场景 Hash表(也叫Hash函数)是一种的数据结构。它是加速算法里最常见的工具。在一些场景下,用这个数据结构可以提速。 如果说 O (log N )已经很不错了,但你学习 哈希
阅读全文
posted @ 2024-08-19 16:16
Mysticbinary
阅读(43)
推荐(0)
摘要:
目录原理解释问题解决Reference 问题背景: 如何分辨请求消息是信任渠道商发送的请求? 如何分辨请求消息是否被篡改? 从问题背景涉及了两大问题: 数据完整性 身份认证性 接口签名的定义: 接口签名——API Signature, 接口的请求签名是一种用于确保API请求的完整性和认证性的机制。它
阅读全文
posted @ 2024-08-15 13:16
Mysticbinary
阅读(503)
推荐(0)
摘要:
目录依赖关联(Association)聚合(Aggregation)组合(Composition)继承(Inheritance)实现(Implementation) 在JAVA以及其他的面向对象设计模式中,类与类之间主要有6种关系,分别是:依赖、关联、聚合、组合、继承、实现,他们的耦合度依次增强。
阅读全文
posted @ 2024-08-14 15:36
Mysticbinary
阅读(488)
推荐(0)
摘要:
目录JDK的版本Java 8Java 9Java 11 (LTS)Java 17 (LTS)Java 21JDK的环境变量设置JAVA_HOME 和 PATH 环境变量CLASSPATH 环境变量多个SDK版本切换 又双叒叕换了一个电脑,又双叒叕得重新折腾各种软件的安装,记录一下吧... 软件安装中
阅读全文
posted @ 2024-08-11 10:32
Mysticbinary
阅读(53)
推荐(0)
摘要:
目录防止APK被调试加壳代码混淆:检测调试器:使用反调试技术:环境检测:使用Native代码:多层防护:防止APK被篡改签名校验:V1 签名机制V2 签名机制V3 签名机制动态完整性校验: 想要保护APK应用内的代码逻辑安全,需要做一定的APK加固操作。加固的常见操作有: 混淆 加密 隐藏 检测 .
阅读全文
posted @ 2024-07-27 22:21
Mysticbinary
阅读(813)
推荐(2)
摘要:
目录1. 基本概念2. 主要组成部分3. 实际应用4. 迭代器模式的好处5. 理解迭代器模式的思想6. 实现1. 定义迭代器接口2. 创建具体迭代器3. 定义聚合对象接口4. 实现具体聚合对象5. 使用迭代器总结 Iterator Pattern它提供了一种顺序访问集合对象内部元素的方法,而无需暴露
阅读全文
posted @ 2024-07-16 23:15
Mysticbinary
阅读(29)
推荐(0)
摘要:
目录核心思想优点缺点Example接口和类定义1. 命令接口2. 具体命令类3. 接收者类4. 调用者类使用示例说明 核心思想 封装请求: 将请求的每一个部分封装到一个独立的命令对象中; 解耦调用者和接收者: 调用者只需要知道如何调用命令对象,而不需要了解如何处理请求; 可扩展性: 可以很容易地增加
阅读全文
posted @ 2024-07-16 23:14
Mysticbinary
阅读(57)
推荐(0)
摘要:
目录Permutation 定义Combination 定义顺序要求模式套用Tool练习题 Permutation 定义 排列是从一个集合中按照一定顺序选取部分元素的方式。 比如密码,就是一个排列,1122 和 2211 是不同的密码口令。 Combination 定义 组合是从一个集合中选取部分元
阅读全文
posted @ 2024-07-16 16:26
Mysticbinary
阅读(180)
推荐(0)
posted @ 2024-07-16 16:21
Mysticbinary
阅读(0)
推荐(0)
摘要:
宽字符截断的原理主要涉及字符编码的处理方式,特别是在多字节字符集(如GBK、BIG5等)中。这种漏洞通常发生在web应用对用户输入进行过滤时,由于字符编码的不一致导致的。 原理 多字节字符集中,一个字符通常由两个或更多字节组成。 在进行字符串操作时,如果不正确处理这些多字节字符,可能会导致字符被错误
阅读全文
posted @ 2024-07-16 16:15
Mysticbinary
阅读(89)
推荐(0)
摘要:
目录IP地址格式IP分类CIDR 和 子网掩码介绍NAT+公网、私网地址CIDR 与 VLSMVLSM 子网划分案例练习Reference IP的作用类似物理世界中的地址,用于定位机器的位置。只不过物理的地址是文字描述,计算机世界的IP是一串二进制数,并且它是有一定约定和规则的。 下面我来学习关于I
阅读全文
posted @ 2024-07-15 18:11
Mysticbinary
阅读(231)
推荐(0)
摘要:
目录SSRF + Redis未授权 案例怎么构造 redis 数据包?Reference SSRF不难理解,服务器端请求伪造(英语:Server-side Request Forgery,简称SSRF)是攻击者滥用服务器功能来访问或操作无法被直接访问的信息的方式之一。 服务器端请求伪造攻击将域中的不
阅读全文
posted @ 2024-07-14 21:22
Mysticbinary
阅读(724)
推荐(0)
摘要:
目录ARP是什么?ARP协议工作原理ARP协议下的攻击原理攻击软件防范Reference ARP是什么? ARP是通过网络地址(IP)来定位机器MAC地址的协议,它通过解析网络层地址(IP)来找寻数据链路层地址(MAC)的网络传输协议。 对个定义不能理解的话,可以结合 TCP/IP 模型图理解,如下
阅读全文
posted @ 2024-07-11 17:59
Mysticbinary
阅读(1073)
推荐(0)
posted @ 2024-07-10 22:27
Mysticbinary
阅读(0)
推荐(0)
摘要:
目录无规律的加密过程无规律的解密过程——破译有规律的加密过程有规律的解密过程——破译练习 凯撒密码(英语:Caesar cipher),或称凯撒加密、凯撒变换、变换加密,是一种最简单且最广为人知的加密技术。 凯撒密码是一种替换加密技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏
阅读全文
posted @ 2024-07-10 10:32
Mysticbinary
阅读(3426)
推荐(3)
摘要:
目录隐写术和加密的区别隐写原理物理上的隐写术电子上的隐写术场景 隐写术是一种将信息隐藏在其他媒体中的技术。 通过使用特定的方法和技术,可以将信息编码成图像、文本或其他形式的媒体,而这些信息只有在特定的方式下才能被读取。 隐写术的基本原理是利用人类视觉、听觉或其他感官的局限性,将信息隐藏在不易察觉的地
阅读全文
posted @ 2024-07-09 10:55
Mysticbinary
阅读(762)
推荐(0)
摘要:
目录对列结构队列中间件消息队列能解决什么消息处理的触发机制异步消息队列的概念常见的异步消息队列框架 队列和栈一样,都很适合处理临时数据。 对列结构 和栈一样,队列也是有3条限制(与栈的限制不同)的数组: 数据只能插入队列 末尾(与栈一样); 只能从队列 前端 删除数据(与栈相反); 只能读取队列 前
阅读全文
posted @ 2024-06-12 15:55
Mysticbinary
阅读(50)
推荐(0)