自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

阿艾辣悟叩德

不积跬步无以至千里,不积小流无以成江海。

  • 博客(34)
  • 资源 (10)
  • 收藏
  • 关注

转载 Ubuntu升级出现/boot空间不足解决

本文转载自以下地址:源地址经常升级Linux内核,导致更新时警告/boot分区空间不足。这是以为多次升级内核后,导致内核版本太多,清理一下没用的内核文件就行了。命令如下:zht@zht-Ubuntu:~$ dpkg -l 'linux-image-*' | grep '^ii'//或者:zht@zht-Ubuntu:~$ dpkg --get-selections |grep li

2017-06-01 08:56:08 667

原创 Hyperledger Fabric 1.0 快速部署

Hyperleger Fabric的快速部署是通过从Docker Hub上拉取已经部署好环境的镜像来完成的,由于在国内受到GFW的限制,所以安装过程很缓慢,甚至会发生失败,希望大家做好心理准备。下面我要开始表演了… …====================== 系统:Ubuntu 16.04 arm 64 环境: golang 1.7.4 docker-engine Fabric

2017-04-16 12:52:09 3066

原创 小王的尴尬日常(四)--openssl 实现国密算法(签名和验签)

昨天呢,更新了加密和解密的实现,今天我们接着来签名和验签。 还是按照王氏惯例先说一下这个理论知识: 下列符号适用于本部分。 A,B:使用公钥密码系统的两个用户。 a,b: Fq中的元素,它们定义Fq上的一条椭圆曲线E。 2dA:用户A的私钥。 E(Fq): Fq上椭圆曲线E 的所有有理点(包括无穷远点O)组成的集合。 e:密码杂凑函数作用于消息M的输出值。

2017-03-14 17:14:12 7729 7

原创 小王的尴尬日常(三)--Openssl 实现国密算法(加密和解密)

