Ubuntu升级出现/boot空间不足解决 本文转载自以下地址:源地址经常升级Linux内核,导致更新时警告/boot分区空间不足。这是以为多次升级内核后,导致内核版本太多,清理一下没用的内核文件就行了。命令如下:zht@zht-Ubuntu:~$ dpkg -l 'linux-image-*' | grep '^ii'//或者:zht@zht-Ubuntu:~$ dpkg --get-selections |grep li
Hyperledger Fabric 1.0 快速部署 Hyperleger Fabric的快速部署是通过从Docker Hub上拉取已经部署好环境的镜像来完成的,由于在国内受到GFW的限制,所以安装过程很缓慢,甚至会发生失败,希望大家做好心理准备。下面我要开始表演了… …====================== 系统:Ubuntu 16.04 arm 64 环境: golang 1.7.4 docker-engine Fabric
小王的尴尬日常(四)--openssl 实现国密算法(签名和验签) 昨天呢,更新了加密和解密的实现,今天我们接着来签名和验签。 还是按照王氏惯例先说一下这个理论知识: 下列符号适用于本部分。 A,B:使用公钥密码系统的两个用户。 a,b: Fq中的元素,它们定义Fq上的一条椭圆曲线E。 2dA:用户A的私钥。 E(Fq): Fq上椭圆曲线E 的所有有理点(包括无穷远点O)组成的集合。 e:密码杂凑函数作用于消息M的输出值。
小王的尴尬日常(三)--Openssl 实现国密算法(加密和解密) 上一次讲了产生密钥,这次我们讲一下加密解密的实现。 先说一下加密解密的流程,一下这些内容都是从国密局发布的国密标准文档里面摘录出来的。大家可以去国密局的网站上自己下载。 下列符号适用于本部分。 A,B:使用公钥密码系统的两个用户。 a,b: Fq中的元素,它们定义Fq上的一条椭圆曲线E。 dB:用户B的私钥。 E(Fq): Fq上椭圆曲线E 的所有有理点(包括无穷远点O
小王的尴尬日常(二)---Openssl 实现国密算法(基础介绍和产生秘钥对) 国密非对称加密算法又称sm2,它是采取了ECC(曲线加密算法)中的一条固定的曲线,实际上就是ECC算法。 那么这次让我尴尬的是什么呢?我现在维护一个项目,里面包含了大量的加密算法,而且很多是自己实现的,其中ECC算法就有问题,现在打算用openssl进行替换,毕竟拿来主义。 但时让人尴尬的是openssl里面不包含sm2算法,所以我就要重新进行封装…. … 对于ECC算法我就不介绍了,网上关于它
小王的尴尬日常(一)--使用RSA公钥证书解密 最近接了一个活,要用rsa的公钥解密,这个公钥存储在公钥证书里面,这个公钥证书呢… 安装在了windows操作系统里。以下是讲解部分,如果不想看的直接跳跃到最末尾的代码部分。 公钥–>公钥证书–>公钥证书库(Windows) 我要是使用它呢,就要反向过来: 解密<–提取公钥<–找到公钥证书<–打开公钥证书库(Windows)当时我想这活没难度so easy, 可第一步就有点尴尬啊,先说这个公钥
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
Python https认证 先说一下我的环境,Python是2.7.13版本的,Python我用的话一直都用2.7版本的,没想到子版本里面也还有不同的地方。 接下来就说一说我这几天遇见的问题,Python ssl双向认证的问题;建立ssl的安全socket链接,ssl这个介绍的网上一抓一大把,Python来写的也是一抓一大把(客户端的、服务端的),我就不多说了。 我只说几个需要注意的点: (1)协议是一个坑,客户端和服务
c++ 关键字 typename 和 typedef 一下英文内容摘自MSDN,中文内容属于bz自己的理解 typename 通常在模板里用到,我们来讲讲它到底是个什么玩意 typename: Tells the compiler that an unknown identifier is a type.告诉编译器,这个未知的定义是个类型 typename identifier; Use this keyword only in
C++ 引用计数器 今天讲一个实用的东西,C++类的引用计数,不废话直接上代码;#ifdef WIN32#include <Windows.h>#else#include <atomic> #endifusing namespace std;class CCRefCounter{public: CCRefCounter(); ~CCRefCounter(){}; //增加引用计数;
ANS1编码详解(二)--编码规则 基本编码规则(BasicEncodingRules)ASN.1的基本编码规则定义了一种或多种把任意ASN.1 值表示成字节字符串的方法,缩写为BER。(当然还有其它的方法,但是BER是OSI中转换这些值的标准) 使用BER,一个ASN.1的值有三种编码方法,选择哪种取决于值的类型和值的长度是否已知。这三种方法是:简单定长编码,结构化定长编码,及结构化不定长编码。简单的non-string类型使
DLL弹出窗口 在windows上开发应用时候,交互界面是一个很基本的元素。我们经常是一个exe有一个交互界面,而有的时候需要dll弹出一个窗体以供用户去选择或者输入一些信息的。 这种时候怎么办?有以下四种可行性方案:1.用MFC或者ATL来编写dll;2.CreateWindows函数来创建一个窗体,然后show();3.新建一个类继承MessageBox类;4.在资源文件里添加窗体控件,这个方法我感觉已经跑偏
QT4.8.1 + VS2008 最近经常做政府相关的项目经常用vs2008,因为没有用到什么C++高级特性,所以C++11完全够用了。QT做界面还是比较方便的,而且它和标准库的兼容让我不得不赞一个。 好了,说了这么多的废话,咱们开搞。 首先要搭建一下编译环境,我们先安装VS2008,这个很简单“下一步”就可以了,记住了安装2008的时候一定要安装MSDN,超级方便(当然有的函数介绍有些落伍了)。 我们是QT+vs2008混合
ANS.1编码详解(一)----基础语法和数据类型 ANS.1是一种跨平台的编码格式,网上关于ANS.1协议的实现一抓一大把,openssl里面有ANS.1的实现,大家感兴趣的可以去看看。我们这里主要是讲讲ANS.1编码,这样大家看代码的时候更容易理解一些,它的组成有点类似xml和tlv有多层的嵌套。ASN.1语法遵循传统的巴科斯范式BNF风格. 最基本的表达式如下: Name ::= type . 表示为定义某个名称为Name的元素,它的类
VC中cl.exe命令使用方法 原地址:http://blog.csdn.net/memory_xj/article/details/3156781cl.exe所在的文件夹里面有一个批处理叫做 VSVAR32.BAT 首先运行它一次,你就可以用cl.exe来编译你的代码了。 CL.exe 是控制 Microsoft C 和 C++ 编译器与链接器的 32 位工具。编译器产生通用对象文件格式 (COFF) 对象
浅析 https 的安全保证原理 这些日子做一些CA证书相关的东西(csp),所以学习了很多相关知识,其中有一部分就是利用证书来进行https安全交互的知识。在这里做一个简单的梳理和总结吧。ca证书涉及的加密算法有很多:比如:用于加密的经典RSA,曲线加密ECC,还有仅仅在我国使用的一般是金融行业使用的SM2(俗称国密算法,这个算法在国际上是不被承认,当然我们貌似对此不介意。)还有用于生成指纹的:sha1算法(计算