自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (5)
  • 收藏
  • 关注

原创 ECC(Elliptic Curve Cryptography)椭圆曲线密码详解

椭圆曲线密码基于离散对数难题公钥密码ECC 非对称密钥功能:加密、签名、密钥交换ECC是RSA的后继更短的密钥长度、更快的签名、更快的密钥协商私钥长度为256bits, 32字节。大小在曲线的域范围内(field size),256bits的整数。此范围内任意整数都是合法的私钥。公钥为曲线上的点(EC points),坐标为{x,y}.能够压缩为一个坐标长度+1bit,为压缩的公钥(compressed public key)。不同的椭圆曲线具有不同的安全级别、不同的性能、不同的密钥长度。EC

2020-10-03 10:43:39 12299 2

原创 我的TLS1.3之旅

【001】The connection itself is secure because symmetric cryptography is used to encrypt the data transmitted.【002】The keys are uniquely generated for each connection and are based on a shared secret negotiated at the beginning of the session, also known as

2020-12-27 00:28:46 526

原创 openssl 随机数

struct rand_meth_st { int (*seed) (const void *buf, int num); int (*bytes) (unsigned char *buf, int num); void (*cleanup) (void); int (*add) (const void *buf, int num, double randomness); int (*pseudorand) (unsigned char *buf, int num);

2020-09-25 09:03:07 2080

原创 openssl 配置文件

typedef struct { char *section; char *name; char *value;} CONF_VALUE;Openssl采用哈希表来存放这些信息,后面会看到,LHASH 作为函数的参数。实例:#include "/usr/include/openssl/opensslconf.h"#include <openssl/conf.h>int main(){ CONF *conf; long eline,result;

2020-09-24 22:40:00 750

原创 openssl BIO

struct bio_method_st { int type; char *name; int (*bwrite) (BIO *, const char *, size_t, size_t *); int (*bwrite_old) (BIO *, const char *, int); int (*bread) (BIO *, char *, size_t, size_t *); int (*bread_old) (BIO *, char *, int);

2020-09-24 18:26:20 295

原创 openssl DSO

struct dso_st { DSO_METHOD *meth; /* * Standard dlopen uses a (void *). Win32 uses a HANDLE. VMS doesn't use * anything but will need to cache the filename for use in the dso_bind * handler. All in all, let each method control its ow

2020-09-24 17:32:17 469

原创 openssl 内存分配

struct app_mem_info_st { CRYPTO_THREAD_ID threadid; const char *file; int line; const char *info; struct app_mem_info_st *next; /* tail of thread's stack */ int references;};struct mem_st { void *addr; int num; const

2020-09-24 17:06:11 199

原创 openssl 哈希表

struct lhash_node_st { void *data; struct lhash_node_st *next; unsigned long hash;};本结构是一个单链表。其中,data用于存放数据地址,next为下一个数据地址,hash为数据哈希计算值。struct lhash_st { OPENSSL_LH_NODE **b; //b指针数组用于存放所有的数据,数组中的每一个值为数据链表的头指针 OPENSSL_LH_COMPFUNC c

2020-09-24 16:24:14 213

原创 openssl stack

提供了用宏来帮助用户实现接口。用户可以参考safestack.h 中的宏SKM_DEFINE_STACK_OF(t1, t2, t3)来定义自己的上层堆栈操作函数# define STACK_OF(type) struct stack_st_##type# define SKM_DEFINE_STACK_OF(t1, t2, t3) \ STACK_OF(t1); \ typedef int (*sk_##t1##_compfunc)(const t3 * const *a, cons

2020-09-24 15:48:48 291

原创 openssl Linux安装

If you want to install it anywhere else, run config like this: On Unix: $ ./config --prefix=/opt/openssl --openssldir=/usr/local/ssenable-crypto-mdebug Build support for debugging memory allocated via OPENSSL

2020-09-24 15:33:12 380

原创 内核小碎碎-第九集 设备树的前世今生 从dts到dtb 到启动参数传递 再到内核解析dtb 最终的使用

内核启动点,位于arch/arm/kernel/head.S .arm __HEADENTRY(stext)接着head.S/* * r1 = machine no, r2 = atags or dtb, * r8 = phys_offset, r9 = cpuid, r10 = procinfo */ bl __vet_atags__vet_atags:在arch/...

2020-07-01 17:55:07 376

原创 unflatten_dt_nodes函数解析

/** * unflatten_dt_nodes - Alloc and populate a device_node from the flat tree * @blob: The parent device tree blob * @mem: Memory chunk to use for allocating device nodes and properties * @dad: Parent struct device_node * @nodepp: The device_node tre

2020-07-01 11:04:59 1285

原创 Android3.5签名

创建前面时,出现:建议使用 "keytool -importkeystore -srckeystore D:\Andriod\appKey\wrzsRobot.jks -destkeystore D:\Andriod\appKey\wrzsRobot.jks -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。复制到cmd窗口执行,出现:C:\Users\ICAN>keytool -importkeystore -srckeystore D:\Andriod\app

2020-05-14 09:53:30 123

原创 内核小碎碎第八集 []

static struct resource s3c_rtc_resource[] = { [0] = DEFINE_RES_MEM(S3C_PA_RTC, SZ_256), [1] = DEFINE_RES_IRQ(IRQ_RTC_ALARM), [2] = DEFINE_RES_IRQ(IRQ_RTC_TIC),};struct platform_device s3c_device...

2020-04-14 17:13:45 63

原创 内核小碎碎第七集 vexpress设备树解析

//vexpress-v2m.dtsi,被vexpress-v2p-ca9.dts包含之后,会和里面的smb整合vexpress-v2p-ca9.dts中smb如下:smb: smb@4000000 { compatible = "simple-bus"; #address-cells = <2>; #size-cells = <1>; ranges...

2020-04-14 10:09:08 683

原创 内核小碎碎-第五集 platform_device 与 platform_driver

struct platform_driver { int (*probe)(struct platform_device *); int (*remove)(struct platform_device *); void (*shutdown)(struct platform_device *); int (*suspend)(struct platform_device *, pm_me...

2020-04-10 19:11:14 166

原创 内核小碎碎第六集 linux内核驱动主要数据结构解析

struct kobject { const char *name; struct list_head entry; //双向链表,挂接kobject,遍历链表上包含kobject的所有驱动,执行期望的操作; struct kobject *parent;//parent指向上级,如总线bus结构体也包含kobject对象,总线为驱动的上一层级 struct kset *kset; ...

2020-04-02 17:56:22 169

原创 内核小碎碎-第五集 从 device_node 到 platform_device

struct device_node { const char *name; const char *type; phandle phandle; const char *full_name; struct fwnode_handle fwnode; struct property *properties; struct property *deadprops; /* remove...

2020-04-01 13:33:05 238

原创 内核小碎碎-第四集 解析dtb

DTB文件格式如图【图片摘自https://blog.csdn.net/cc289123557/article/details/51782449】可参考内核的Booting-without-of.txt描述,主要内容如下: a) ATAGS interface. Minimal information is passed from firmware to the kernel with a...

2020-03-30 11:41:03 283

原创 内核小碎碎-第三集 pr_info

使用示例:pr_info(" %s[%#x]\t[%pa-%pa], %pa bytes%s flags: %#x\n", type->name, idx, &base, &end, &size, nid_buf, flags);追踪:#define pr_info(fmt, ...) __pr(__pr_info, fmt, ##__VA_ARGS__...

2020-03-26 11:56:56 1163

原创 内核小碎碎-第二集 arm_memblock_init

内核内存布局图框图【来自https://www.cnblogs.com/arnoldlu/p/8068286.html】void __init arm_memblock_init(const struct machine_desc *mdesc){ /* Register the kernel text, kernel data and initrd with memblock. */ ...

2020-03-26 11:03:34 413

原创 内核小碎碎第一集 启动参数解析 parse_args

1 跳过空格char *skip_spaces(const char *str){ while (isspace(*str)) ++str; return (char *)str;}2 面向对象struct obs_kernel_param { const char *str; int (*setup_func)(char *); int early;};/* Ch...

2020-03-24 18:21:55 276

原创 读内核杂记getopt

static void parse_args(int argc, char **argv){int c;prog = argv[0]; //程序名称字符串地址while ((c = getopt(argc, argv, “ynv”)) != -1) {switch © {case ‘y’:x86_64 = 1;break;case ‘n’:x86_64 = 0;break;...

2020-03-24 16:24:27 90

DUI0448G_v2p_ca9_trm.pdf

qemu-system-arm仿真vexpress-a9 需要的数据手册 vexpress a9开发板

2020-04-13

ARM元件库文件

lpc arm ZLG元件库

2012-11-07

周立功NXP_LPC21xx22xx_系列ARM_芯片的启动程序

周立功NXP_LPC21xx22xx_系列ARM_芯片的启动程序分解-钟常慰[1].pdf ) 免费

2012-11-07

ARM中文指令集 查找方便

ARM中文指令集 便于查找 有实例说明 方便易用 HTML格式 ARM中文指令集 便于查找 有实例说明 方便易用 HTML格式 ARM中文指令集 便于查找 有实例说明 方便易用 HTML格式

2010-03-17

深入浅出ARM7 LPC214x

这是针对初学者的材料 包括很多实例 是针对飞利浦系列的

2010-03-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除