C语言 AES 加密
加密密码硬编在程序中,有很大的安全隐患 (adsbygoogle = window.adsbygoogle || []).push({}); 使用C 或C++ 进行接口加密,可以大大降低被破解的可能性. aes.h 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152#ifndef _AES_H_#define _AES_H_#include <stdint.h>#include <string.h>#include <stdlib.h>#include "base64.h"// #define the macros below to 1/0 to enable/disable the mode of operation.//// CBC enables AES128 encryption in CBC-mode of operation and handles...
C++报错Undefined symbols for architecture x86_64
Undefined symbols (adsbygoogle = window.adsbygoogle || []).push({}); 在开发NDK 使用C++ 编写代码时,使用AES 加密时,在Xcode 提示Undefined symbols因为在使用的地方使用的是C++ ,面AES您可能使用的是C语言. 你可以创建一个.hpp文件添加如下 123456789101112#ifndef _AES_HPP_#define _AES_HPP_#ifndef __cplusplus#error Do not include the hpp header in a c project!#endif //__cplusplusextern "C" {#include "aes.h"}#endif //_AES_HPP_ C++ 与C语言有语法上的不同.
Ubuntu远程连接MySQL(connectionrefused)解决方法
一、判断ubuntu是否开启防火墙 (adsbygoogle = window.adsbygoogle || []).push({}); sudo ufw status 开放防火墙3306端口 sudo ufw allow 3306 二、查看3306端口是否打开注意:红色框框表示3306绑定的ip地址–>未修改前为:127.0.0.1:3306–>即mysql默认绑定localhost,远程访问不了*如果是绑定了127.0.0.1则继续看第三步,否则请跳过第三步 三、修改mysql配置文件,将bind-address = 127.0.0.1注释,开放所有连接 sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 四、通过telnet尝试连接mysql telnet your-remote-ip-address 3306 如果不能连通,继续下一步 五、将root用户授权给所有连接step1:进入mysqlstep2:法一>改表法:进入mysql数据库,查看里面user表,搜索User=...
Linux 每分钟、每小时、每天、每周、每月、每年定时执行
定时任务 (adsbygoogle = window.adsbygoogle || []).push({}); 1234567sudo service cron reloadsudo service cron restartcrontab -ecrontab -l 每五分钟执行 */5 * * * * 每小时执行 0 * * * * 每天执行 0 0 * * * 每周执行 0 0 * * 0 每月执行 0 0 1 * * 每年执行 0 0 1 1 * Linux下crontab的使用 1.作用 使用crontab命令可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户。 2.格式 crontab [-u user] {-l | -r | -e} 3.主要参数 -e:执行文字编辑器来设定时程表,内空的文字编辑器是vi -r:删除目前的时程表 -l列出目前的时程表。 Crontab文件的格式为”M H D m d cmd”。其中,M代表分钟(059)...
ubuntu python 爬虫定时运行
1)输入crontab -e命令,根据提示直接在当前cron task文本最后面插入如下命令(记得回车): echo “Hello world!” 保存退出,并通过crontab -l查看定时任务创建成功。 (adsbygoogle = window.adsbygoogle || []).push({}); 2、然后等待,若干分钟后发现屏幕并未输出”Hello world!”怎么回事?! 1)刚开始怀疑是cron服务没有启动,遂执行: sudo service cron status 发现cron服务是running的,排除; 2)继而怀疑是任务文件创建后未能被系统及时get到,因而执行: sudo service cron restart 重启cron后问题依旧,排除; 3)于是进一步查看cron运行日志(/var/log/cron.log),但是并未找到相关文件,原因是ubuntu默认没有开cron日志,执行命令: sudo vim /etc/rsyslog.d/50-default.conf 找到cron.log相关行...
Xcode开发JNI NDK
平时在开发中,或多或少都会用到JNI方面的技术,比如我们项目中,消息的加密和解密就是通过C来实现的,然后打包为.so动态库,并提供Java接口供应用层调用,这么做的目的主要就是为了提供应用的安全性,防止被反编译后被分析加密的逻辑。接下来就要介绍JNI和NDK的区别,怎样创建一个项目开发JNI。 (adsbygoogle = window.adsbygoogle || []).push({}); JNI与NDK JNI Java Native Interface,即Java本地接口,使用JNI可以使得Java与本地其他类型语言(如C、C++)交互。JNI是 Java调用Native语言的一种特性,JNI是属于Java的,与 Android无直接关系。 NDK Native Development Kit,是Android的一个工具开发包。NDK是属于Android的,与Java并无直接关系,只是通过NDK可以快速方便的使用JNI,开发C、C++动态库。 ##开发JNI 开发JNI,一般都有两种途径: Java项目直接引用生成好的动态库,动态库...
nginx 配置文件说明
【1】默认配置文件安装完路径默认为:/usr/local/nginx/conf/nginx.conf (adsbygoogle = window.adsbygoogle || []).push({}); 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid lo...
ubuntu 16.04 安装 Hexo
简单部署Hexo (adsbygoogle = window.adsbygoogle || []).push({}); 本文所介绍的是新装完系统的ubuntu 还没有安装任何软件 首先安装noejs,Ubuntu源中的nodejs时旧版本,所以需要在安装后更新nodejs sudo apt-get install nodejs sudo apt install nodejs-legacy sudo apt install npm 更换成淘宝的镜像,否则非常慢 sudo npm config set registry https://registry.npm.taobao.org 可以通过 sudo npm config list 查看是否生效 安装更新版本的工具N sudo npm install n -g 更新版本 sudo n stable 可以看到有 installed:版号,说明更新成功 安装hexo sudo npm install -g hexo hexo官网 hexo -s 是调试方式运行,不建议使用 nohu...
Mac OS X 开启原生自带虚拟内存盘(Ramdisk)
虚拟内存盘是通过软件将一部分内存(RAM)模拟为硬盘来使用的一种技术。 由于内存有高达数 GB 每秒的速度,模拟成硬盘在适当情景下使用,会极大的增强系统性能,并且起到保护硬盘和隐私的作用。 (adsbygoogle = window.adsbygoogle || []).push({}); Mac OS X 是 Unix 类型系统,原生就支持用命令行创建Ramdisk。所以可以省去了买 iRamdisk、tmpDisk 这类鸡肋软件。 如果细心按照本教程一步步的模仿,那么很容易就可以创建一个开机自动创建的 Ramdisk 1、 打开 Dashbord,找到实用工具中的脚本编辑器(10.10中叫这个名字)。输入以下内容: 1234567891011121314do shell script "if ! test -e /Volumes/\"Ramdisk\" ; thendiskutil erasevolume HFS+ \"RamDisk\" `hdiutil attach -nomount ram://2...
Python 打包 spider
python 打包Spider (adsbygoogle = window.adsbygoogle || []).push({}); 使用 pyinstaller 打包 在网上搜索到最多的是用Pyinstaller打包Scrapy项目问题解决!!! 可是在mac os 上,不可以用,mac 上打包,只能打 unix 可执行文件 ,或者 app ,以下以huaban项目为例(本人实际项目不是这一个,huaban只是从网上找的) 1234567891011121314./root //主目录名,以root 代替├── dist // 生产目录├── build // 编译目录├── huaban // scrapy项目 │ ├── spiders│ │ ├── huanbanspider.py//spider文件 │ ├── items.py │ ├── middlewares.py ...
