CryptoURANUS Economics


Thursday, July 25, 2019



Cryptography is the practice and study of techniques for secure communication in the presence of untrusted third parties.

Cryptography is about constructing and analyzing protocols that prevent third parties or the public from reading private messages and intercepting transactions.

A cryptocurrency (or crypto currency) is a digital asset designed to work as a medium of exchange that uses strong cryptography to secure financial transactions, control the creation of additional units, and verify the transfer of assets.

Cryptocurrencies use decentralized control as opposed to centralized digital currency and central banking systems.

The decentralized control of each cryptocurrency works through distributed ledger technology, typically a blockchain, that serves as a public financial transaction database.

Bitcoin, first released as open-source software in 2009, is generally considered the first decentralized cryptocurrency.

Since the release of bitcoin, over 4,000 altcoins (alternative variants of bitcoin, or other cryptocurrencies) have been created.

Trezor uses the most modern and sophisticated cryptographic protocols to protect your funds, transactions, communication, passwords and to back up your wallets.

See also: Elliptic-curve cryptography, Public-key cryptography

Like Trezor? Get one here!

Wednesday, July 24, 2019

Free Open-Source FPGA-Simulators: Cryptocurrency

Free Open-Source FPGA-Simulators

This is the Free Open-Source FPGA-Simulators, such as, SystemVerilog that is not a proprietary language and is free for personal use. I think what you mean is a free simulator that can compile and run SystemVerilog. Here’s that information:

  1. If working online is an option for you, check out It is an online IDE that gives you access to Synopsys VCS, Cadence Ncisive and other simulators.
  2. Download ModelSim PE Student Edition. It supports many, if not all SystemVerilog constructs.

List of Verilog simulators in alphabetical order
Simulator name License Author/company Supported languages Description
GPL Cver GPL Pragmatic C Software V1995, minimal V2001 This is a GPL open-source simulator. It is a pure simulator. This simulator is not fully IEEE 1364-2001 compliant. It does not support generate and constant functions. 
Icarus Verilog GPL2+ Stephen Williams V1995, V2001, V2005, limited SV2005/SV2009 Also known as iverilog. Good support for Verilog 2005, including generate statements and constant functions.
A. Bosio, G. Di Natale (LIRMM) V1995 LIFTING (LIRMM Fault Simulator) is an open-source simulator able to perform both logic and fault simulation for single/multiple stuck-at faults and single event upset (SEU) on digital circuits described in Verilog.
OSS CVC Perl style artistic license Tachyon Design Automation V2001, V2005 CVC is a Verilog HDL compiled simulator. CVC has the ability to simulate in either interpreted or compiled mode. Source code is available under a Perl style artistic license.
TkGate GPL2+ Jeffery P. Hansen V1995 Event driven digital circuit editor and simulator with tcl/tk GUI based on Verilog. Includes Verilog simulator Verga.
Verilator GPL3 Veripool Synthesizable V1995, V2001, V2005, SV2005, SV2009, SV2012, SV2017 This is a very high speed open-source simulator that compiles synthesizable Verilog to multithreaded C++/SystemC.
Verilog Behavioral Simulator (VBS) GPL Lay H. Tho and Jimen Ching V1995 Supports functions, tasks and module instantiation. Still lacks a lot of features, but this release has enough for a VLSI student to use and learn Verilog. Supports only behavioral constructs of Verilog and minimal simulation constructs such as 'initial' statements.
VeriWell GPL2 Elliot Mednick V1995 This simulator used to be commercial, but has recently become GPL open-source. Compliance with 1364 is not well documented. It is not fully compliant with IEEE 1364-1995.
ISOTEL Mixed Signal & Domain GPL ngspice and Yosys communities, and Isotel V2005 Open-source mixed signal ngspice simulator in combination with verilog synthesis software called Yosys and Isotel extension for embedded C/C++ (or other) co-simulation.
List of VHDL simulators in alphabetical order 

Simulator name License Author/company Supported languages Description
GHDL GPL2+ Tristan Gingold VHDL-1987, VHDL-1993, VHDL-2002, partial VHDL-2008 GHDL is a complete VHDL simulator, using the GCC technology.
Icarus Verilog GPL2+ Maciej SumiƄski Stephen Williams It supports the 1995, 2001 and 2005 versions of the standard, portions of SystemVerilog, and some extensions. VHDL preprocessor added that converts VHDL to Verilog
NVC GPL3 Nick Gasson VHDL-1993 NVC is a GPLv3 VHDL compiler and simulator aiming for IEEE 1076-2002 compliance. See these blog posts for background information. NVC has been successfully used to simulate several real-world designs.
YoSys GPL3 UnKnown Verilog-2005 design Yosys is a framework for Verilog RTL synthesis.


