最常见加密方式和Python实现
前言 我们所说的加密方式,都是对二进制编码的格式进行加密的,对应到Python中,则是我们的Bytes。 所以当我们在Python中进行加密操作的时候,要确保我们操作的是Bytes,否则就会报错。 将字符串和Bytes互相转换可以使用encode()和decode()方法。如下所示: # 方法中不传参数则是以默认的utf-8编码进行转换
In [1]: '南北'.encode()
Out[1]: b'\xe5\x8d\x97\xe5\x8c\x97'
In [2]: b'\xe5\x8d\
string和StringBuilder的区别
string 是 System.String 的别名 。 StringBuilder 适用于对一个字符串进行频繁的变更操作,因为其效率要比string高一些。 当一个string 变量的值发生变化时,需要在内存中新分配一块区域,存放新的值,string变量再指向新的值,旧的string变量值会被系统垃圾回收器回收掉。 StringBuilder变量的值发生变化时,只是在原有的值区域内进行了变化,并没有新分配区域,变量的指针也不用发生变化,所有不用改变变量的指针,所以速度会相对快一些。
A. Office Keys (from Codeforces Round #424 (Div. 1, rated, based on VK Cup Finals) )
1 #include <iostream>
2 #include <stdio.h>
3 #include <string.h>
4 #include <algorithm>
5 using namespace std;
6
7 int a[150000];
8 int b[150000];
9 int dp[1005][1005];
10 //dp[i][j] 前i个人从前j个药匙中到达终点的最小时间
11
12 int main()
13 {
Ubuntu18.04 Desktop Entry
1.Desktop Entry 是什么? 我们都知道,在Windows里软件在安装的时候都会询问是不是要在开始菜单和桌面创建快捷方式,这样就不用在使用软件的时候去安装目录启动,而是直接去开始菜单点击相应的软件快捷方式即可。在Linux中也有类似的功能:Desktop Entry文件,Linux GNOME等桌面桌面系统就是使用Desktop Entry文件来描述程序的启动与配置信息。 我这里使用的Ubuntu18.14(前两天刚发布就装上了,比起16.04漂亮了不少啊,哈哈),使用下面的命令c
ubuntu 16.04 配置sshd
1)后台安装ssh server sudo apt-get install openssh-server 2)启动sshd sudo service ssh start 3)设置开机自动启动 sudo sysv-rc-conf 选择ssh在level 2,3,4,5上都使能。如下图 4)配置root也可以登陆。 sudo vim /etc/ssh/sshd_config 讲其中的【PermitRootLogin without-password】修改为【PermitRootLogin yes】
BZOJ1001: [BeiJing2006]狼抓兔子【最短路】
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1001 1001: [BeiJing2006]狼抓兔子 Time Limit: 15 Sec Memory Limit: 162 MB Submit: 27684 Solved: 7127 Description 现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的, 而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形: 左
下载一个新的app之后,如果分析、鉴赏?
一直对新的事物还是比较好奇的,所以希望以后每隔几天就下载一个app,去体验,但是之前体验的时候,都是大概看看功能、竞品分析、流畅度等等,却没有一个完整的方法论,所以,这篇文章就是总结一下更为具体的方法论去参照,这样,才会有更多、更深刻的理解。
生成树计数及应用 Matrix-Tree
例:给定一个图,图上每条边是红色或蓝色,求恰有 k 条红边的生成树个数. n≤50. Matrix-Tree定理,对于限制条件可以利用多项式,把红边边权设为 X,蓝边为1. 最后求行列式得到的多项式中 Xk的系数就是答案.同样这也是利用了边权乘积的那个推广. 至于多项式情况下不方便高斯消元的问题.通过代入具体的数插值求多项式就可以解决. BZOJ 5297 SPOJ 104 https://www.cnblogs.com/zj75211/p/8039443.html
1.2 文件上传之解析漏洞
浅谈文件解析及上传漏洞 文件解析漏洞 解析漏洞主要是一些特殊文件被iis、Apache、Nginx等服务在某种情况下解释成脚本文件格式并得以执行而产生的漏洞。 iis 5.x/6.0解析漏洞 iis6.0解析漏洞主要有以下三种: 1. 目录解析漏洞 /xx.asp/xx.jpg 在网站下创建文件夹名字为.asp、.asa的文件夹,其目录内的任何扩展名的文件都被iis当做asp文件来解析 并执行。因此只要攻击者可以通过该漏洞直接上传图片马,并且可以不需要改后缀名! 2. 文件解析 xx
Microsoft - Find the K closest points to the origin in a 2D plane
Find the K closest points to the origin in a 2D plane, given an array containing N points. 用 max heap 做 /*
public class Point {
public int x;
public int y;
public Point(int x, int y) {
this.x = x;
this.y = y;
}
}
*/
js入口函数跟jQuery入口函数的区别
JS的window.onload事件必须要等到所有内容,以及外部图片之类的文件加载完之后,才会去执行。 JQuery入口函数是在所有标签加载完之后,就会去执行。 接着,通过JS的一个覆盖问题引出对JQuery入口函数实现的解释。 JS的入口函数window.onload函数有一个覆盖的问题,当文档中出现2个window.onload函数的时候,后者会覆盖前者,导致功能实现不了。但是JQuery却没有这样的问题,重要是因为JQuery入口函数只是对封装好了的方法的一个调用,只不过传的参数不同而已
1.3 任意文件查看与下载漏洞
任意文件查看与下载漏洞 漏洞介绍 一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件 不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞 利用条件 * 存在读文件的函数 * 读取文件的路径用户可控且未校验或校验不严 * 输出了文件内容 漏洞危害 下载服务器任意文件,如脚本代码、服务及系统配置文件等 可用得到的代码进一步代码审计,得到更多可利用漏洞 任意文件读取 代码形式可如下几种: <?php $filename = "test.txt
GNOME 3.30 “Almeria”正式启动
导读 GNOME项目正式启动了即将推出的面向Linux操作系统的GNOME 3.30桌面环境的开发周期,并发布了公开测试的第一个开发快照。 GNOME 3.29.1是即将到来的GNOME 3.30桌面环境的第一个快照,在今年晚些时候举办的GUADEC(GNOME用户和开发者欧洲会议)2018年活动的主办城市之后被称为“Almeria”,它带来了一些更新核心组件和应用程序,但没有任何重大变化。 “实际上GNOME模块自身并没有太多变化,因为没有多少维护人员提供了更新的tarball,但是针对少数
以太坊,p2p Server 原理及实现
以太坊p2p原理与实现 区块链技术的去中心依赖于底层组网技术,以太坊的底层实现了p2pServer,大约可以分为这样三层。 底层路由表。封装了kad路由,节点的数据结构以及计算记录,节点搜索,验证等功能。 中层peer抽象,message开放发送接口,server对外提供peer检测,初始化,事件订阅,peer状态查询,启动,停止等功能 以太坊最上层peer,peerset再封装,通过协议的Run函数,在中层启动peer时,获取peer,最终通过一个循环截取稳定peer,包装在peerset中
Spring Web常见面试问题 SpringMVC总结以及在面试中的一些问题. SpringMVC启动过程详解
一、Web容器初始化过程 先初始化listener,然后是filter,然后是servlet。 二、Spring MVC项目中IOC容器关系 Web容器启动时通知ContextLoaderListener初始化根IOC容器,默认为WebApplicationContext实例,存放除Web层外Bean对象,然后DispatcherServlet初始化WebMVC上下文,建立自己的IOC容器,作为根IOC容器的子容器。 三、DispatherServlet的工作过程 流程 1、用户发送请求至前端
函数(Python)
函数是什么? 计算机的函数,是一个固定的一个程序段,或称其为一个子程序,它在可以实现固定运算功能的同时,还带有一个入口和一个出口,所谓的入口,就是函数所带的各个参数,我们可以通过这个入口,把函数的参数值代入子程序,供计算机处理;所谓出口,就是指函数的函数值,在计算机求得之后,由此口带回给调用它的程序。 使用函数的特性:减少代码重复,程序可扩展,容易维护。 语法定义: 1 # @Software: PyCharm
2 def say():#定义函数
3 print('hello
DELL IDRAC API接口开发文档翻译
今天和DELL官网要了一份关于服务器IDRAC 版本7/8 的API开发文档,花了一天的时间,进行了翻译,不一定全部准确,但对于英语不好的人会有所帮助。也不用重复造轮子了。 下载链接: <a href='https://files.cnblogs.com/files/zy6103/iDRAC-API%E5%BC%80%E5%8F%91%E6%8E%A5%E5%8F%A3%E7%BF%BB%E8%AF%91%E6%96%87%E6%A1%A3.rar'>翻译文档</a>
文件与目录差异对比模块filecmp
简介 当我们进行代码审计或校验备份结果时,往往需要检查原始与目标目录的文件一致性,python的标准库已经自带了满足此需求的模块filecmp。filecmp可以实现文件、目录、遍历子目录的差异对比功能。比如报告中输出目标目录比原始多出的文件或子目录,即使文件同名也会判断是否为同一个文件(内容级对比)等,python2.3以上版本自带了filecmp模块,无需额外安装。 模块常用方法说明 filecmp 提供了三个操作方法,分别为cmp(单文件对比)、cmpfiles(多文件对比)、dircm
今日推荐
周排行