API Gateway

This article aims to provide a comprehensive understanding of API Gateways, their benefits, and practical implementation strategies, with a focus on Java-based solutions. Introduction An API Gateway is an abstraction layer representing a single entry-point for a system providing multiple services. In the world of microservices and distributed systems, API Read more…

Finite Groups featured image

Finite Groups

In this post we provide the definition of finite groups and we show a few examples meaningful for cryptography and blockchain Def. Finite Groups Def. A group is a set together with an operation combining two elements of , which satisfies the following properties: Closeness: The group operation is closed: Read more…

Cryptography

This post is a collection of basic topics needed for a proper understanding of Cryptography. Cryptographic Systems Primal goal: allow two people to exchange confidential information even if they can only communicate via a channel monitored by an adversary Symmetric Cryptosystem A 5-tuple Where are sets of possible keys, messages, Read more…

Binary Search

Binary search is an algorithm to find the position of a target value within a sorted array by recursively halving the number of candidates. Assuming we have a sorted array with n elements, we can binary search a target element in logarithmic time, O(log(n)).  Binary Search Algorithm To perform a Read more…

Java Type erasure

Java type erasure You can work with java generics, but still, don’t understand type erasure? Let’s look at this example: The generic T is to perform type check at compile-time. To implement this generic, the compiler will: replace the T parameter with the bound classes or Object insert type casts to Read more…

Linux Server Admin

Here is a set of Linux commands used when operating as remote server admin: i.e. find and modify multiple files, sync local and remote files, generate keys, etc. SSH and keygen The first operation for working on a remote server is connecting via ssh. Typically, you connect to the server Read more…