自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 使用TMT工具进行威胁分析及风险评估(TARA)

TARA活动,可以认为包含以下几个大的活动,资产识别及等级划分,构建数据流图(DFD),划分信任边界,威胁分析,风险评估;资产识别及等级划分,即对整个系统进行分析,识别出相关的重要资产,并对相关资产进行等级划分,其中,资产可以包括数据流,数据存储器,进程,硬件设施等;构建数据流图(DFD),即画出系统业务逻辑图,包括各组件及其通信框架,外部访问接口,数据存储即使用,通信协议等;划分信任边界,即在DFD图的基础上,分析安全边界,安全域,确定信任关系;威胁分析,...

2022-08-08 22:56:25 1609 1

原创 软件安全开发生命周期(SSDL)全景图

对于软件安全研发过程,不同的项目会采用不同的过程模型,使用不同的工具,会有不同的门控要求及不同的输出物,下面简单介绍下我所理解的软件安全开发过程。软件开发生命周期过程中的各个阶段的安全相关活动,用以保证各环节中安全相关融入到产品中,保证产品的完整安全开发过程,提升产品安全竞争力;即在各阶段进行各项活动时,需要遵守的各种标准&规范,作为各项活动的部分输入,以确保产品的安全能力是符合相关行业和国家及国际的要求的;即在各阶段进行相关活动时所需要的支撑系统,使用的工具即技术,相关活动的主要进行角色等;......

2022-08-07 21:05:05 2059

原创 String s=new String("xyz")及String s="a"+"b"+"c"+"d";创建几个String对象的问题

首先让我们了解几个概念:栈:由JVM分配区域,用于保存线程执行的动作和数据引用。堆:由JVM分配的,用于存储对象等数据的区域。常量池constant pool :在堆中分配出来的一块存储区域,用于存储显式 的String,float或者integer.这是一个特殊的共享区域,可以在内存中共享的不经常改变的东西,都可以放在这里。进入正题:String a = "abc";①St...

2019-12-26 11:03:06 909

转载 深入浅出理解SELinux系统

一、前言安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。SELinux 主要由美国国家安全局开发。2.6 及以上版本的 Linux 内核都已经集成了 SELinux 模块。SELinux 的结构及配置非常复杂,而且有大量概念性的东西,要学精难度较大。很多 Linux 系统管...

2019-12-26 10:10:34 279

转载 Ubuntu下如何修改文件或者文件夹的权限

Ubuntu下如何修改文件或者文件夹的权限Ubuntu下如何修改文件或者文件夹的权限------chmod的亲身测试具体原理如下: Linux系统下如何修改文档及文件夹(含子文件夹)权限,我们来看一下。              一 介绍:     可以使用命令chmod来为文件或目录赋予权限。Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制...

2018-04-09 14:33:42 3419

原创 ssh登录 The authenticity of host 192.168.0.xxx can't be established. 的问题

ubuntu在利用ssh连接登录远程ip时出现错误。错误描述:The authenticity of host '123.207.232.xxx (123.207.232.xxx)' can't be established.ECDSA key fingerprint is SHA256:TMAd0K7dSK6HRLH92kJ0DLTJwNOZVaYbW2m/iksDD1I.Are you sur...

2018-04-09 14:15:08 1282 2

转载 在ubuntu上安装,使用MQTT Mosquitto

在ubuntu上安装,使用MQTT Mosquitto以下描述了如何安装Mosquitto 并使用MQTT进行通信1. 引入mosquitto仓库并更新$sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa$sudo apt-get update2. 执行以下命令安装mosquitto包$sudoapt-get installmosquit...

2018-03-16 13:55:26 382

转载 windows环境下MySQL-5.7.X-winx64下载安装与配置

系统:64位Win-7官网压缩包:mysql-5.7.12-winx64.zip 前后花了一些时间,以前都是下载软件直接安装在本地,现在这个不一样,下载压缩包后要解压缩到安装目录,然后在控制台下配置服务。整体的流程如下:1. 下载:到http://dev.mysql.com/downloads/mysql/下载,或者登陆mysql官网按Downloa

