Package antideb - basic anti-debugging and anti-reverse engineering protection for your application. Performs basic detection functions such as ptrace, int3, time slots, vdso and others (don't foget to obfuscate your code).
Package jsonrest implements a microframework for writing RESTful web applications. Endpoints are defined as: If an endpoint returns a value along with a nil error, the value will be rendered to the client as JSON with status code 200. You can also return a Response object if you need another type of success code (e.g. 204). If an error is returned, it will be sanitized and returned to the client as json. Errors generated by a call to `jsonrest.Error(status, code, message)` will be rendered as-is to the client, along with the given HTTP status code. Any other errors will be obfuscated to the caller (unless `router.DumpError` is enabled). Example
Package mse (Message Stream Encryption) provides a transparent wrapper for bidirectional data streams (e.g. TCP transports) that prevents passive eavesdroping and thus protocol or content identification. It is also designed to provide limited protection against active MITM attacks and portscanning by requiring a weak shared secret to complete the handshake. You should note that the major design goal was payload and protocol obfuscation, not peer authentication and data integrity verification. Thus it does not offer protection against adversaries which already know the necessary data to establish connections (that is IP/Port/Shared Secret/Payload protocol). To minimize the load on systems that employ this protocol fast cryptographic methods have been chosen over maximum-security algorithms. See http://wiki.vuze.com/w/Message_Stream_Encryption for details.
garble obfuscates Go code by wrapping the Go toolchain.
Package jsonrpc implements a microframework for writing JSON-RPC web applications. Methods are defined as either: If a method returns a value along with a nil error, the value will be rendered to the client as JSON. If an error is returned, it will be sanitized and returned to the client as json. Errors generated by a call to `jsonrpc.Error` will be rendered as-is to the client. Any other errors will be obfuscated to the caller (unless `DumpErrors` is enabled). Example:
Package gqlgen contains an implementation of a gqlgen tracer, and functions to construct and configure the tracer. The tracer can be passed to the gqlgen handler (see package github.com/99designs/gqlgen/handler) Warning: Data obfuscation hasn't been implemented for graphql queries yet, any sensitive data in the query will be sent to Datadog as the resource name of the span. To ensure no sensitive data is included in your spans, always use parameterized graphql queries with sensitive data in variables. Usage example:
Package antideb - basic anti-debugging and anti-reverse engineering protection for your application. Performs basic detection functions such as ptrace, int3, time slots, vdso and others (don't foget to obfuscate your code).
Create MYSQL dumps in Go without the 'mysqldump' CLI as a dependancy. This example uses the mysql driver (https://github.com/go-sql-driver/mysql) to connect to a mysql instance.
Package kidwords provides durable and accessible paper key encoding that children can use. Printable paper keys are occasionally used as the last resort for recovering account access. They increase security by empowering a user with the ability to wrestle control of a compromised account from an attacker. Most paper keys are encoded using BIP39 convention into a set of words. The final few words encode the integrity of the key with a cyclical redundancy check. When printed and stored, such keys are not durable because they can be lost to minor physical damage. Kid Words package or command line tool increases key durability by splitting the key using [Shamir's Secret Sharing](https://en.wikipedia.org/wiki/Shamir%27s_secret_sharing) algorithm into shards and encoding each shard using a dictionary of 256 four-letter English nouns. ## Benefits - Keys can be recovered from partially damaged paper. - Shards can be transmitted and memorized by children. - Shards are easier to speak over poor radio or telephone connection, which can save time during an emergency. - Key shards can be hidden in several physical locations by cutting the paper into pieces. Once a configurable quorum of shards, three by default, is gathered back, the key can be restored. - Shards can easily be obfuscated by sequencing: - Command line tool can apply all of the above benefits to: ## Inspired By - [Horcrux][horcrux] horcrux: https://github.com/jesseduffield/horcrux/tree/master
Package jsonrest implements a microframework for writing RESTful web applications. Endpoints are defined as: If an endpoint returns a value along with a nil error, the value will be rendered to the client as JSON with status code 200. You can also return a Response object if you need another type of success code (e.g. 204). If an error is returned, it will be sanitized and returned to the client as json. Errors generated by a call to `jsonrest.Error(status, code, message)` will be rendered as-is to the client, along with the given HTTP status code. Any other errors will be obfuscated to the caller (unless `router.DumpError` is enabled). Example
Package jsonrpc implements a microframework for writing JSON-RPC web applications. Methods are defined as either: If a method returns a value along with a nil error, the value will be rendered to the client as JSON. If an error is returned, it will be sanitized and returned to the client as json. Errors generated by a call to `jsonrpc.Error` will be rendered as-is to the client. Any other errors will be obfuscated to the caller (unless `DumpErrors` is enabled). Example: