- 博客(70)
- 资源 (5)
- 收藏
- 关注
原创 Linux下使用openssl的AES加密-CBC模式
最近需要用到AES加密,为了图方便就打算使用openssl自带的AES加密算法的API来实现。 主要用到了ECB和CBC两种加密模式。 ECB模式之前一篇已经写过了。这篇就写一下CBC模式。
2017-04-12 18:51:31
11376
1
原创 Linux下使用openssl的AES加密-ECB模式
最近需要用到AES加密,为了图方便就打算使用openssl自带的AES加密算法的API来实现。
2017-04-11 19:25:36
6628
原创 Linux下使用SEAL同态加密
SEAL 全称Simple Encrypted Arithmetic Library,是微软研究院提出的一种同态加密算法的实现方案,其最终结果是一个C++库,在程序中调用相关API,完成同态加密的功能。因为毕设要用到相关的内容,所以做了些调研。
2017-03-26 01:06:57
5677
2
原创 Linux下使用cpabe属性加密
cpabe 全称ciphertext-policy attribute-based encryption,是一种属性加密算法的实现方案。现在官方给出的源码可以在ubuntu上编译安装,不过我搭建的过程还是比较曲折。
2017-03-25 12:54:19
5164
原创 我的第一个全栈项目
最近一直没有更新,是因为干了件大事。奋战2个星期,实现了一个看上去还算不错的Node.js的WEB管理系统,和之前的练习项目比起来,功能更加强大,虽然界面看上去差不多。。。 之后的几天,我会陆续的剖析这个项目,就当是自己复盘一次,做个总结。先上链接 https://github.com/liuyueyi1995/Koa2-management-system 。
2017-03-24 16:55:35
2641
原创 docker安装PostgreSQL
内容简介在Ubuntu 16.04虚拟机中安装docker使用docker安装PostgreSQL完成端口映射使得外部机器可以访问虚拟机中的数据库
2017-03-10 19:14:10
30116
3
原创 Node实现数据库数据导入Excel
哎,好不容易写好了Python版本,为了以后便于集成到系统里又被要求用node实现一遍,任务要求还是没有变化,只是变了变语言,加了点额外小需求。这篇博客,就记录一下用node实现的过程。
2017-03-08 14:44:29
4379
原创 Python实现数据库数据导入Excel
之前已经使用SchemaSpy工具分析了数据库的结构,之后就可以比较方便的将数据从数据库导出到Excel等文件中,这次我选择使用Python来完成这个工作。
2017-03-06 18:53:47
6022
原创 SchemaSpy安装与使用详解
SchemaSpy是一个Java开发的开源的数据库文档生成工具。对于复杂数据库结构,可以直观的显示其中给个实体的对应关系,对于理解数据库的结构有很大的帮助。
2017-03-02 17:07:43
2531
原创 gulp-concat+uglify+cdnizer实现页面加载优化
之前一篇博客已经讲了gulp的基本用法,这一篇就开始实战了,现将这三个工具的概念和使用,以及一些实际操作的例子。
2017-02-23 15:26:45
1984
原创 gulp学习笔记
今天接到任务需要提高一个web应用项目的加载效率。前端使用了angular,在未经优化前,产生了“数量可观”的js和css文件,而且未经任何的压缩,使用的框架和第三方库(jQuery、angular、bootstrap等等)也不是从cdn加载,所以浏览器加载页面的时候花了很多时间,体验很差。所以现学了一下gulp,并打算使用gulp-cdnizer、gulp-concat、gulp-uglify完成这项工作。
2017-02-22 17:51:29
884
原创 Node实践总结6——多表查询
之前写过利用bookshelf和knex进行简单的数据库操作的方法。这一片主要是写如何进行多表查询。0 实际场景有需求才会有动力,如果基本的单表查询可以完成所有工作,就不会有多表查询什么事了。我的项目由于涉及用户、角色、权限等多个实体,要设计出合理的数据库表结构,则需要将实体、实体与实体间的关系分开,就必然涉及外键的问题,有外键就一定会出现联合查询或者嵌套查询。1 最终效果最终效果如下图 2 数据
2017-02-21 18:10:20
3417
原创 Cryptdb学习笔记(3)——源码分析
这段时间,把cryptdb的源码过了一遍,把自己的一些笔记整理了一遍,和大家分享一下。基本结构Cryptdb文件目录结构如下: 我认为核心部分在main文件夹下,主要是一些SQL指令的处理程序,因为Cryptdb核心就是把常规的SQL语句改写(rewrite)成加密后仍然能识别的形式。
2017-02-17 18:33:11
3247
11
原创 Cryptdb学习笔记(2)——安装使用
安装我所使用的操作系统是Ubuntu12.04。Cryptdb的代码托管在github上 https://github.com/CryptDB/cryptdb ,clone下来之后,运行ruby写的安装脚本,这里需要注意运行脚本的时候第一个参数要输入cryptdb的安装路径。git clone https://github.com/CryptDB/cryptdbcd cryptdbsudo ./
2017-02-06 17:31:47
4739
原创 Cryptdb学习笔记(1)——简介
Cryptdb是MIT的计算机科学和人工智能实验室(CSAIL)的一个研究项目,其性质可以理解为数据库代理,旨在保护数据库数据。通过随机性加密、确定性加密、同态加密、保序加密等手段,实现了在密文层级处理SQL请求的功能。
2017-02-06 16:47:54
4568
原创 Cryptdb学习笔记(0)——初识
终于要开始忙毕设了,因为论文选题和Crytdb有关,所以趁着寒假阅读了相关的论文并实际运行了Cryptdb的代码。因为我也才刚开始接触Cryptdb几个星期,还不能够有很深入的了解,所以把我对它的理解跟大家分享一下,不一定准确,如果有相关方面的前辈还请多多指正。
2017-02-06 14:22:00
1532
1
原创 Dredd笔记
Dredd可以用于测试所写的web api与实际运行的系统是否一致,可以搭配API Blueprint一起使用。通过阅读Dredd的官网,把自己的理解写一写,还希望得到大家的指正。
2017-01-16 16:03:13
4162
原创 Blueprint+Dredd+Gitlab-CI 实现持续集成
Blueprint+Dredd+Gitlab-CI 这一套工具链用于完成Web API的编写、上传、测试、集成。Blueprint的概念和语法另一篇博客已经有说明了,Dredd的使用我也写了一篇博客,所以这一篇主要讲Gitlab-CI的搭建过程以及如何将三者贯通使用。
2017-01-12 18:11:58
1395
原创 Node实践总结5——AJAX
ajax是Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)的简称,是一种比较流行的加载页面的手法,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
2017-01-12 13:54:06
315
原创 API Blueprint笔记
API Blueprint,是一个用于编写web api的规范,采用类似于markdown的语法,语法本身没什么难点,记住几个关键词,也就差不多了。
2017-01-11 11:38:44
4673
原创 Node实践总结3——routes
routes一个传统的网站往往会有许多路径(/,/login,/user),不同的路径对应不同的页面,有不同的处理逻辑,涉及表单的页面往往还会同时存在get和post两种形式的请求,其往往也承担了核心的业务。
2017-01-10 12:33:53
1240
原创 Node实践总结2——views
views既然是写web应用,自然少不了网页了。所以我打算先写视图的部分,这一块相较其他部分也更简单一些。网页模板koa2内建支持ejs和jade(由于版权原因已经更名为pug)网页模板,给开发带来了一些便利。
2017-01-10 11:25:31
781
原创 Node实践总结1——快速开始
前言学习node也有一段时间了,本来打算像之前那样通过总结教程和相关的书籍来归纳知识,但是后来觉得node版本演进太快,很多写成书出版的东西多少已经有些脱离实际了,所以最近打算把自己动手开发的一个node工程做一些总结,从实践上,记录自己开发中遇到的问题分享出来。项目地址 https://github.com/liuyueyi1995/koa-sentry-bookshelf-oa 。
2017-01-10 11:02:27
364
原创 sentry使用方法
1 新建项目首先在sentry的主界面上新建团队(New Team),新建项目(New Project)。 之后选择要使用的语言或者框架,会得到一个key,在工程中使用这个key,就可以让程序运行中产生的错误提交到sentry平台。2 使用方法以node的koa框架为例,const Koa = require('koa');const Raven = require('raven');Rave
2017-01-03 10:49:59
3951
原创 sentry搭建过程
0 简介sentry是一个强大的分布式日志收集平台,图形化程度很高,可以帮助我们直观的发现当前部署的系统存在哪些问题。1 准备工作官方提供了两种部署方案dockerpython处于操作方便的考虑,我选择了docker。这种方法需要先安装docker和docker-compose1.1 安装docker这一部分比较简单,不过为了过程的完整性,还是把它列出来。 docker需要安装在内核版本大于
2016-12-26 18:48:13
8133
转载 babel的使用
因为目前JS的标准更新很快,框架众多,许多新特性还不被支持,也考虑到向后兼容的问题,很多时候需要将采用了新特性的代码转换为旧标准可以执行的代码,babel就是这样一个神奇的工具。所以转载一篇对我帮助很大的文章分享给大家《找回 Node.js 里面那些遗失的 ES6 特性》。
2016-12-26 11:59:50
457
原创 knex.js笔记
knex.js是bookshelf框架的基础,其核心是query builder。这篇文章参考自Knex.js官网,翻译并总结了该框架的方法。
2016-12-21 15:03:44
37957
1
转载 jade语法
使用node的过程中,对比了ejs和jade两个页面模板,感觉ejs虽然更类似与html的语法,但是书写过程中远不如jade来得简练,所以转载这篇文章来做参考。
2016-12-13 15:43:45
889
原创 node中遇到的坑
由于工作需要,最近又在倒腾node,找了几本书来看,这段时间把相关的笔记整理一下,再发上来,先把过程中遇到的一些坑记录下来,今后再系统整理。
2016-12-12 15:07:07
1439
原创 screen命令总结
系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份、ftp 传输等等。通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为它们执行的时间太长了。必须等待它们执行完毕,在此期间不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了,screen命令可以解决这个问题。
2016-12-09 14:44:59
588
原创 iptables总结
1 iptables功能概述iptables会对网络数据包进行匹配,符合条件的,则根据相应的处理动作来处理。 防火墙,限流限速等功能都可以用iptables完成。t
2016-12-08 18:37:39
712
原创 jQuery学习笔记(8)——插件进阶
jQuery插件进阶之前看书写过jQuery插件的内容,但是实际使用和看大神的代码的过程中,才发现jQuery插件的博大精深。
2016-11-29 00:05:04
322
原创 docker自学笔记(0)——基本概念
docker基本概念docker是一个开源的引擎,用于创建一个轻量级、可移植的容器,可以将本地的容器批量的部署到生产环境中。
2016-11-29 00:03:53
322
原创 Linux 网络相关的命令
网络相关的命令最近的工作,涉及网络的操作比较多,由于之前使用不多,所以很不熟练,这里就总结一下。0 网络服务网络服务是在/etc/init.d/network 重启或开启或停止可在服务后加上,restart | start | stop 例:/etc/ini.d/network restart 或 service network restart1 ifconfig2 route3 ip4 i
2016-11-29 00:02:40
382
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人