namespace

Aes加密算法加密模式介绍

隐身守侯 提交于 2020-02-28 17:20:17
本文转自: https://www.jianshu.com/p/582d3a47729a    AES,高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。严格地说,AES和Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度固定为128 比特,密钥长度则可以是128,192或256比特;而Rijndael使用的密钥和区块长度可以是32位的整数倍,以128位为下限,256比特为上限。包括AES-ECB,AES-CBC,AES-CTR,AES-OFB,AES-CFB 简介   一般的加密通常都是块加密,如果要加密超过块大小的数据,就需要涉及填充和链加密模式,本文对对称加密和分组加密中的几种种模式进行一一分析(ECB、CBC、CFB、OFB,CTR) 电码本模式 Electronic Codebook Book (ECB) 概述   这种模式是将整个明文分成若干段相同的小段,然后对每一小段进行加密。 特点分析 优点: 简单; 有利于并行计算; 误差不会被传送; 缺点: 不能隐藏明文的模式; 可能对明文进行主动攻击;

eclipse编写XML需了解事项

蹲街弑〆低调 提交于 2020-02-28 14:28:00
本文简单介绍使用eclipse编写xml时需了解的几点: 1、xml的头是什么意思? 以编写Spring的配置文件为例来讲解xml头的含义:以下是spring一个最简单的配置 <beans // xml根元素 ,会根据需要而不同,如spring该配置为beans,maven的pom文件的根元素是Project //根元素也是要根据实际情况配置正确 xmlns="http://www.springframework.org/schema/beans" //xmlns:xml namespace命名空间,此处的命名空间没有声明前缀,所以是默认命名空间。注意: 此处不会检验所编写的xml格式标签是否正确,URL只作为命名空间 ,如Java项目中的package的作用一样,避免重名的尴尬。理论上这个URL可以随便定义,只要是别重复就可以 了,不过很多公司都会把这个URL指向特定的资源。 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" //也是命名空间,此处定义了前缀:xsl,只有使用了该前缀的才是使用了该命名空间的。该命名空间比较特殊,从URL可看到:XMLSchema-instance。用我的理解就是,它是用来指定"xml格式定义文件"的实例。 xsi:schemaLocation="http://www

kubernetes常用命令整理

人走茶凉 提交于 2020-02-28 03:44:35
一、维护类: master节点: [root@k8s-master01 ~]# for I in etcd kube-apiserver kube-controller-manager kube-scheduler; do systemctl restart $I systemctl enable $I done [root@k8s-master01 ~]# service flanneld start node节点: [root@k8s-master01 ~]#for I in kube-proxy kubelet docker do systemctl restart $I systemctl enable $I done [root@k8s-master01 ~]# service flanneld start 获取token: kubectl get secret -n kube-system kubectl describe secret admin-token-45rzl -n kube-system 或者 kubectl get secret $(kubectl get secret -n kube-system|grep admin-token|awk '{print $1}') -n kube-system -o jsonpath={.data.token}

C++ Primer Answer ch04

自作多情 提交于 2020-02-28 03:18:02
4.1 #include <iostream> using namespace std; int main() { cout << 5 + 10 * 20 / 2;//105 return 0; } 4.2 #include <iostream> #include <vector> using namespace std; int main() { vector<int> vec = {1, 3, 5}; cout << *vec.begin() << ' '; cout << *(vec.begin()) << ' '; cout << *vec.begin() + 1 << ' '; cout << (*(vec.begin())) + 1; return 0; } 4.3 可以。操作数的求解顺序通常对结果没什么影响,只有当二元操作符的两个操作数涉及同一对象,并改变对象的值时,操作数的求解顺序才会影响计算结果。实现效率的提高能使使用编译器的程序受益。 4.4 #include <iostream> using namespace std; int main() { cout << 12 / 3 * 4 + 5 * 15 + 24 % 4 / 2;//91 return 0; } 4.5 #include <iostream> using namespace std; int

我们为什么会删除不了集群的 Namespace?

梦想的初衷 提交于 2020-02-27 12:38:13
作者 | 声东 阿里云售后技术专家 导读 :阿里云售后技术团队的同学,每天都在处理各式各样千奇百怪的线上问题。常见的有网络连接失败、服务器宕机、性能不达标及请求响应慢等。但如果要评选的话,什么问题看起来微不足道事实上却让人绞尽脑汁,我相信肯定是“删不掉”的问题,比如文件删不掉、进程结束不掉、驱动卸载不了等。这样的问题就像冰山,隐藏在它们背后的复杂逻辑,往往超过我们的预想。 背景 今天我们讨论的这个问题,跟 K8s 集群的 Namespace 有关。Namespace 是 K8s 集群资源的“收纳”机制。我们可以把相关的资源“收纳”到同一个 Namespace 里,以避免不相关资源之间不必要的影响。 Namespace 本身也是一种资源。通过集群 API Server 入口,我们可以新建 Namespace,而对于不再使用的 Namespace,我们需要清理掉。Namespace 的 Controller 会通过 API Server,监视集群中 Namespace 的变化,然后根据变化来执行预先定义的动作。 有时候,我们会遇到下图中的问题,即 Namespace 的状态被标记成了 "Terminating",但却没有办法被完全删除。 从集群入口开始 因为删除操作是通过集群 API Server 来执行的,所以我们要分析 API Server 的行为。跟大多数集群组件类似,API

