Security

Golang is a programming language that has many amazing features to it, so what exactly makes go suited for security specifically? In order to solve this, a table has been provided below.

FeatureReason for use in cyber security

Standard Library

Most language's currently used in cyber security realms that are interpreted such as python have a major issue with not providing the correct standard library to do exactly what you need. this leaves it completely up to the user to download and install third party libraries to complete the task they need to. Golang has an amazing standard library that makes it easy to setup requests, parse files, load specific information while also allowing for a much more versatile impact

Type System

Unlike most programming language's, go has an amazing type system which holds data types such as rune, string, interface, byte, unsigned integers, big integers, integers, floats, complex numbers and even more mathematically detailed data types. This allows users to easily work with files, systems and type specific operations

Speed and performance

Golang is one of the faster more used programming language's because of the way it's compiler optimizes and generates code while also working with virtual tables!

Concurrency

Another amazing feature of the Go programming language is that it is a very very thread heavy language and has support for atomic, async, mutex and other various threading factors

Files

Every programming language has some form of file system, it has some form of extension that is also run through the compiler or interpreter. Golang has multiple files which are placed in the table below.

File type / ExtensionPurpose or reason for use

.go

Golang source code file. These types of files are where source code will come into handy

.mod

Golang Module file. These files are used for directories and module development which will be talked about later

.sum

Golang Module file which holds all the cryptographic signatures for third party libraries in use within the project

This module will talk about specific use case's for the Go programming language and explain specific programs that will help you better analyze everything. For context, this will all be split into their own sub sections based on their type of usage or topic. For example, forensics will have its own section ( file forensics ) where the tree will look something like this.

GoSecurity
	|
	|- Forensics
		| File catching
		| File Parsing
		| File checking
	|- Cryptography / Encoding
		| Encodings
		| Ciphers
  		| Encryption algorithms
		| Encrypting files

As this structure works much better for organization than just shoving everything into one single file.

Last updated