- 博客(118)
- 资源 (21)
- 收藏
- 关注
原创 OpenSSL 套件中的临时密钥
OpenSSL 套件中的临时密钥 一)背景 最近,由于工作原因,我学习了OpenSSL。在学习的过程中遇到了ECDHE-SM4-SM3套件。当时,我对ECDHE中的E含义不是特别了解,于是我找了资料并对其进行了翻译。E是Ephemeral的缩写。ECDHE-SM4-SM3套件密钥协商的时候使用的是临时密钥作为加解密的密钥。 二)E
2017-06-29 22:05:58 1914
原创 信号量学习总结(一)
信号量学习总结(一) 定义 信号量是一种用于如果不同进程间或一个给定进程的不同线程间同步的原语。 信号量相关的操作 创建一个信号量 创建一个新的有名信号量或打开一个已存在的有名信号量。 sem_t*sem_open(const cha
2017-05-18 21:16:45 672 1
原创 学习解析命令行参数函数-getopt函数
学习解析命令行参数函数 —— getopt函数背景 工作的过程中,我们需要根据命令行参数来决定程序运行的过程。因此我们可以使用getopt函数来满足我们的工作需要。函数简介 函数原型如下: int getopt(int argc, char * const argv[], const char *optstring); 如果g
2017-05-07 01:55:15 454
原创 switch语句使用总结
switch语句使用总结背景 程序里的if-else太多,代码显得乱、逻辑不清晰。这时使用switch语句代替if-else结构的语句是个不错的选择。switch的语法如下 switch(表达式的值){ case值1 : 语句; break;
2017-05-03 23:49:55 2251
原创 C++类中的static成员学习总结
C++类中的static成员学习总结前提 C++类背后蕴含数据抽象和封装思想。数据抽象是一种依赖于接口和实现分离的编程技术。封装是一项将低层次的元素组合起来形成的新的、高层次实体。 对于类而言C++的全局对象会破坏封装:全局对象需要支持特定类的抽象的实现。因为C++类是数据抽象和封装的结果,在定义类的时候只是类成员的声明没有实现。如果某个类的全体对象
2017-04-30 21:00:27 493
原创 C++ 字符串分割
C++ 字符串分割 方法1:size_t find_first_of (char c, size_t pos = 0) const; // 从pos位置开始,查找字符c,并返回字符c的首次出现的位置。 方法2:string subst
2017-04-27 18:05:56 1225
原创 C++ 字符串兼容C 字符串
C++ 字符串兼容C 字符串背景在开发过程中经常会遇到C++字符串与C字符串的结合操作。解决方法C++ string类提供了c_str()函数。c_str()函数返回C风格字符串,即返回指向字符串数组首地址的指针,并且以 null结束。例子#include #include #include #include using namespace std
2017-04-21 08:01:12 560
原创 一个nginx C++ hello_world http module
写一个nginx C++ hello_world http module 背景由于需要开发一个nginx C++ http module,因此写了一个demo。nginx是C实现的,如果需要添加C++模块,则需要修改configure后的Makefile文件。实现思路:C++ module使用g++编译器,nginx源码使用C编译器,最后用g++链接生成nginx可执行文件。C
2017-04-15 10:12:18 4055
原创 大端(Big Endian)和小端(Little Endian)的区别
大端(Big Endian)和小端(Little Endian)的区别背景在C/C++中,我们经常会处理位运算。不同的系统字节的排列就不一样,有的系统是大端排列,有的系统是小端排列。因此,处理位运算也会因不同的系统而不一样。下面我来介绍一下大端(Big Endian)和小端(Little Endian)的区别。大端小端测试代码总结:
2017-04-13 22:32:01 9660
原创 查看nginx安装项
nginx安装 一、背景 安装nginx的时候想知道nginx的所有安装选项。 二、查看所有安装选项方法 在解压后的源码包中运行 ./configure --help 。 三、测试安装选项 --with-cpp_test_module 由于我想写C+
2017-03-31 22:36:01 398
原创 linux sed grep awk命令
linux sed grep awk命令 一、背景 工作中需要使用shell脚本替换文件中的内容。需要实现的功能如下所示。以下的实例都是运行在shell脚本中,如需运行在终端,需要把双引号改成单引号。 二、实例 1)获取某个字符串所在的行数 例如:获取nginx.conf文件的包含"liste
2017-03-30 01:59:22 1073 2
原创 SAML Web SSO学习
SAML即安全声明标记语言,英文全称是Security Assertion Markup Language。它是一个基于XML的标准,用于在不同的安全域(securitydomain)之间交换认证和授权数据。
2017-03-26 18:07:08 20146 4
翻译 XML Signature
XML Signature(也称作XMLDsig,XML-DSig,XML-Sig)是一个定义数字签名的XML语法的W3C推荐标准。从功能上或,XML Signature与PKCS#7有很多共同点,但是XML签名具有更好的可扩展性,并为签名XML文档做了调整。XML Signature在许多Web技术,如SOAP, SAML等中使用。XML signature可以用来签名任何类型的数据(称作资源),最常见的是XML文档,但是任何可以通过URL访问的资源都可以被签名。如果XML签名用于对包含该签名的XM
2017-02-27 23:43:29 2038
原创 ldap输出日志信息
ldap输出日志信息一、背景 由于在使用C语言调用openldap接口的时候经常出现错误,因此需要打开openldap的日志信息来确定错误的原因。二、启动ldap调试模式 在openldap的服务进程的目录运行 ./slapd -d 256 。
2017-02-23 16:45:26 4479
原创 使用jquery 遍历函数-find()、eq()
使用jquery 遍历函数-find()、eq() 一、背景 遍历表格时,获取某列的值。 二、举例说明 1) html主要的框架 如下: 显示顺序
2017-01-23 19:34:22 11179
原创 thinkPHP5 使用laypage分页插件实现列表分页功能
thinkPHP5 使用laypage分页插件实现列表分页功能 一、背景 在使用thinkPHP框架做项目的时候,经常会遇到对列表的内容进行分页。thinkPHP框架中自带了分页功能,但是有缺陷。这个缺陷是每次返回每页数据给页面时需要重新加载页面所需要的JS、CSS等资源。如果页面包含的JS过多、过大,会增加流量压力。因此,我们使用laypage插件。每次使用
2017-01-23 18:27:57 7068 2
原创 C 字符串学习总结
1) const char * p 与 char * const p 的区别2)const char * p 详解3)char * const p 详解4) C 风格字符串
2017-01-17 07:31:55 427
原创 IDE 和SCSI简介
IDE 和SCSI 的简介 一、背景 在学习Linux的过程中,经常会遇到IDE和SCSI概念。由于不了解IDE和SCSI,所以找了点资料学习。
2016-12-27 23:47:23 7561
原创 解决拷贝的虚拟机网卡配置不正确的问题
解决拷贝的虚拟机网卡配置不正确的问题 在开发的过程中,我们经常会拷贝虚拟机。有时候我们拷贝来的虚拟机的网卡不能正常启动。出现“没有找到合适的设备:没有找到可拥有链接System eth0的设备”。
2016-12-15 10:22:26 2997
原创 单点登录概述
单点登录概述 在企业应用中,越来越多的应用系统开始使用单点登录的功能。那么单点登录到底是什么呢? 单点登录是用户只登录一次就可以访问所有信任的系统。这句话包含的信息挺多,比如说登录一次指的是什么?用户和登录的系统有什么关系?用户登录的系统和信任的系统有什么关系?用户和信任的系统有什么关系?接下来我来回答这些问题。 首先,
2016-11-30 22:51:58 1266
原创 scp error! Host key verification failed. lost connection
一、问题:有时候使用scp发送文件到远程服务器,出现如下错误:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
2016-11-21 12:50:37 3387
原创 php-fpm 以user =root group=root 的权限运行
php-fpm 以user =root group=root 的权限运行
2016-11-03 18:18:02 7837
原创 linux命令打印字符串md5哈希后的值
linux命令打印字符串md5哈希后的值 背景:需要字符串的MD5值。 解决方法:在Linux系统的终端输入命令: echo "字符串" | md5sum | cut -d ' ' -f1 例子:想知道”hello“的MD5值。 [sm2env ~]# echo "hello"
2016-10-26 18:36:44 3339
原创 解决yum install redhat-lsb遇到的问题
解决yum install redhat-lsb遇到的问题 一、 背景:centos 7.2.1511 系统中没有lsb_release命令。 二、解决方法:在终端中输入:yum install -y redhat-lsb 三、遇到的问题如下: Loaded plugins: fastestmirror, langp
2016-10-18 12:57:12 16177
原创 Linux gdb 调试 openssl
一 、获取openssl 从官网上下载openssl,现在openssl项目组把openssl源码都放在github网站上托管。openssl源码地址:https://github.com/openssl/openssl。点击左上角的“Branch:master”选择自己的版本。我自己调试用版本是 openssl-OpenSSL_1_0_1c。 二、编译openssl
2016-09-30 17:13:27 3772 2
翻译 /crypto/objects/objects.txt 格式 举例说明
!Alias csor 2 16 840 1 101 3opensslcrypto/objects/objects.txt
2016-09-30 10:25:57 422
原创 解决crontab不能启动(二)
背景:crond不能定时启动脚本,很大一部分原因是因为脚本在运行中找不到脚本中可执行文件依赖的库或可执行文件的路径不对。
2016-08-18 00:12:21 3411
转载 路由器与交换机的差别
路由器就是连接两个以上个别网络的设备。 由于位于两个或更多个网络的交汇处,从而可在它们之间传递分组(一种数据的组织形式)。路由器与交换机在概念上有一定重叠但也有不同:交换机泛指工作于任何网络层次的数据中继设备(尽管多指网桥),而路由器则更专注于网络层。 路由器与交换机的差别,路由器是属于OSI第三层的产品,交换机是OSI第二层的产品。第二层的产品功能在于,将网络上各个电
2015-11-30 23:58:24 597
原创 解决cron不能启动脚本的问题
解决cron不能启动脚本的问题一、背景在开发过程中总是会需要系统cron服务启动我们自定义的服务。我们手动运行脚本,脚本中定义的服务就能运行。如果我们让cron服务来管理我们的脚本,有可能cron服务不能定时启动我们的脚本。二、解决方法在我们的脚本中加入我们服务需要的环境变量。1)方法1:我们需要把环境变量配置在/etc/profile 中。在centos环境中
2015-11-24 00:31:37 2554
Bulletproof SSL and TLS
2016-09-28
Ivan Ristic - Bulletproof SSL and TLS
2016-09-28
acl库 (advanced c library)
2012-05-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人