草庐IT

spdlog日志库说明文档(超详细)

spdlog日志库说明文档(超详细)spdlog是一个开源、快速、只有头文件的C++11日志库,code地址在https://github.com/gabime/spdlog,基础示例在https://github.com/gabime/spdlog#readme优点只包含头文件速度很快无需依赖第三方库支持跨平台-Linux/Windowson32/64bits支持多线程可对日志文件进行循环输出可每日生成日志文件可支持控制台日志输出可选的异步日志可定义日志格式如何使用首先将代码下载下来https://github.com/gabime/spdlog,解压后会得到以下文件,其中include文件

KeePass敏感信息明文传输漏洞复现 (CVE-2023-24055)

一、漏洞描述漏洞简述KeePass是一款免费的开源密码管理器,可帮助您以安全的方式管理您的密码。您可以将所有密码存储在一个数据库中,该数据库由一把万能钥匙锁定。因此,您只需记住一个主密钥即可解锁整个数据库。数据库文件使用目前已知的最佳和最安全的加密算法(AES-256、ChaCha20和Twofish)进行加密。对KeePass配置文件具有写入权限的攻击者可以修改它并注入恶意触发器,例如通过添加导出触发器来获取明文密码。漏洞影响范围供应商:KeePass产品:KeePassPasswordSafe2确认受影响版本:KeePass2.53版本修复版本:KeePass2.53.1版本二、漏洞复现实

KeePass敏感信息明文传输漏洞复现 (CVE-2023-24055)

一、漏洞描述漏洞简述KeePass是一款免费的开源密码管理器,可帮助您以安全的方式管理您的密码。您可以将所有密码存储在一个数据库中,该数据库由一把万能钥匙锁定。因此,您只需记住一个主密钥即可解锁整个数据库。数据库文件使用目前已知的最佳和最安全的加密算法(AES-256、ChaCha20和Twofish)进行加密。对KeePass配置文件具有写入权限的攻击者可以修改它并注入恶意触发器,例如通过添加导出触发器来获取明文密码。漏洞影响范围供应商:KeePass产品:KeePassPasswordSafe2确认受影响版本:KeePass2.53版本修复版本:KeePass2.53.1版本二、漏洞复现实

「密码学」哈希为什么要将盐加在明文后面?

众所周知,在做消息认证或者签名时,仅使用hash函数安全性是不高的,容易遭受字典和暴力破解(https://www.cmd5.com/)。所以通常会使用带密钥或加盐的哈希算法作为消息认证或者口令存储,正如标题所说,我们在检索互联网上关于加盐的实现时,内容往往都是在明文后面加上随机值:那做消息认证的密钥或者盐可不可以加在明文前面呢?这就引出本文的攻击方式。MD5算法计算逻辑为了清楚这个攻击方式原理,需要先了解下md5的计算逻辑。md5算法本质上是一种压缩算法,将长度小于2^64bit的任意字符压缩成128bit固定长度字符。同AES之类的分组加密算法一样,md5也需要进行分组计算。如图所示,md

「密码学」哈希为什么要将盐加在明文后面?

众所周知,在做消息认证或者签名时,仅使用hash函数安全性是不高的,容易遭受字典和暴力破解(https://www.cmd5.com/)。所以通常会使用带密钥或加盐的哈希算法作为消息认证或者口令存储,正如标题所说,我们在检索互联网上关于加盐的实现时,内容往往都是在明文后面加上随机值:那做消息认证的密钥或者盐可不可以加在明文前面呢?这就引出本文的攻击方式。MD5算法计算逻辑为了清楚这个攻击方式原理,需要先了解下md5的计算逻辑。md5算法本质上是一种压缩算法,将长度小于2^64bit的任意字符压缩成128bit固定长度字符。同AES之类的分组加密算法一样,md5也需要进行分组计算。如图所示,md

Android主题适配说明文档

背景现项目中涉及红色、金色主题,同时需要适配红色暗黑、金色暗黑,本地需要手动维护4套色值,并且切换主题时需要重新销毁创建页面,维护跟用户体验都不是很友好。设计思路来源通过调研,发现换肤的实现原理比较符合适用当前项目的使用场景,开源项目Android-Skin-Loader通过查看源码换肤实现原理其实为通过下载或者加载本地资源包,这里的资源包其实就是一个只有资源文件的项目通过编译打包生成的.apk文件,点击切换时,通过提前手动绑定view和要改变的资源类型将资源Resource替换成资源包的Resource资源进行设置替换,从而达到换肤的效果。由此整理出方案需要自行实现的点获取需要支持主题切换的

Android主题适配说明文档

背景现项目中涉及红色、金色主题,同时需要适配红色暗黑、金色暗黑,本地需要手动维护4套色值,并且切换主题时需要重新销毁创建页面,维护跟用户体验都不是很友好。设计思路来源通过调研,发现换肤的实现原理比较符合适用当前项目的使用场景,开源项目Android-Skin-Loader通过查看源码换肤实现原理其实为通过下载或者加载本地资源包,这里的资源包其实就是一个只有资源文件的项目通过编译打包生成的.apk文件,点击切换时,通过提前手动绑定view和要改变的资源类型将资源Resource替换成资源包的Resource资源进行设置替换,从而达到换肤的效果。由此整理出方案需要自行实现的点获取需要支持主题切换的

基于Python+unittest自动化测试框架说明文档

​​ 一、unittest自动化框架介绍....-5-​​​​1、unittest核心工作原理....-5-​​​​1.1、TestCase.-5-​​​​1.2、TestSuite.-6-​​​​1.3、TestRunner.-6-​​​​1.4、TestFixture.-6-​​​​2、框架目录结构介绍....-6-​​​​2.1、config层....-6-​​​​2.2、data层....-7-​​​​2.3、log层....-7-​​​​2.4、report层....-7-​​​​2.5、test层....-7-​​​​2.6、utils层....-7-​​​​2.7、main.py

基于Python+unittest自动化测试框架说明文档

​​ 一、unittest自动化框架介绍....-5-​​​​1、unittest核心工作原理....-5-​​​​1.1、TestCase.-5-​​​​1.2、TestSuite.-6-​​​​1.3、TestRunner.-6-​​​​1.4、TestFixture.-6-​​​​2、框架目录结构介绍....-6-​​​​2.1、config层....-6-​​​​2.2、data层....-7-​​​​2.3、log层....-7-​​​​2.4、report层....-7-​​​​2.5、test层....-7-​​​​2.6、utils层....-7-​​​​2.7、main.py