Home

Ethash

Ethash is a proof-of-work hashing algorithm that was used by the Ethereum network from its launch in 2015 until the transition to proof-of-stake in 2022. It is designed to be memory-hard, requiring large amounts of RAM and memory bandwidth to compute, with the goal of reducing the advantage of specialized hardware and keeping mining accessible to a broad range of devices. A central concept in Ethash is the Directed Acyclic Graph (DAG), a large data set generated anew for each epoch and used as a source of data during mining. The DAG is regenerated periodically and grows in size over time, which increases the memory requirements for miners.

Mining with Ethash involves producing a valid nonce by running a Hashimoto-based computation. For a given block

Epochs of the protocol last 30,000 blocks (roughly five days under typical conditions), and the DAG is

With Ethereum’s transition to proof of stake in 2022, Ethash ceased to be used for consensus validation

header,
miners
derive
a
seed
hash
from
the
block’s
epoch,
use
it
to
generate
the
DAG,
and
repeatedly
perform
the
Hashimoto
function,
which
makes
random
accesses
into
the
DAG
to
produce
a
mix
hash.
The
final
result
is
a
256-bit
digest
that
must
be
below
a
target
determined
by
the
network’s
difficulty.
If
the
digest
meets
the
target,
the
miner
broadcasts
a
valid
block
header
with
the
corresponding
nonce.
updated
at
the
start
of
each
epoch.
This
design
favors
devices
with
substantial
memory
bandwidth
and
makes
device-specific
optimizations
more
challenging
to
exploit
without
large
RAM
capacities.
on
the
main
network.
It
remains
of
historical
and
technical
interest,
and
may
continue
to
be
relevant
to
certain
test
networks
and
other
projects
that
still
employ
Ethash.