2017-11-24 15:28:29 460

原创 电子邮件的收发及传输过程解析

在了解电子邮件之前,我们先看看传统邮件是如何运作的。假设你现在在北京,要给一个香港的朋友发一封信,怎么做呢?首先你得写好信,装进信封,写上地址,贴上邮票,然后就近找个邮局,把信仍进去。信件会从就近的小邮局转运到大邮局,再从大邮局往别的城市发,比如先发到天津,再走海运到达香港,也可能走京九线到香港,但是你不用关心具体路线,你只需要知道一件事,就是信件走得很慢,至少要几天时间。

2017-11-13 16:11:20 9381

转载 Python在windows下的分布式进程

在Thread和Process中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分布到同一台机器的多个CPU上。Python的multiprocessing模块不但支持多进程,其中managers子模块还支持把多进程分布到多台机器上。一个服务进程可以作为调度者,将任务分布到其他多个进程中,依靠网络通信。由于managers

2017-11-10 15:13:51 249

转载 关于多进程与多线程

首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Worker负责执行任务,因此,多任务环境下,通常是一个Master,多个Worker。如果用多进程实现Master-Worker,主进程就是Master,其他进程就是Worker。如果用多线程实现Master-Worker,主线程就是Master,其他线程就是Worker。多进程模

2017-11-10 14:16:54 472

转载 JVM中Java类的加载机制

1、什么是类的加载类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。类加载器并不需要等到某个类被“首次主动使

2017-08-13 17:29:14 549

原创 java的序列化或Serializable接口的作用

我们有时候将一个java对象变成字节流的形式传出去或者从一个字节流中恢复成一个java对象,例如,要将java对象存储到硬盘或者传送给网络上的其他计算机,这个过程我们可以自己写代码去把一个java对象变成某个格式的字节流再传输,但是,jre本身就提供了这种支持,我们可以调用OutputStream的writeObject方法来做,如果要让java 帮我们做,要被传输的对象必须实现serializa

2017-08-13 16:29:05 239

原创 Java异常处理机制

在 Java 应用程序中,异常处理机制为:抛出异常,捕捉异常。        抛出异常:当一个方法出现错误引发异常时,方法创建异常对象并交付运行时系统,异常对象中包含了异常类型和异常出现时的程序状态等异常信息。运行时系统负责寻找处置异常的代码并执行。        捕获异常:在方法抛出异常之后,运行时系统将转为寻找合适的异常处理器(exception handler)。潜在的异常处

2017-08-13 15:08:18 274

原创 java异常概述

异常指不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。异常是一个事件,它发生在程序运行期间,干扰了正常的指令流程。Java通 过API中Throwable类的众多子类描述各种不同的异常。因而,Java异常都是对象,是Throwable子类的实例,描述了出现在一段编码中的 错误条件。当条件生成时,错误将引发异常。      Java异常类层次结构图:     

2017-08-13 13:57:51 254

转载 java中Map,List与Set的区别

Set,List,Map的区别java集合的主要分为三种类型:Set(集)List(列表)Map(映射)要深入理解集合首先要了解下我们熟悉的数组:数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),而JAVA集合可以存储和操作数目不固定的一组数据。 所有的JAVA集合都位于 java.util包中! JAVA集合只能存放引用类型的的数据,不能存

2017-08-13 11:59:22 315 1

原创 Enumeration和Iterator的区别

Enumeration和Iterator的主要区别:  (1)java中的集合类都提供了返回Iterator的方法,就是迭代器,它和Enumeration(枚举)的主要区别其实就是Iterator可以删除元素,但是Enumration却不能。 (2)还有一点要注意的就是,使 用Iterator来遍历集合时,应使用Iterator的remove()方法来删除集合中的元素,使用集合的remov

2017-08-12 23:11:38 636

转载 Java集合类框架汇总

一、集合与数组数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用。集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用。二、层次关系如图所示:图中,实线边框的是实现类,折线边框的是抽象类,而点线边框的是接口Collection接口是集合类的根接口,Java中没有提供这个接口的直

