Loading...
0x0反射:golang的reflect包实现了运行时的反射能力。reflect包中有两个重要函数:reflect.TypeOf 获取数据类型信息,其类型为reflect.Typereflect.ValueOf 获取数据运行时的信息,其类型为reflect.ValueTaggolang的struct中的每一个字段(field)后添加一段注释,称为 field tag,最经典就是构建json的...
package main import ( "bytes" "fmt" "gocv.io/x/gocv" "golang.org/x/crypto/ssh/terminal" "image" "os" "o...
0x0三帧法运动检测属于帧间差分法,相关介绍在之前的文章中有介绍。这次使用Golang的OpenCV库:gocv 来编写,是最近为了练手gocv而写的第一个demo0x1package main import ( "gocv.io/x/gocv" ) func main() { c, err := gocv.VideoCaptureFile(&quo...
UDP打洞指用于NAT穿越的一种技术,也即内网穿透技术。背景介绍IPv4枯竭现阶段大多网络设备是用IPv4地址作为互联网通信地址,IPv4使用32位(4字节)地址,因此只有4,294,967,296(232)个地址可供使用,其间有一些地址是为特殊用途而保留的,如专用网络(约1800万个地址)和多播网络(约2.7个地址),这将减少了互联网中可用的地址。随着时间的变化,接入互联网的设备越来越多,...
0x00Golang可以在一个平台交叉编译多个平台的程序,但是在默认情况下Golang中编译C语言的CGO不支持交叉编译。通过查询资料和阅读官方文档了解到CGO默认使用本地计算机自带的gcc和g++编译器,所以可以修改默认的编译器使用自己准备的编译器来进行交叉编译。这里演示的是使用CGO在Linux下编译Windows程序我在这里环境是WSL/Kali (Windows是最好的Linux发行...