Blogs

Smart Contract Testing Tools

If you aren’t testing your software just give up now. Take your digital assets and post them on a 4chan forum.

Testing is a crucial part of any software development life cycle and smart contract development is no different. Thorough, automated testing can both: save you copious amounts of development time and save your contract from exploitation.

Continue reading

Smart Contract Static Analysis Tools

Tools are an important part of any ecosystem. While tooling generally won’t solve your problems, it will often assist you, as the developer, in solving a problem.

Continue reading

P2p Network Attacks

Blockchains often use network consensus mechanisms which require peer-to-peer (p2p) communications protocols to achieve consensus. Due to the decentralized nature of these protocols, new attack vectors appear and require examination during development and implementation.

Continue reading

Smart Contract Attacks

Smart contracts can remove some of the security concerns of a trusted, third party but then immediately introduce a completely new set of potential vulnerabilities.

Continue reading

Harden a Monero Node

So, you are being awesome and contributing to the Monero network by running a full node. Now it’s time to ensure that it keeps running. Hardening a public facing server is best practice, regardless of the services provided, but is especially important when that service may control cryptocurrency.

Continue reading

Discussing Consensus Protocols: Gems

Overview Blockchains, and many other types of networks, rely on consensus to process information. Routing protocols such as BGP much come to an agreement on best paths to route network traffic. Blockchains must come to an agreement on the true state of the distributed ledger. Now, even smart contracts must determine the “truthiness” of an transaction in order to validate state. Why? In a fully trusted environment where all nodes have all required information, consensus would be easy.

Continue reading

Build a Linux Monero Node

Introduction It’s easy to contribute to the Monero network. You can USE Monero, contribute your time, donate, mine it, or run a Monero node. Running a node is just using your compute resources to store a copy of the Monero blockchain. It take relatively little CPU, memory, or network, and only a marginal amount of storage. In this guide, we will build a Monero node on a Virtual Private Server with 1vCPU, 1GB of memory, and 60GB of disk space.

Continue reading

Create a Monero Multisignature (multisig) Wallet

Overview In a previous post, we discussed WHAT a multisig wallet is. Now it’s time to create one. Multisig in Monero At the time of writing, multisig support is available in the development branch of the Monero source on Github but is not yet available in a released version. You will need to build the binaries yourself from source before proceeding. Example: Alice and Bob want to build a multisig wallet together.

Continue reading

Monero Multisignature (Multisig) Wallets

Overview Multisignature wallets are now available in developmental versions of Monero, and should be available in released versions shortly. TL;DR; Here are the steps to create a multisig Monero wallet. Before Multisignature Standard transaction methodology Using a standard transaction methodology, Alice can exchange money with Bob for goods. I.e. Alice wants a bicycles and has money. Bob has a bicycle and wants money. Nature takes its course and they make an exchange.

Continue reading

Creating a Monero Cold Wallet

The decentralized nature of cryptocurrencies makes them super resilient. The same cannot be said for individual wallets if not cared for properly. In a previous post we covered the different types of Monero wallets and the potential use cases for each. Here, we will discuss the methods for creating a Cold Wallet for Monero. A cold wallet is nothing more than a Monero wallet which isn’t connected to the internet.

Continue reading