- 博客(18)
- 资源 (5)
- 收藏
- 关注
原创 Linux C/C++ 内核态算法导航
Linux C AES-GCM算法(内核态)https://blog.csdn.net/afk_02/article/details/121768143Linux C hmac-sha1 算法(内核态)https://blog.csdn.net/afk_02/article/details/121654188Linux C 字符串快速搜索(内核态)https://blog.csdn.net/afk_02/article/details/121601806Linux C B+树算法源码(内核态+重
2022-03-29 16:14:41 1735
原创 Linux C AES-GCM算法(内核态)
GCM算法实现,其依赖AES算法请点击Linux C AES算法#include "aes.h"#define GCM_BLOCK_SIZE AES_BLOCK_SIZE#define GCM_DEFAULT_IV_LEN (12)#define GCM_FIELD_CONST (0xe100000000000000)typedef enum { O_FAIL = -1, O_SUC = 0,} op_result;typedef int (*block_key_.
2021-12-07 14:17:42 1107 5
原创 Linux C 字符串快速搜索(内核态)
/* 字符串快速搜索 */#include <linux/types.h>#include <linux/init.h>#include <linux/module.h>#include <linux/kernel.h>#include <linux/ctype.h>#define MAX_CHAR 256#define SIZE 256#define MAX(x, y) (x) > (y) ? (x) : (y)in.
2021-11-29 08:38:57 1344
原创 RSA算法 Linux C (内核态)
/* bignum.h */#include <linux/types.h>#include <linux/skbuff.h>#include <linux/init.h>#include <linux/module.h>#include <linux/kernel.h>#include <linux/ctype.h>typedef uint64_t dbn_t;typedef uint32_t bn_t;#.
2021-07-09 16:24:39 665
原创 AES-128算法 Linux C源码(内核态)
#include <linux/types.h>#include <linux/skbuff.h>#include <linux/init.h>#include <linux/module.h>#include <linux/kernel.h>#include <linux/ctype.h>#include <linux/spinlock.h>#define AES_BLOCK_SIZE 1...
2021-07-09 16:11:20 2906 1
原创 MD5算法(Linux C实现)
基础算法,源码实现如下:#include <linux/types.h>#include <linux/skbuff.h>#include <linux/init.h>#include <linux/module.h>#include <linux/kernel.h>#include <linux/ctype.h>#define MD5_BLOCK_LENGTH 64#define MD.
2021-06-25 14:41:06 946
原创 linux 嵌入式环境使用iptables防火墙的一些体验
近期刚刚转到linux服务器开发组,因为需求问题需要开发一部分内网环境路由、策略控制方面的内容,走了很多弯路,现在总结一下!完全是随笔,比较乱。这里不介绍如何下载安装!路由方面由于初期不清楚linux内核提供IP转发功能,去选择开源路由器源码去学习,比如quagga、番茄等,但是分割其中的内容加入现有系统比较麻烦,quagga还是不错的,属于进程模块也比较方便加入系统,操作上比较类似Ci
2021-06-23 17:46:06 2018
原创 Linux C/C++开发常见错误及其漏洞(二)
上篇介绍了一些常见的便错错误导致的漏洞,下面捎带讲解下相关的漏洞利用。由于有部分内容可能需要实际操作,所以可能无法介绍清晰,还请见谅!一、基础汇编介绍之前首先带大家了解下基础的汇编语法以及基础知识。对于64位系统,系统地址空间变大同时增加了多个通用寄存器被扩展到64位的通用寄存器为:RAX,RBX,RCX,RDX,RSI和RDI被扩展为64位的指令指针,基地址指针,栈指针分别为RIP,RBP和RSP提供的额外寄存器:R8到R158字节宽的指针在栈上push/pop为8字
2021-06-23 17:24:04 224
原创 Linux C/C++开发常见错误及其漏洞(一)
一、通用规范1、代码简洁精炼,美观,可读性好,高效率,高复用,可移植性好,高内聚,低耦合,没有冗余, 不符合这些原则,必须特别说明。2、规范性,代码有规可循。特殊排版、特殊语法、特殊指令,必须特别说明。二、常见的错误1、复制、粘贴当错误产生时会发生什么结果?错误的数据/返回数据、条件丢失、难以调试、肉眼难辨2、 ?:?:优先级小于前置的 | 、+等运算符,使语义发生变化此类运算符与其他运算符结合使用时请使用()。3、无意义的指针与0比较
2021-06-23 17:22:36 517
原创 Linux C B+树算法源码(内核态+重复键)
最近项目需要存储短时大量的数据结构(存在重复KEY)同时需要具有相当的效率,考虑一段时间后结合早期经验决定使用B+树设计此类存储结构。B+树结构具有相对稳定的查询效率,在存储中应用可能较多,如存储的元数据,在设计中可能存在某些适应性的修正,但其基础特性并不会改变。本次实现主要是在内核层,但是由于主要是为了项目的需求所以节点数据并不通用,有需要的可能需要二次修改。内核代码:/* ktls-bplus.c */#include "ktls-bplus.h"static void du..
2021-06-23 17:20:12 375
原创 CentOS无人值守U盘安装(kickstart)
CentOS默认镜像安装时使用界面模式,但有些情况下确实缺少鼠标键盘设备无法方便的进行安装,现放出kickstart工具的完整ks.cfg以及isolinux.cfg文件,请各位随时取用!针对EFI模式补充EFI配置文件支持BIOS以及EFI两种模式。#ks.cfg## Kickstart file automatically generated by anaconda# Install, not upgradeinstallcdrom# enable graphical#grap
2021-06-23 17:12:37 918
原创 MySQL 8.0.17单机以及主备模式参数配置
近期由于业务需要将系统升级到CentOS7.9,同时因为漏洞问题将数据库升级至系统默认的8.0.17版本。测试过程中出现以下问题(对比早期5.7版本):1、数据insert效率奇慢无比,测试数据为20条/秒,与上一版本有上百倍差距,查阅一些资料后是由于MySQL8版本默认开启了log-bin以及log-bin-index,系统命令行方式关闭后,insert效率与5.7版本相当,修改方式如下:set global log_bin=off; set global log_bin_index=off
2021-06-23 17:09:31 294
各类数据包wireshark包
2024-07-31
数据库代理程序,支持mysql 、oracle以及达梦8
2024-07-17
CRichEdit添加图片
2011-03-23
MFC分页控件/分页读取/分页写文件
2011-03-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人