C++程序设计(第二版)谭浩强----程序题课后习题答案第一章

一个人想着一个人 提交于 2020-02-26 15:49:45
关于调试时闪一下不出结果的解决办法:最简单的是在return之前加上system("pause"). http://blog.csdn.net/scorpio_tester/article/details/41889531 VS中,将代码格式化,变得整洁美观的快捷键: Ctrl+K+F; 5. #include <iostream> using namespace std; int main() { cout << "This" << "is"; cout << "a" << "C++"; cout << "program." << endl; return 0; } 结果 : 6. #include <iostream> using namespace std; int main() { int a, b, c; a = 10; b = 23; c = a + b; cout << "a + b ="; cout << c; cout << endl; return 0; } 结果: 7. #include <iostream> using namespace std; int main() { int a, b, c; int f(int x, int y, int z); cin >> a >> b >> c; c = f(a, b, c); cout << c <<

Beego学习-02 beego.Router与namespace路由

大兔子大兔子 提交于 2020-02-26 12:09:01
beego.Router是RESTful Controller 路由 //见官网: https://beego.me/docs/mvc/controller/router.md namespace路由 自动化路由才有了namespace来进行设计, 而且注意两点,第一目前只支持namespace的路由支持自动化文档, 第二只支持NSNamespace和NSInclude解析,而且是只能两个层级 eg. func init ( ) { //使用beego.NewNamespace创建一个ns的变量, //这个变量里面其实就是存储了一棵路由树,我们可以把这棵树加到其他任意已经存在的树中去 ns : = beego.NewNamespace ( "/v1" , beego.NSNamespace ( "/object" , //调用了beego.NSInclude来进行注解路由的引入 beego.NSInclude ( & controllers.ObjectController { } , ) , ) , beego.NSNamespace ( "/user" , beego.NSInclude ( & controllers.UserController { } , ) , ) , ) beego.AddNamespace ( ns ) }

Kubernetes kubectl常用命令

空扰寡人 提交于 2020-02-26 05:36:38
Kubernetes kubectl常用命令 [TOC] 1. 查看资源对象 常用查看资源对象( |rc| )有 namespace(ns) pods service(svc) endpoints(ep) deployment(deploy) pvc ingresses(ing) ,括号内为最简写法。 kubectl get |rc| 显示更多信息,在后面接 -o wide 、 -ojson 或者 -o yaml ,同时查看多个资源对象用英文逗号隔开。 查看资源对象全名,可通过 kubectl rc,|rc| 2. 创建资源对象 创建时,注意文件内是否有namespace,如果没有,请在命令后面指定 -n |namespace-name| 。 根据yaml配置文件一次性创建资源对象 kubectl create -f service.yaml -f deployment.yaml 根据 |directory| 目录下所有 .yaml 、 .yml 、 .json 文件的定义进行创建操作 kubectl create -f |directory| 对资源进行配置,最常用功能。 kubectl apply -f service.yaml kubectl apply -f |directory| 3. 编辑资源对象 编辑资源对象时,编辑器为 vi ,需要熟悉 vi 命令操作。

php设计模式-观察者模式

久未见 提交于 2020-02-26 01:45:16
简言之 :观察者模式(Observer),当一个对象状态发生改变时,依赖它的对象全部会收到通知,并自动更新。 具体描述 :一个对象通过添加一个方法(该方法允许另一个对象-观察者,注册自己)使本身变得可观察。当可观察的对象更改时,它会将消息发送到已注册的观察者。这些观察者使用该信息执行的操作与可观察的对象无关。结果是对象可以相互对话,而不必了解原因。观察者模式是一种时间系统,意味着这一模式允许某个类观察另一个类的状态。当被观察的类状态发生改变的时候,观察类可以收到通知并且做出相应的动作,观察者模式避免组件之间的紧密耦合。 观察者模式中的角色 : Subject(抽象主题角色):主题角色将所有观察者对象的引用保存在一个集合中,每个主题可以有任意多个观察者。抽向主题提供了增加和删除观察者对象的接口。 Observer(抽象观察者角色):为所有的具体观察者定义一个接口,在观察的主题发生改变时更新自己。 ConcreteSubject(具体主题角色):存储相关状态到具体观察者对象,当具体主题的内部状态改变时,给所有登记过的观察者发出通知,具体主题角色通常用一个具体子类实现。 ConcreteObserver(具体观察者角色):存储一个具体主题对象,存储相关状态,实现抽象观察者角色所要求的更新接口,以使得其自身状态和主题的状态保持一致。 推荐阅读代码: PHP设计模式之观察者模式