Sign in

Software Developer. Crypto and Cybersecurity.

Badges are a great way to measure professional skills, so why not put them on your GitHub profile?

Recently, I started looking for ways to improve my professional skills and with that, I gained several Acclaim(now Credly) badges that are easily shared on LinkedIn, but not so easily shared on Github. And that led me to think of easy ways to automate this.

Over time, I became a huge fan of automation.

In programming and day-to-day tasks, It’s important not to waste time on rework.

I was already thinking about automatically updating my Github with these badges as I said before and this mentality joined my desire to create a project where I could learn more about…


Todo mundo conhece a clássica estratégia de good cop/bad cop, certo? É aquela lá, vista várias vezes em filmes, que uma dupla se divide e enquanto um encarna o bad cop que te maltrata, te faz sofrer e algumas vezes até te tortura, o outro, o good cop vai te proteger, te ajudar, para que você dê à ele as informações que estão buscando.

Aqui a analogia com testes é direta, enquanto um mal teste vai te torturar, te incomodar, te dar dor de cabeça e fazer você perder noites de sono, literalmente, um bom teste é todo o conforto…


Aviso aos navegantes: esse papo aqui é dev para dev, morô? então se quiser continuar lendo, é por sua conta em risco, saiba que vai ter muito termo técnico aqui, e se não souber algum, pare o texto, pesquise o que significa e volte para aqui

Olá pessoal, eu sou o Pedro (ou Matias), desenvolvedor full stack aqui no aiqfome. Hoje vou falar agora sobre algo que todo o dev já deve ter mexido na vida, o fucking token. (eu não obriguei você a ler aquele textão sobre hash à toa), especificamente os tokens JWT.

O que é token?

A palavra significa “passe”…


o primeiro artigo do devorando e uma visão geral de teoria e segurança!

Photo by Shahadat Rahman on Unsplash

Olá pessoal, eu sou o Pedro, desenvolvedor full stack aqui no aiqfome. E vou estrear com vocês o devorando, o blog dos devs do app mais fominha da internê!

Aviso aos navegantes: esse papo aqui é de dev para dev, morô? Então vão aparecer muitos termos técnicos. Se ficar difícil e você não souber algum, pare o texto, pesquise o que significa e aí volte pra cá! 💜

Vocês devem estar pensando, caramba cara, vai falar de funções HASH logo de cara???? A resposta é sim, porque…


me in the field

I had never heard about American football until I started my bachelor’s degree in computer science.

I was living for the first time, in another city, being a new guy in a new place, so when a friend asked me if I wanted to start training on the new football team, I thought “ok, why not?” and that changed my whole life. And I never expected that improve myself for better (and to keep on improving).

How did I change?

I trained at Maringá Pyros for many years. On the team I was a RB / WR, after that, I was a football judge…


Photo by Thought Catalog on Unsplash

The basic concept of blockchain is very simple: a distributed database that maintains a continuously growing list of ordered records.

“Blockchain” is a term normally associated with Bitcoin and/or Ethereum, but the blockchain is more than that. Blockchain is the technology behind these and behind any other cryptocurrency.

There are several uses for blockchain. For example, games (CryptoKitties) or also blockchain+IOT (Internet of things), and this is just the start for the technology.


Portuguese version

A more common definition for hash functions would be “a function that maps a string of bits of arbitrary length to a fixed-length bit string”.

Hash functions are unidirectional, a surjective function that does not allow reverse, so it is easy to calculate the hash value from any input of arbitrary length.

In contrast, it is harder to return to the previous value of the message from a given hash value.

Hash Properties

For a cryptographic application, there are three desirable properties:

Collision Resistance

It is computationally impracticable to find any pair (x, y) such that H(x)=H(y)

Pre-image resistance

For any value h given, it is…


Portugrese version

It’s much easier to multiply numbers together than to factor them apart. That’s the basics of RSA encryption.

In particular, the RSA encryption works with two large primes p and q, is quickly and easy to find the product pq but it is harder to recover the factors p and q from n. Generally p and q are numbers with hundreds of digits, factoring a number of this magnitude is very slow.

The algorithm

To encode the message we need n = pq and a positive integer e that be reversible module φ (n). We talk about the Euler’s totient function before…


Portugrese version

In number theory, The Euler’s totient function, counts the number of positive integers less than m and relatively prime to m. For a prime number p, φ(p) = p-1.

It can be defined more formally as the number of integers k in the range 1 ≤ k ≤ n for which the greatest common divisor gcd(n, k) is equal to 1.

What is Fermat’s little theorem

Fermat’s little theorem says that if p is a prime and a is not a multiple of p, then


Years ago I was programming for a small company who worked with boarded system. There I wrote codes for shell scripts, python scripts and another codes for boarded systems, sometimes for clients who lived in another state with machines that I don’t had any access, so my scripts were always a black box and for that was very common send the updates for e-mail.

Therefor, the client sended me a e-mail with the subject: “Not working”. In 5 minutes I refreshed the file and sended back. Problem solved right? Not totally.

It’s hard to small companies, even freelancers, do…

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store