Tag Description
V1995 IEEE 1364-1995 Verilog
V2001 IEEE 1364-2001 Verilog
V2005 IEEE 1364-2005 Verilog
SV2005 IEEE 1800-2005 SystemVerilog
SV2009 IEEE 1800-2009 SystemVerilog
SV2012 IEEE 1800-2012 SystemVerilog
SV2017 IEEE 1800-2017 SystemVerilog
VHDL-1987 IEEE 1076-1987 VHDL
VHDL-1993 IEEE 1076-1993 VHDL
VHDL-2002 IEEE 1076-2002 VHDL
VHDL-2008 IEEE 1076-2008 VHDL
See also

SegWit: Cryptocurrency



Segregated Witness (SegWit) is a protocol upgrade providing protection from transaction malleability, and this is an increase of block capacity.

SegWit defines a new structure called a witness committed to blocks separately from the transaction merkle tree.

This structure contains data required to check transaction validity, and this is not required to determine transaction effects.

Signatures and redeem scripts are moved into this new structure.

This does not count add to the traditional one (1)MB block size limit and a new weight parameter is defined,.

These blocks are allowed to have maximum of 4 million weight units (WU).

A byte in the original one (1)MB zone of the block weighs 4 WU.

A byte in a witness structure only weighs 1 WU.

In and by this translation allowing blocks technically larger than one (1)MB without a hardforking change.

SegWit was the last protocol change needed to make the Lightning network safe to deploy on the Bitcoin network.

ScriptPubKey: Cryptocurrency


A ScriptPubKey is an ouput transaction script. It defines a condition that must be met to spend funds commited to the output in question.

See also: ScriptSig
To understand how transactions work on basic technical level, check blog post Types of Bitcoin transactions: Part I, Part 2.

More detailed description can be found in Bitcoin Wiki or in Developer guide.
Like Trezor? Get one here!

P2WPKH-within-P2SH (SegWit-aware): Cryptocurrency


P2WPKH-in-P2SH together with P2WSH-in-P2SH represents a Transaction which allows non-SegWit wallets to generate a SegWit transaction.

The P2SH addressing transaction used as the cornerstone that includes P2WPKH inside it.

When SegWit-aware node identifies P2SH containing P2WPKH then interprets enact native transactions.

ScriptPubKey: OP_HASH160 <20-byte-redeemScriptHash> OP_EQUAL 
ScriptSig:  <0 <20-byte-PublicKeyHash>> 
Witness:  <Signature> <PublicKey>
RedeemScript: 0 <20-byte-PublicKeyHash>
The P2SH redeem script is equal to 0 <20-byte-PublicKeyHash> and is the exact same as P2WPKH scriptPubKey.

The ScriptSig is a canonical push of data, and this data contain another canonical push of data, please read link: "ScriptSig" for definition.

To understand how transactions work on basic technical level, check blog post Types of Bitcoin transactions: Part I, Part 2.

More detailed description can be found in Bitcoin Wiki or in Developer guide.
Like Trezor? Get one here!

Transaction-output: Cryptocurrency

Transaction output

In the context of Bitcoin in reference of an output contains instructions for sending bitcoins.

In this value is the number of Satoshi (1 BTC = 100,000,000 Satoshi) that this output will be worth when claimed.

For more information about "Transaction output", see this external article.

See also: Change address, Transaction, Transaction input
Like Trezor? Get one here!

Transaction-input: Cryptocurrency

Transaction input

Transaction input In the context of Bitcoin is an input that is a reference to an output from a previous transaction.

Multiple inputs are often listed in a transaction.

An input can only be spent as a whole.

If payment is smaller than the input, the remaining change is sent back to the user's change address.

For more information, see this external article.

Making cryptocurrency user(s) experience easier, Trezor Wallet calculates all the inputs and outputs and displays only the final balances and transaction amounts.

Detailed information of the Trezor Wallet and transactions, see Transaction details.

See also: Change address, Transaction, Transaction output

Like Trezor? Get one here!