2017-08-12 22:37:37 229

转载 创建线程的三种方式及对比

一:继承Thread类创建线程类class PrimeThread extends Thread { long minPrime; PrimeThread(long minPrime) { this.minPrime = minPrime; } public void run() { //

2017-08-12 15:27:32 296

原创 Java的自动装箱与拆箱机制

自动装箱和拆箱从Java 1.5开始引入,目的是将原始类型值转自动地转换成对应的对象。自动装箱与拆箱的机制可以让我们在Java的变量赋值或者是方法调用等情况下使用原始类型或者对象类型更加简单直接。如果你在Java1.5下进行过编程的话,你一定不会陌生这一点,你不能直接地向集合(Collections)中放入原始类型值,因为集合只接收对象。通常这种情况下你的做法是,将这些原始类型的值转换成对

2017-08-12 15:04:17 480

原创 java设计模式之创建模式(工厂模式,Builder,单例,原型)

工厂模式定义:提供创建对象的接口.为何使用?工厂模式是我们最常用的模式了,著名的Jive论坛 ,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见。为什么工厂模式是如此常用?因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑实用工厂模式,

2017-08-10 19:46:55 581

原创 UDP协议及其与TCP的区别

UDP(User Data Protocol,用户数据报协议)(1) UDP是一个非连接的协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。(2) 由于传

2017-07-31 20:19:49 250

转载 java反射机制详解

本文转载自:http://www.cnblogs.com/lzq198754/p/5780331.htmlJava反射机制详解| |目录1反射机制是什么2反射机制能做什么3反射机制的相关API·通过一个对象获得完整的包名和类名·实例化Class类对象·获取一个对象的父类与实现的接口·获取某个类中的全部构造函数 - 详见下例·通过反射机制实例化一个类的对象·获取某个类

2017-07-04 15:16:54 218

转载 TCP的三次握手和四次挥手

TCP协议三次握手过程分析TCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(rese

2017-07-03 19:16:43 171

原创 JVM里java对象的创建及内存分配和访问定位

对象的创建Java是一门面向对象的编程语言,在Java程序运行过程中无时无刻都有对象被创建出来。在语言层面上,创建对象(例如克隆、反序列化)通常仅仅是一个new关键字而已,而在虚拟机中,对象(文中讨论的对象限于普通Java对象,不包括数组和Class对象等)的创建又是怎样一个过程呢?虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检

2017-07-03 18:50:11 598

原创 JVM垃圾回收机制

说起垃圾收集(Garbage Collection,GC),大部分人都把这项技术当做Java语言的伴生产物。事实上,GC的历史比Java久远,1960年诞生于MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。当Lisp还在胚胎时期时,人们就在思考GC需要完成的3件事情:        哪些内存需要回收?        什么时候回收?        如何回收?

2017-07-03 18:29:39 186

转载 Linux常用指令

常用指令ls          显示文件或目录     -l           列出文件详细信息l(list)     -a          列出当前目录下所有文件及目录,包括隐藏的a(all)mkdir         创建目录     -p           创建目录,若无父目录,则创建p(parent)cd               切

2017-07-03 18:21:44 153

原创 JVM自动内存管理机制之运行时数据区域

以下内容为本人学习Java虚拟机自动内存管理机制之运行时数据区域的笔记,适合没有时间,但想对运行时数据区域有所了解的人,想更深入了解请看《深入理解java虚拟机》这本书。Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Ja

2017-05-11 15:26:22 310

原创 关于java中比较所用的"=="与s.equals()方法的不同

在java中,对字符串的比较有两种方式,一种是用"==",另一种是用s.equals()方法,这两个是有区别的,"=="方法是判断两个字符串的地址是否相同,即如果有a,b两个字符串,他们都指向同一个对象,即同一个地址,则用"=="返回true;而如果不是指向同一个对象,即使两个字符串的内容完全相等,"=="方法也会返回false‘;而s.equals()方法则是判断字符串的内容是否相等,只要内容相

2017-05-10 10:32:47 1653

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除