上一次讲了产生密钥,这次我们讲一下加密解密的实现。 先说一下加密解密的流程,一下这些内容都是从国密局发布的国密标准文档里面摘录出来的。大家可以去国密局的网站上自己下载。 下列符号适用于本部分。 A,B:使用公钥密码系统的两个用户。 a,b: Fq中的元素,它们定义Fq上的一条椭圆曲线E。 dB:用户B的私钥。 E(Fq): Fq上椭圆曲线E 的所有有理点(包括无穷远点O

2017-03-13 16:45:57 5690 3

原创 小王的尴尬日常(二)---Openssl 实现国密算法(基础介绍和产生秘钥对)

国密非对称加密算法又称sm2,它是采取了ECC(曲线加密算法)中的一条固定的曲线,实际上就是ECC算法。 那么这次让我尴尬的是什么呢?我现在维护一个项目,里面包含了大量的加密算法,而且很多是自己实现的,其中ECC算法就有问题,现在打算用openssl进行替换,毕竟拿来主义。 但时让人尴尬的是openssl里面不包含sm2算法,所以我就要重新进行封装…. … 对于ECC算法我就不介绍了,网上关于它

2017-03-01 18:56:08 15155 15

原创 小王的尴尬日常(一)--使用RSA公钥证书解密

最近接了一个活,要用rsa的公钥解密,这个公钥存储在公钥证书里面,这个公钥证书呢… 安装在了windows操作系统里。以下是讲解部分,如果不想看的直接跳跃到最末尾的代码部分。 公钥–>公钥证书–>公钥证书库(Windows) 我要是使用它呢,就要反向过来: 解密<–提取公钥<–找到公钥证书<–打开公钥证书库(Windows)当时我想这活没难度so easy, 可第一步就有点尴尬啊,先说这个公钥

2017-01-17 14:58:51 3377

转载 python2.7_d lib 无法打开

刚才用VC掉Python的脚本,Debug模式下结果报了一个错误是:‘python2.7_d lib 无法打开’ 然后上网上搜了一下,有一个哥们出了一个招数就是屏蔽Python调用库的Debug模式: 修改Pythonconfig.h,按下面的示例修改。... .../* For an MSVC DLL, we can nominate the .lib files used by exten

2017-01-10 11:22:08 2346

原创 Python https认证

先说一下我的环境,Python是2.7.13版本的,Python我用的话一直都用2.7版本的,没想到子版本里面也还有不同的地方。 接下来就说一说我这几天遇见的问题,Python ssl双向认证的问题;建立ssl的安全socket链接,ssl这个介绍的网上一抓一大把,Python来写的也是一抓一大把(客户端的、服务端的),我就不多说了。 我只说几个需要注意的点: (1)协议是一个坑,客户端和服务

2017-01-06 14:37:42 5012

原创 c++ 关键字 typename 和 typedef

一下英文内容摘自MSDN,中文内容属于bz自己的理解 typename 通常在模板里用到,我们来讲讲它到底是个什么玩意 typename: Tells the compiler that an unknown identifier is a type.告诉编译器,这个未知的定义是个类型 typename identifier; Use this keyword only in

2016-12-15 16:59:15 955 1

原创 C++ 引用计数器

今天讲一个实用的东西,C++类的引用计数,不废话直接上代码;#ifdef WIN32#include <Windows.h>#else#include <atomic> #endifusing namespace std;class CCRefCounter{public: CCRefCounter(); ~CCRefCounter(){}; //增加引用计数;

2016-12-14 17:16:56 4378

转载 ANS1编码详解(二)--编码规则

基本编码规则(BasicEncodingRules)ASN.1的基本编码规则定义了一种或多种把任意ASN.1 值表示成字节字符串的方法,缩写为BER。(当然还有其它的方法,但是BER是OSI中转换这些值的标准) 使用BER,一个ASN.1的值有三种编码方法,选择哪种取决于值的类型和值的长度是否已知。这三种方法是:简单定长编码,结构化定长编码,及结构化不定长编码。简单的non-string类型使

2016-12-13 14:22:46 7770

原创 DLL弹出窗口

在windows上开发应用时候,交互界面是一个很基本的元素。我们经常是一个exe有一个交互界面,而有的时候需要dll弹出一个窗体以供用户去选择或者输入一些信息的。 这种时候怎么办?有以下四种可行性方案:1.用MFC或者ATL来编写dll;2.CreateWindows函数来创建一个窗体,然后show();3.新建一个类继承MessageBox类;4.在资源文件里添加窗体控件,这个方法我感觉已经跑偏

2016-12-13 11:17:32 3270

原创 QT4.8.1 + VS2008

最近经常做政府相关的项目经常用vs2008,因为没有用到什么C++高级特性,所以C++11完全够用了。QT做界面还是比较方便的,而且它和标准库的兼容让我不得不赞一个。 好了,说了这么多的废话,咱们开搞。 首先要搭建一下编译环境,我们先安装VS2008,这个很简单“下一步”就可以了,记住了安装2008的时候一定要安装MSDN,超级方便(当然有的函数介绍有些落伍了)。 我们是QT+vs2008混合

2016-12-13 09:51:16 1972

转载 ANS.1编码详解(一)----基础语法和数据类型

ANS.1是一种跨平台的编码格式,网上关于ANS.1协议的实现一抓一大把,openssl里面有ANS.1的实现,大家感兴趣的可以去看看。我们这里主要是讲讲ANS.1编码,这样大家看代码的时候更容易理解一些,它的组成有点类似xml和tlv有多层的嵌套。ASN.1语法遵循传统的巴科斯范式BNF风格. 最基本的表达式如下: Name ::= type . 表示为定义某个名称为Name的元素,它的类

2016-12-12 16:18:14 9440

转载 VC中cl.exe命令使用方法

原地址:http://blog.csdn.net/memory_xj/article/details/3156781cl.exe所在的文件夹里面有一个批处理叫做 VSVAR32.BAT 首先运行它一次,你就可以用cl.exe来编译你的代码了。 CL.exe 是控制 Microsoft C 和 C++ 编译器与链接器的 32 位工具。编译器产生通用对象文件格式 (COFF) 对象

2016-12-02 15:20:01 796

原创 浅析 https 的安全保证原理

这些日子做一些CA证书相关的东西(csp),所以学习了很多相关知识,其中有一部分就是利用证书来进行https安全交互的知识。在这里做一个简单的梳理和总结吧。ca证书涉及的加密算法有很多:比如:用于加密的经典RSA,曲线加密ECC,还有仅仅在我国使用的一般是金融行业使用的SM2(俗称国密算法,这个算法在国际上是不被承认,当然我们貌似对此不介意。)还有用于生成指纹的:sha1算法(计算

2016-10-22 14:28:10 585

原创 csp插件的安装

前两周,公司的某销售经理和另一个公司某高管一起拍脑袋提出来一个需求。这不是最尴尬的,最尴尬的是这群人一直没搞懂到底要实现个什么东西。 需求不明确不说,要点资料客户还藏着掖着不给,tnn的,我不由得怀疑,项目经理除了把问题变得更复杂外还有个jb用?最后这群爷好不容易弄清楚 要做一个csp插件。 ==================================背景分割线============

2016-09-27 10:22:14 3333

原创 string通用函数

这篇博文一个月前就想写了,但是拖到现在才有时间。 起因是要做一个公司的项目,这个项目是用MFC写的,其实底层实现大多数都是用的标准库,但是让我比较尴尬的是我不会MFC,于是就想把界面和底层剥离,用QT来设计界面。 别的还好说,最蛋疼的就是这个项目里用大量的CString变量以及相关函数,没办法我就替换这些函数,这就是背景,废话少说,直接上代码://声明namespace CStirng2Str

2016-09-26 16:31:17 638

转载 vs 证书签名

在VS2005或VS2008安装后发现路径**VC7\Common7\Tools\Bin\下有许多小工具,我对带有Cert的文件比较感兴趣。经过研究,发现是有关证书和签名的,当然,该证书未被证书认证机构认可。下面列出这些工具和我的使用心得。1。Makecert.exe ---证书创建工具2。Cert2Spc.exe ---发行者证书测试工具3。Signcode.exe ---文件签名工

2016-09-09 17:12:12 2406

原创 tinylog

最近闲来无事写了一个简单的log库,支持Unix和Windows两个版本; 里面调用了tinyxml,本人比较懒,直接把它加载到了工程里面; 废话不过说直接上代码: 第一部分:是功能函数的头文件,文件名(CLogEx.h)#ifdef CTLOGEX_EXPORTS#define CTLOGEX_API __declspec(dllexport)#else#define CTLOGEX_

2016-08-16 20:58:47 856

原创 算法实战(三)--求K-Pairs

题目连接如下:求K-Pairs这道题考察的是堆排序(直接上代码):#include<algorithm>#include<cstdio>#include<vector>using namespace std;struct element{ int sum ; unsigned int x; unsigned int y;}*pelement;static bool c

2016-07-18 12:12:03 838

原创 算法实战(二)--求加法

书接上回,这回的题目是求加法; 说白了就是让你自己去实现加法,因为不予许用+,-号啊亲; 这道题考点在于你对位运算的掌握,实际上二进制的加减乘除都是位运算,我想大家都会想到用位运算实现,但这题有个误区就是—不要想的太复杂;位运算符号最基础的几个符号:&(与),|(或),~(非),^(异或),>>\<<(左右位移);然后我们说一下“+”怎么用位运算实现: 首先,我们考虑最原始的问题1 + 1(二

2016-07-14 13:52:58 642

原创 算法实战(一)--猜数字

首先给大家推荐个网站叫LeetCode Online,这是一个刷算法的网站; 今天lz做了一道题,这是原题的链接,猜数字; 题目很简单哈,举个例子 人家先选定个数字,比如说6,然后让你从1-10猜出来; 首先它给你一个函数,int guess(n); 你调用这个函数,如果n比6大它就返回1,如果n比6小就返回-1,如果n等于六就返回0;这题我看见后第一个想到的就是二分法:int binar

2016-07-14 12:16:34 3994

原创 爬虫实战--糗事百科

闲来无聊,在网上按照教程写了一个Python爬虫,就是窃取数据然后保存下来爬虫实战–糗事百科。从糗百上爬取段子,然后输出到console,我改了一下保存到了数据库。 不扯没用的,直接上代码:这是爬取得部分#!/usr/bin/python# -*- coding:utf-8 -*-import urllibimport urllib2import reimport threadimpo

2016-07-11 19:23:51 530

原创 Python 异常处理

Python的异常处理常用的有以下四个关键字:tryexceptraisefinally这又很神似C++,只不过catch被except替换掉了;Python 所有的异常类型都是继承自一个内置类:Exception异常有以下几种用法:一、最基本的异常处理try: <code>except Exception: <code>这是最简单的,也是最保险的,只要发生异常我都抓到,但是缺点也很明显,你不知具体类型。

2016-07-01 14:01:34 711

原创 WINAPI Http、Https 服务器操作(一)

微软的api中用于操作http的函数有如下:InternetOpen; //打开代理服务器InternetConnect; //连接服务器HttpOpenRequest;//创建要请求的对象HttpSendRequest;//发送请求HttpQueryInfo;//查询请求反馈结果InternetCloseHandle;//关闭句柄(https://msdn

2016-04-05 20:41:53 2908

原创 Linux之设备操作

Linux系统的基本思路就是:一切都是文件,无论是里面存储的数据还是外接设备都是文件。因此操作每一个设备都会有对应的文件描述符号,我们可以像操作文件一样操作它们,但注意与操作文件还是有区别的。直接操作设备的函数:_return int open(_in char* path, _in int flag); _return int write(_in int fd, _in ch

2016-03-29 09:39:53 1138

转载 pthread_mutex_t之注意事项

这篇文章专门提醒那些习惯了在Windows中开发的,vc++中的互斥锁(criticalsection)是属于嵌套锁,在Linux中要去设置其对应属性。1. 互斥锁创建有两种方法创建互斥锁,静态方式和动态方式。POSIX定义了一个宏PTHREAD_MUTEX_INITIALIZER来静态初始化互斥锁,方法如下:pthread_mutex_t mutex=PTHREAD_

2016-03-23 10:09:33 799

原创 线程的那点事

刚刚写完一个简单的线程池,有很多需要总结的,好废话不多说,开整。 vc下新建一个win32位控制台工程:int main(){ printf_s("HELLO WORLD\n");}单击F5编译,在控制台输出 HELLO WORLD ,这个过程就是一个进程从创建到结束的过程。进程的官方定义是:一定的资源和定义在上面的一系列操作,进程运行的过程就是资源的调用和分配的过程。但实际上真正执行这

2015-07-14 23:47:55 683

原创 线程池的简单实现

编写一个简单的线程池程序(本人在此郑重声明:本文仅供菜鸟新手参考,大神请单击屏幕左上角那个“X”状按钮,谢谢配合。)编译环境:viusal C++ 2010先说一下线程池:这个池子的作用就是减小用于创建和销毁线程的开销,简单的说就是先创建好一队线程(初始状态为挂起),然后有任务的时候就把这些线程唤醒,没任务的时候再挂起,如果任务过多的话就新建一些线程,如果空闲线程过多就销毁线程。 听起来so ea

2015-07-12 20:20:32 896

原创 AJAX总结

Ajax原理一、Ajax简介1、Ajax=Asynchronous JavaScript and XML(异步的JavaScript和XML),是一种在不重新加载整个网页的情况下,实现页面局部更新的艺术,它不是一种编程语言,而是一种使用现有标准的新方法。 2、不使用Ajax的情况下,如果需要更新内容,必须重载整个页面;Ajax通过在后台与服务器进行进行少量交互实现网页的异步更新。使用Ajax的例子

2015-04-07 21:25:12 531

原创 易混淆知识点总结

一、静态方法和静态代码块1、静态代码块是在项目启动的时候自动执行的代码块,且只被执行一次,不需要调用,常用来执行类属性的初始化;      静态方法是用static修饰的方法,不需要创建实例就可以用类名.方法名的方法进行调用。2、静态方法中只能调用本类中的静态成员(包括静态变量和静态方法),而不能调用非静态成员。      原因是:非静态的成员变量只能在创建实例对象之后才能被调用,

2015-03-29 16:00:57 825

原创 Struts_1

一、Struts的开发步骤:(手动)1、  创建web工程,创建web.xml配置文件进行配置2、  创建action实现类,推荐使用继承ActionSupport类的方法,该类中的execute是默认的实现方法,也可以自定义其他方法,在访问时进行动态调用。3、  在struts.xml配置文件中对action进行配置,主要的配置项如下:在该配置文件中的属性基本是以键值对的形式

2014-08-04 22:43:58 880

原创 struts集合类型转换

一、struts中集合类型的转换在struts中支持的集合类型有list、map和set,利用这三种集合类型可以保存表单提交的数据,尤其是多个相同类型的数据,如在客户端将一个含有表格的表单提交到服务器并保存到数据库中。图1.1如图1.1所示,每一行都是一个学生对象,将这样一组数据提交到服务器并保存到数据库中时,服务器端就可以使用集合对象接受客户端提交的数据了。下面以上图中的表单

2014-08-04 21:56:19 937

ocx 控件--测试版本

ocx测试

2016-12-09

ocx 测试工具

ocx 测试工具

2016-11-17

开发工具esim

esim

2016-11-09

Cryptographic Provider Development Kit

You must uninstall previous Windows CNG SDK instances before installing this version. By default, the kit will install itself on "%SYSTEMDRIVE%\Program Files\Windows Kits\8.0\Cryptographic Provider Development Kit" on x86 platforms and "%SYSTEMDRIVE%\Program Files(x86)\ Program Files\Windows Kits\8.0\Cryptographic Provider Development Kit" on 64-bit platforms. We highly recommend that you have your machine fully patched through Microsoft Update before beginning setup.

2016-10-21

智能卡安全技术

关于智能卡开发中所应用的加密技术的介绍

2016-10-10

psck 公钥证书标准(英文版)

rsa 国际公钥证书标准,全英文的

2016-10-09

国密算法详解

国密sm2算法的详细介绍。

2016-10-09

ultraios_name

ultraiOS安装包

2016-08-15

JDBC数据库连接

此文为本人学习完JDBC后总结的相关知识点,偏理论,含部分示例代码。

2015-10-10

空空如也

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

TA关注的人

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