<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="rss.xsl"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Walrus Docs Blog</title>
        <link>https://docs.wal.app/walrus/pr-preview/pr-3228/blog</link>
        <description>Walrus Docs Blog</description>
        <lastBuildDate>Thu, 27 Mar 2025 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <item>
            <title><![CDATA[Announcing Mainnet]]></title>
            <link>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/06_mainnet</link>
            <guid>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/06_mainnet</guid>
            <pubDate>Thu, 27 Mar 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[The production Walrus Mainnet is now live, and operated by]]></description>
            <content:encoded><![CDATA[<p>The production Walrus Mainnet is now live, and operated by
a decentralized network of over 100 storage nodes. Epoch 1 begun on March 25, 2025. The
network can now be used to
<a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/walrus-client/storing-blobs">publish and retrieve blobs</a>,
<a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/sites/getting-started/publishing-your-first-site">upload and browse Walrus Sites</a>, as
well as <a href="https://stake-wal.wal.app/" target="_blank" rel="noopener noreferrer" class="">stake and unstake</a> to determine future committees using the
live
<a href="https://www.walrus.xyz/wal-token" target="_blank" rel="noopener noreferrer" class="">Mainnet WAL token</a>.
On Mainnet, the Walrus security properties hold. And Walrus is now ready to satisfy
the needs of real applications.</p>
<!-- -->
<p>Walrus is <a href="https://github.com/MystenLabs/walrus" target="_blank" rel="noopener noreferrer" class="">open source</a>.
The Walrus protocol health is overseen by an
<a href="https://www.walrus.xyz/" target="_blank" rel="noopener noreferrer" class="">independent foundation</a> that is now
<a href="https://www.walrus.xyz/blog/walrus-foundation-fundraising" target="_blank" rel="noopener noreferrer" class="">well resourced</a> to support future
development and growth.
And, the community is collecting tools, resources and dapps for Walrus under
<a href="https://github.com/MystenLabs/awesome-walrus" target="_blank" rel="noopener noreferrer" class="">Awesome Walrus!</a></p>
<p>This is a significant milestone a little over 12 months after an initial small team started
designing the Walrus protocol. And a special thanks is due to the community of storage operators
that supported the development of Walrus through consecutive Testnet(s), as well as all
community members that integrated the protocol early and provided feedback to improve it.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="new-features">New features<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/06_mainnet#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features" translate="no">​</a></h2>
<p>Besides the promise of stability and security, the Mainnet release of Walrus comes with a few
notable new features and changes:</p>
<ul>
<li class="">
<p><strong>Blob attributes.</strong> Each Sui blob objects can have multiple attributes and values attached to it,
to encode application meta-data. The aggregator uses this facility for returning common HTTP
headers.</p>
</li>
<li class="">
<p><strong>Burn blob objects on Sui</strong>. The command line <code>walrus</code> tool is extended with commands to
"burn" Sui blob objects to reclaim the associated storage fee, making it cheaper to store blobs.</p>
</li>
<li class="">
<p><strong>CLI expiry time improvements.</strong> Now blob expiry can be expressed more flexibly when storing
blobs, through <code>--epochs max</code>, an RFC3339 date with <code>--earliest-expiry-time</code>, or the concrete end
epoch with <code>--end-epoch</code>.</p>
</li>
<li class="">
<p><strong>RedStuff with Reed-Solomon codes.</strong> The erasure code underlying
RedStuff was changed from RaptorQ to Reed-Solomon (RS) codes. Intense benchmarking suggests their
performance, for our parameter set, is similar, and the use of RS codes provides perfect
robustness, in that blobs can always be reconstructed given a threshold of slivers. We
thank <a href="https://www.jneu.net/" target="_blank" rel="noopener noreferrer" class="">Joachim Neu</a> for extensive feedback on this topic.</p>
</li>
<li class="">
<p><strong>TLS handing for storage node.</strong> Storage nodes can now be configured to serve TLS certificates
that are publicly trusted, such as those issues by cloud providers and public authorities such as
Let's Encrypt. This allows JavaScript clients to directly store and retrieve blobs from Walrus.</p>
</li>
<li class="">
<p><strong>JWT authentication for publisher.</strong> Now the publisher can be configured to only provide
services to authenticated users via consuming JWT tokens that can be distributed through any
authentication mechanism.</p>
</li>
<li class="">
<p><strong>Extensive logging and metrics.</strong> All services, from the storage node to aggregator and publisher
export metrics that can be used to build dashboards, and logs at multiple levels to troubleshoot
their operation.</p>
</li>
<li class="">
<p><strong>Health endpoint.</strong> Storage nodes and the CLI include a <code>health</code> command to check the status and
basic information of storage nodes. This is useful when allocating stake as well as monitoring
the network.</p>
</li>
<li class="">
<p><strong>Walrus Sites updates.</strong> The Mainnet Walrus Sites public portal will be hosted on the
<code>wal.app</code> domain name. Now Walrus Sites support deletable blobs to make their updates more
capital efficient. Those operating their own portals may also use their own domain names to serve
a Walrus Site. The
<a href="https://stake-wal.wal.app/" target="_blank" rel="noopener noreferrer" class="">Staking</a>,
<a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/getting-started">Docs</a>,
<a href="https://snowreads.wal.app/" target="_blank" rel="noopener noreferrer" class="">Snowreads</a>, and
<a href="https://flatland.wal.app/" target="_blank" rel="noopener noreferrer" class="">Flatland</a>
Walrus Sites are now on Mainnet.</p>
</li>
<li class="">
<p><strong>A subsidies contract.</strong> The Mainnet release of Walrus requires WAL for storing blobs, however
to enable early adopters to try the system, transition to it, the Walrus foundation operates a
smart contract to
<a href="https://github.com/MystenLabs/walrus/tree/main/contracts/subsidies" target="_blank" rel="noopener noreferrer" class="">acquire subsidized storage</a>.
The CLI client uses it automatically when storing blobs.</p>
</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="testnet-future-plans">Testnet future plans<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/06_mainnet#testnet-future-plans" class="hash-link" aria-label="Direct link to Testnet future plans" title="Direct link to Testnet future plans" translate="no">​</a></h2>
<p>The current Walrus Testnet will soon be wiped and restarted to align the codebase to the Mainnet
release. Going forward we will regularly wipe the Testnet, every few months. Developers should use
the Walrus Mainnet to get any level of stability. The Walrus Testnet is only there to test new
features before they are deployed in production.</p>
<p>We will not be operating a public portal to serve Walrus Sites on Testnet, to reduce costs and
incident response associated with free web hosting. Developers can still run a local portal
pointed to Testnet to test Walrus Sites.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="open-source-walrus-codebase">Open source Walrus codebase<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/06_mainnet#open-source-walrus-codebase" class="hash-link" aria-label="Direct link to Open source Walrus codebase" title="Direct link to Open source Walrus codebase" translate="no">​</a></h2>
<p>The Walrus codebase, including all smart contracts in Move, services in Rust, and documentation, is
now open sourced under an Apache 2.0 license, and hosted on
<a href="https://github.com/MystenLabs/walrus" target="_blank" rel="noopener noreferrer" class="">GitHub</a>. Since the main Walrus repository is now open to all,
and contains both documentation and smart contracts, we are retiring the <code>walrus-docs</code> repository.</p>
<p>Developers may find the Rust CLI client, and associated aggregator and publisher services of most
interest. These can be extended to specialize services to specific operational needs. They are
also a good illustration of how to interface with Walrus using Rust clients. A cleaner and more
stable Rust SDK is in the works as well.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="publisher-improvements-and-plans">Publisher improvements and plans<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/06_mainnet#publisher-improvements-and-plans" class="hash-link" aria-label="Direct link to Publisher improvements and plans" title="Direct link to Publisher improvements and plans" translate="no">​</a></h2>
<p>Publishing blobs on Mainnet consumes real WAL and SUI. To avoid uncontrolled costs to operations the
publisher service was augmented with facilities to authenticate requests and account for costs per
user.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Announcing Testnet v2]]></title>
            <link>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment</link>
            <guid>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment</guid>
            <pubDate>Thu, 16 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[We are today redeploying the Walrus Testnet to incorporate various improvements, including some]]></description>
            <content:encoded><![CDATA[<p>We are today redeploying the Walrus Testnet to incorporate various improvements, including some
backwards-incompatible changes. Make sure to get the latest binary and configuration as described
in the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/getting-started/advanced-setup">setup section</a>.</p>
<!-- -->
<p>Note that all blob data on the previous Testnet instance has been wiped. All blobs need to be
re-uploaded to the new Testnet instance, including Walrus Sites. In addition, there is a new version
of the WAL token, so your previous WAL tokens will not work anymore. To use the Testnet v2, you
need to obtain new WAL tokens.</p>
<p>In the following sections, we describe the notable changes and the actions required for existing
Walrus Sites.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="epoch-duration">Epoch duration<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#epoch-duration" class="hash-link" aria-label="Direct link to Epoch duration" title="Direct link to Epoch duration" translate="no">​</a></h2>
<p>The epoch duration has been increased from one day to two days to emphasize that this duration is
different from Sui epochs (at Mainnet, epochs will likely be multiple weeks long). In addition, the
maximum number of epochs a blob can be stored for has been reduced from 200 to 183 (corresponding
to one year).</p>
<p>The <code>walrus store</code> command now also supports the <code>--epochs max</code> flag, which will store
the blob for the maximum number of epochs. Note that the <code>--epochs</code> flag is now mandatory.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="new-features">New features<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features" translate="no">​</a></h2>
<p>Besides many improvements to the contracts and the storage-node service, the latest Walrus release
also brings several user-facing improvements.</p>
<ul>
<li class="">The <code>walrus store</code> command now supports storing multiple files at once. This is faster and more
cost-effective compared to storing each file separately as transactions can be batched through
<a href="https://docs.sui.io/concepts/transactions/prog-txn-blocks" target="_blank" rel="noopener noreferrer" class="">PTBs</a>. Notably, this is compatible
with glob patterns offered by many shells, so you can for example run a command like <code>walrus store *.png --epochs 100</code> to store all PNG files in the current directory.</li>
<li class="">The <code>walrus</code> CLI now supports creating, funding, and extending <em>shared blobs</em> using the <code>walrus share</code>, <code>walrus store --share</code>, and <code>walrus fund-shared-blob</code> commands. Shared blobs are an
example of collectively managed and funded blobs. See the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/walrus-client/storing-blobs#shared-blobs">shared blobs section</a> for more details.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="new-wal-token">New WAL token<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#new-wal-token" class="hash-link" aria-label="Direct link to New WAL token" title="Direct link to New WAL token" translate="no">​</a></h2>
<p>Along with the redeployment of Walrus, we have also deployed a fresh WAL contract. This
means that you cannot use any WAL token from the previous Testnet instance with the new Testnet
instance. You need to request new WAL tokens through the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/system-overview/available-networks#testnet-wal-faucet">Testnet WAL faucet</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="backwards-incompatible-changes">Backwards-incompatible changes<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#backwards-incompatible-changes" class="hash-link" aria-label="Direct link to Backwards-incompatible changes" title="Direct link to Backwards-incompatible changes" translate="no">​</a></h2>
<p>One reason for a full redeployment is to allow us to make some changes that are
backwards-incompatible. Many of those are related to the contracts and thus less visible to users.
There are, however, some changes that may affect you.</p>
<h3 class="anchor anchorTargetStickyNavbar_kP7e" id="configuration-files">Configuration files<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#configuration-files" class="hash-link" aria-label="Direct link to Configuration files" title="Direct link to Configuration files" translate="no">​</a></h3>
<p>The format of the configuration files for storage nodes and clients has been changed. Make sure to
use the latest version of the configuration files, see the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/getting-started/advanced-setup#configuration">configuration section</a>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kP7e" id="cli-options">CLI options<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#cli-options" class="hash-link" aria-label="Direct link to CLI options" title="Direct link to CLI options" translate="no">​</a></h3>
<p>Several CLI options of the <code>walrus</code> CLI have been changed. Notably, all "short" variants of options
(e.g., <code>-e</code> instead of <code>--epochs</code>) have been removed to prevent future confusion with new options.
Additionally, the <code>--epochs</code> flag is now mandatory for the <code>walrus store</code> command (this also affects
the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/walrus-client/json-mode">JSON API</a>).</p>
<p>Please refer to the CLI help (<code>walrus --help</code>, or <code>walrus &lt;command&gt; --help</code>) for further details.</p>
<h3 class="anchor anchorTargetStickyNavbar_kP7e" id="http-apis">HTTP APIs<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#http-apis" class="hash-link" aria-label="Direct link to HTTP APIs" title="Direct link to HTTP APIs" translate="no">​</a></h3>
<p>The paths, request, and response formats of the HTTP APIs have changed for the storage nodes, and
also the aggregator and publisher. Please refer to the section on the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/http-api/storing-blobs">HTTP API</a> for further details.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="effects-on-and-actions-required-for-existing-walrus-sites">Effects on and actions required for existing Walrus Sites<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#effects-on-and-actions-required-for-existing-walrus-sites" class="hash-link" aria-label="Direct link to Effects on and actions required for existing Walrus Sites" title="Direct link to Effects on and actions required for existing Walrus Sites" translate="no">​</a></h2>
<p>The Walrus Sites contracts have not changed, which means that all corresponding objects on Sui are
still valid. However, the resources now point to blob IDs that do not yet exist on the new Testnet.
The easiest way to fix existing sites is to simply update them with the <code>--force</code> flag:</p>
<div class="language-sh codeBlockContainer_gyLn theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_g1Oz"><pre tabindex="0" class="prism-code language-sh !pt-[14px] codeBlock_qGQc thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_p187"><span class="token-line" style="color:#393A34"><span class="token plain">site-builder update --epochs &lt;number of epochs&gt; --force &lt;path to site&gt; &lt;existing site object&gt;</span><br></span></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="new-move-contracts--documentation">New Move contracts &amp; documentation<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/05_testnet_redeployment#new-move-contracts--documentation" class="hash-link" aria-label="Direct link to New Move contracts &amp; documentation" title="Direct link to New Move contracts &amp; documentation" translate="no">​</a></h2>
<p>As part of the new Testnet release of Walrus, the Move smart contracts have been updated; the
deployed version can be found in the <a href="https://github.com/MystenLabs/walrus-docs/tree/main/contracts" target="_blank" rel="noopener noreferrer" class=""><code>walrus-docs</code>
repository</a>.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Announcing Walrus: A Decentralized Storage and Data Availability Protocol]]></title>
            <link>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/01_announcing_walrus</link>
            <guid>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/01_announcing_walrus</guid>
            <pubDate>Fri, 01 Nov 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Walrus is an innovative decentralized storage network for blockchain apps and autonomous agents. The]]></description>
            <content:encoded><![CDATA[<p>Walrus is an innovative decentralized storage network for blockchain apps and autonomous agents. The
Walrus storage system is being released today as a developer preview for Sui builders in order to
gather feedback. We expect a broad rollout to other web3 communities very soon!</p>
<!-- -->
<p>Leveraging innovations in erasure coding, Walrus enables fast and robust encoding of unstructured
data blobs into smaller slivers distributed and stored over a network of storage nodes. A subset of
slivers can be used to rapidly reconstruct the original blob, even when up to two-thirds of the
slivers are missing. This is possible while keeping the replication factor down to a minimal 4x-5x,
similar to existing cloud-based services, but with the additional benefits of decentralization and
resilience to more widespread faults.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="the-replication-challenge">The Replication Challenge<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/01_announcing_walrus#the-replication-challenge" class="hash-link" aria-label="Direct link to The Replication Challenge" title="Direct link to The Replication Challenge" translate="no">​</a></h2>
<p>Sui is the most advanced blockchain system in relation to storage on validators, with innovations
such as a <a href="https://docs.sui.io/concepts/tokenomics/storage-fund" target="_blank" rel="noopener noreferrer" class="">storage fund</a> that future-proofs
the cost of storing data onchain. Nevertheless, Sui still requires complete data replication among
all validators, resulting in a replication factor of 100x or more in today’s Sui Mainnet. While this
is necessary for replicated computing and smart contracts acting on the state of the blockchain, it
is inefficient for simply storing unstructured data blobs, such as music, video, blockchain history,
etc.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="introducing-walrus-efficient-and-robust-decentralized-storage">Introducing Walrus: Efficient and Robust Decentralized Storage<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/01_announcing_walrus#introducing-walrus-efficient-and-robust-decentralized-storage" class="hash-link" aria-label="Direct link to Introducing Walrus: Efficient and Robust Decentralized Storage" title="Direct link to Introducing Walrus: Efficient and Robust Decentralized Storage" translate="no">​</a></h2>
<p>To tackle the challenge of high replication costs, Mysten Labs has developed Walrus, a decentralized
storage network offering exceptional data availability and robustness with a minimal replication
factor of 4x-5x. Walrus provides two key benefits:</p>
<ol>
<li class="">
<p><strong>Cost-Effective Blob Storage:</strong> Walrus allows for the uploading of gigabytes of data at a time
with minimal cost, making it an ideal solution for storing large volumes of data. Walrus can do
this because the data blob is transmitted only once over the network, and storage nodes only
spend a fraction of resources compared to the blob size. As a result, the more storage nodes the
system has, the fewer resources each storage node uses per blob.</p>
</li>
<li class="">
<p><strong>High Availability and Robustness:</strong> Data stored on Walrus enjoys enhanced reliability and
availability under fault conditions. Data recovery is still possible even if two-thirds of the
storage nodes crash or come under adversarial control. Further, availability may be certified
efficiently without downloading the full blob.</p>
</li>
</ol>
<p>Decentralized storage can take multiple forms in modern ecosystems. For instance, it offers better
guarantees for digital assets traded as NFTs. Unlike current designs that store data off-chain,
decentralized storage ensures users own the actual resource, not just metadata, mitigating risks of
data being taken down or misrepresented.</p>
<p>Additionally, decentralized storage is not only useful for storing data such as pictures or files
with high availability; it can also double as a low-cost data availability layer for rollups. Here,
sequencers can upload transactions on Walrus, and the rollup executor only needs to temporarily
reconstruct them for execution.</p>
<p>We also believe Walrus will accompany existing disaster recovery strategies for millions of
enterprise companies. Not only is Walrus low-cost, it also provides unmatched layers of data
availability, integrity, transparency, and resilience that centralized solutions by design cannot
offer.</p>
<p>Walrus is powered by the Sui Network and scales horizontally to hundreds or thousands of networked
decentralized storage nodes. This should enable Walrus to offer Exabytes of storage at costs
competitive with current centralized offerings, given the higher assurance and decentralization.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="the-future-of-walrus">The Future of Walrus<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/01_announcing_walrus#the-future-of-walrus" class="hash-link" aria-label="Direct link to The Future of Walrus" title="Direct link to The Future of Walrus" translate="no">​</a></h2>
<p>By releasing this developer preview we hope to share some of the design decisions with the
decentralized app developer community and gather feedback on the approach and the APIs for storing,
retrieving, and certifying blobs. In this developer preview, all storage nodes are operated by
Mysten Labs to help us understand use cases, fix bugs, and improve the performance of the software.</p>
<p>Future updates to Walrus will allow for dynamically changing the set of decentralized storage nodes,
as well as changing the mapping of what slivers are managed by each storage node. The available
operations and tools will also be expanded to cover more storage-related use cases. Many of these
functions will be designed with the feedback we gather in mind.</p>
<p>Stay tuned for more updates on how Walrus will revolutionize data storage in the web3 ecosystem.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="what-can-developers-build">What can developers build?<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/01_announcing_walrus#what-can-developers-build" class="hash-link" aria-label="Direct link to What can developers build?" title="Direct link to What can developers build?" translate="no">​</a></h2>
<p>As part of this developer preview, we provide a binary client (currently macOS, ubuntu) that can be
operated from the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/walrus-client/storing-blobs">command line interface</a>, a <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/walrus-client/json-mode">JSON API</a>, and an <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/http-api/storing-blobs">HTTP API</a>. We also offer the community an aggregator and
publisher service and a Devnet deployment of 10 storage nodes operated by Mysten Labs.</p>
<p>We hope developers will experiment with building applications that leverage the Walrus Decentralized
Store in a variety of ways. As examples, we hope to see the community build:</p>
<ul>
<li class="">
<p><strong>Storage of media for NFT or dapps:</strong> Walrus can directly store and serve media such as images,
sounds, sprites, videos, other game assets, etc. This is publicly available media that can be
accessed using HTTP requests at caches to create multimedia dapps.</p>
</li>
<li class="">
<p><strong>AI-related use cases:</strong> Walrus can store clean data sets of training data, datasets with a known
and verified provenance, model weights, and proofs of correct training for AI models. Or it may be
used to store and ensure the availability and authenticity of an AI model output.</p>
</li>
<li class="">
<p><strong>Storage of long term archival of blockchain history:</strong> Walrus can be used as a lower-cost
decentralized store to store blockchain history. For Sui, this can include sequences of
checkpoints with all associated transaction and effects content, as well as historic snapshots of
the blockchain state, code, or binaries.</p>
</li>
<li class="">
<p><strong>Support availability for L2s:</strong> Walrus enables parties to certify the availability of blobs, as
required by L2s that need data to be stored and attested as available to all. This may also
include the availability of extra audit data such as validity proofs, zero-knowledge proofs of
correct execution, or large fraud proofs.</p>
</li>
<li class="">
<p><strong>Support a full decentralized web experience:</strong> Walrus can host full decentralized web
experiences including all resources (such as js, css, html, and media). These can provide content
but also host the UX of dapps, enabling fully decentralized front- and back-ends on chain. It
brings the full "web" back into "web3".</p>
</li>
<li class="">
<p><strong>Support subscription models for media:</strong> Creators can store encrypted media on Walrus and only
provide access via decryption keys to parties that have paid a subscription fee or have paid for
content. (Note that Walrus provides the storage; encryption and decryption must be done off
Walrus).</p>
</li>
</ul>
<p>We are excited to see what else the web3 developer community can imagine!</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="getting-started">Getting Started<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/01_announcing_walrus#getting-started" class="hash-link" aria-label="Direct link to Getting Started" title="Direct link to Getting Started" translate="no">​</a></h2>
<p>For this developer preview the public Walrus Devnet is openly available to all developers. Developer
documentation is available at <code>&lt;https://docs.wal.app&gt;</code>.</p>
<p>SUI Testnet token is the main currency for interacting with Walrus. Developers pay for Walrus Devnet
storage using SUI Testnet tokens which can be acquired at the <a href="https://discord.com/channels/916379725201563759/1037811694564560966" target="_blank" rel="noopener noreferrer" class="">Sui Testnet Discord
faucet</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="one-more-thing-">One more thing …<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/01_announcing_walrus#one-more-thing-" class="hash-link" aria-label="Direct link to One more thing …" title="Direct link to One more thing …" translate="no">​</a></h2>
<p>The <a href="https://walrus.site/" target="_blank" rel="noopener noreferrer" class="">Walrus Sites website</a>, the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/getting-started">Walrus docs</a>, and
<a href="https://blog.walrus.site/" target="_blank" rel="noopener noreferrer" class="">this very blog</a> are hosted on Walrus. To learn more about Walrus Sites
and how you can deploy your own, <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/sites/introduction/components">click here</a>.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Announcing Testnet]]></title>
            <link>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update</link>
            <guid>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update</guid>
            <pubDate>Thu, 17 Oct 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Today, a community of operators launches the first public Walrus Testnet.]]></description>
            <content:encoded><![CDATA[<p>Today, a community of operators launches the first public Walrus Testnet.
This is an important milestone in validating the operation of Walrus as a decentralized blob store,
by operating it on a set of independent storage nodes, that change over time through a delegated
proof of stake mechanism. The Testnet also brings functionality updates relating to governance,
epochs, and blob deletion.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="blob-deletion">Blob deletion<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update#blob-deletion" class="hash-link" aria-label="Direct link to Blob deletion" title="Direct link to Blob deletion" translate="no">​</a></h2>
<p>The most important user-facing new feature is optional blob deletion. The uploader of a blob can
optionally indicate a blob is "deletable". This information is stored in the Sui blob metadata
object, and is also included in the event denoting when the blob is certified. Subsequently, the
owner of the Sui blob metadata object can "delete" it. As a result storage for the remaining
period is reclaimed and can be used by subsequent blob storage operations.</p>
<p>Blob deletion allows more fine-grained storage cost management: smart contracts that wrap blob
metadata objects can define logic that stores blobs and delete them to minimize costs, and reclaim
storage space before Walrus epochs end.</p>
<p>However, blob deletion is not an effective privacy mechanism in itself: copies of the blob may exist
outside Walrus storage nodes on caches and end-user stores or devices. Furthermore, if the identical
blob is stored by multiple Walrus users, the blob will still be available on Walrus until no copy
exists. Thus deleting your own copy of a blob cannot guarantee that it is deleted from Walrus as a
whole.</p>
<ul>
<li class="">Find out how to
<a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/walrus-client/storing-blobs#reclaiming-space-via-deletable-blobs">upload and delete deletable blobs</a>
through the CLI.</li>
<li class="">Find out more about how <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/system-overview/operations#delete">delete operations work</a>.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="epochs">Epochs<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update#epochs" class="hash-link" aria-label="Direct link to Epochs" title="Direct link to Epochs" translate="no">​</a></h2>
<p>Walrus Testnet enables multiple epochs. Initially, the epoch duration is set to a single day to
ensure the logic of epoch change is thoroughly tested. At Mainnet, epochs will likely be multiple
weeks long.</p>
<p>The progress of epochs makes the expiry epoch of blobs meaningful, and blobs will become unavailable
after their expiry epoch. The store command may be used to extend the expiry epoch of a blob that is
still available. This operation is efficient and only affects payments and metadata, and does not
re-upload blob contents.</p>
<ul>
<li class="">Find out the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/walrus-client/storing-blobs#walrus-system-information">current epoch</a> through the CLI.</li>
<li class="">Find out how to store a blob for
<a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/walrus-client/storing-blobs">multiple epochs</a>.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="the-wal-token-and-the-testnet-wal-faucet">The WAL token and the Testnet WAL faucet<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update#the-wal-token-and-the-testnet-wal-faucet" class="hash-link" aria-label="Direct link to The WAL token and the Testnet WAL faucet" title="Direct link to The WAL token and the Testnet WAL faucet" translate="no">​</a></h2>
<p>Payments for blob storage and extending blob expiry are denominated in Testnet WAL, a
Walrus token issued on the Sui Testnet. Testnet WAL has no value, and an unlimited supply; so no
need to covet or hoard it, it's just for testing purposes and only issued on Sui Testnet.</p>
<p>WAL also has a smaller unit called FROST, similar to MIST for SUI. 1 WAL is equal to 1 billion
(1000000000) FROST.</p>
<p>To make Testnet WAL available to all who want to experiment with the Walrus Testnet we provide a
utility and smart contract to convert Testnet SUI (which also has no value) into Testnet WAL using
a one-to-one exchange rate. This is chosen arbitrarily, and generally one should not read too much
into the actual WAL denominated costs of storage on Testnet. They have been chosen arbitrarily.</p>
<p>Find out how to <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/system-overview/available-networks#testnet-wal-faucet">request Testnet WAL tokens</a> through the CLI.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="decentralization-through-staking--unstaking">Decentralization through staking &amp; unstaking<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update#decentralization-through-staking--unstaking" class="hash-link" aria-label="Direct link to Decentralization through staking &amp; unstaking" title="Direct link to Decentralization through staking &amp; unstaking" translate="no">​</a></h2>
<p>The WAL token may also be used to stake with storage operators. Staked WAL can be unstaked and
re-staked with other operators or used to purchase storage.</p>
<p>Each epoch storage nodes are selected and allocated storage shards according to their delegated
stake. At the end of each epoch payments for storing blobs for the epoch are distributed to storage
nodes and those that delegate stake to them. Furthermore, important network parameters (such as
total available storage and storage price) are set by the selected storage operators each epoch
according to their stake weight.</p>
<p>A staking web dApp is provided to experiment with this functionality. Community members have also
created explorers that can be used to view storage nodes when considering who to stake with. Staking
ensures that the ultimate governance of Walrus, directly in terms of storage nodes, and indirectly
in terms of parameters and software they chose, rests with WAL Token holders.</p>
<p>Under the hood and over the next months we will be testing many aspects of epoch changes and
storage node committee changes: better shard allocation mechanisms upon changes or storage node
stake; efficient ways to sync state between storage nodes; as well as better ways for storage nodes
to follow Sui event streams.</p>
<ul>
<li class="">Explore the <a href="https://stake.walrus.site/" target="_blank" rel="noopener noreferrer" class="">Walrus staking dApp</a>.</li>
<li class="">Look at recent activity on the <a href="https://walruscan.com/testnet/home" target="_blank" rel="noopener noreferrer" class="">Walrus Explorer</a>.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="new-move-contracts--documentation">New Move contracts &amp; documentation<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update#new-move-contracts--documentation" class="hash-link" aria-label="Direct link to New Move contracts &amp; documentation" title="Direct link to New Move contracts &amp; documentation" translate="no">​</a></h2>
<p>As part of the Testnet release of Walrus, the documentation and Move Smart contracts have been
updated, and can be found in the <a href="https://github.com/MystenLabs/walrus-docs" target="_blank" rel="noopener noreferrer" class=""><code>walrus-docs</code>
repository</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="new-walrus-sites-features">New Walrus Sites features<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update#new-walrus-sites-features" class="hash-link" aria-label="Direct link to New Walrus Sites features" title="Direct link to New Walrus Sites features" translate="no">​</a></h2>
<p>With the move to Walrus Testnet, Walrus Sites have also been updated! The new features in this
update greatly increase the flexibility, speed, and security of Walrus Sites. Developers can now
specify client-side routing rules, and add custom HTTP headers to the portals' responses for their
site, expanding the possibilities for what Walrus Sites can do.</p>
<p>Migrate now to take advantage of these new features! The old Walrus Sites, based on Walrus Devnet,
will still be available for a short time. However, Devnet will be wiped soon (as described below),
so it is recommended to migrate as soon as possible.</p>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="discontinuation-of-walrus-devnet">Discontinuation of Walrus Devnet<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/04_testnet_update#discontinuation-of-walrus-devnet" class="hash-link" aria-label="Direct link to Discontinuation of Walrus Devnet" title="Direct link to Discontinuation of Walrus Devnet" translate="no">​</a></h2>
<p>The previous Walrus Devnet instance is now deprecated and <strong>will be shut down after 2024-10-31</strong>.
All data stored on Walrus Devnet (including Walrus Sites) will no longer be accessible at that
point. You need to re-upload all data to Walrus Testnet if you want it to remain accessible. Walrus
Sites also need to be migrated.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Announcing the Official Walrus Whitepaper]]></title>
            <link>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/03_whitepaper</link>
            <guid>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/03_whitepaper</guid>
            <pubDate>Tue, 17 Sep 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[In June, Mysten Labs announced Walrus, a new decentralized secure blob store design, and introduced]]></description>
            <content:encoded><![CDATA[<p>In June, Mysten Labs announced Walrus, a new decentralized secure blob store design, and introduced
a developer preview that currently stores over <a href="https://capacity.walrus.site/" target="_blank" rel="noopener noreferrer" class="">12TiB</a> of data.
<a href="https://info.breakingtheice.sui.io/" target="_blank" rel="noopener noreferrer" class="">Breaking the Ice</a> gathered over 200 developers to build apps
leveraging decentralized storage.</p>
<!-- -->
<p>It is time to unveil the next stage of the project: Walrus will become an independent decentralized
network with its own utility token, WAL, that will play a key role in the operation and governance
of the network. Walrus will be operated by storage nodes through a delegated proof-of-stake
mechanism using the WAL token. An independent Walrus foundation will encourage the advancement and
adoption of Walrus, and support its community of users and developers.</p>
<p>Today, we published the Walrus <a href="https://docs.wal.app/walrus/pr-preview/pr-3228/assets/files/walrus_whitepaper_v2-31701a689e75cc47048440b56789f388.pdf" target="_blank" class="">whitepaper</a> (also on
<a href="https://github.com/MystenLabs/walrus-docs/blob/main/walrus.pdf" target="_blank" rel="noopener noreferrer" class="">GitHub</a>) that offers
additional details, including:</p>
<ul>
<li class="">The encoding scheme and Read / Write operations Walrus uses to ensure both security and efficient
scaling to 100s and 1000s of storage nodes, including interactions with the Sui blockchain which
serves as a coordination layer for Walrus’ operations.</li>
<li class="">The reconfiguration of storage nodes across epochs, and how the protocol ensures available blobs
on Walrus remain available over long periods of time.</li>
<li class="">The tokenomics of Walrus based on the WAL token, including how staking and staking rewards are
structured, how pricing and payments for storage are handled and distributed in each epoch, and
the governance of key system parameters.</li>
<li class="">Forward-looking design options, such as a cheap mechanism to challenge and audit storage nodes,
options for ensuring reads with a higher service quality, possibly against a payment, and designs
that empower light nodes to meaningfully contribute to the protocol’s robustness, serve reads, and
be rewarded.</li>
</ul>
<p>The whitepaper focuses on the steady-state design aspects of Walrus. Further details about the
project, such as timelines, opportunities for community participation, how to join the network as a
storage node, and plans around light nodes, will be shared in subsequent posts.</p>
<p>To be part of this journey:</p>
<ul>
<li class="">Follow us on <a href="https://x.com/WalrusProtocol" target="_blank" rel="noopener noreferrer" class="">Twitter</a></li>
<li class="">Join our <a href="https://discord.com/invite/walrusprotocol" target="_blank" rel="noopener noreferrer" class="">Discord</a></li>
<li class=""><a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/getting-started">Build apps</a> on Walrus</li>
<li class=""><a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/sites/introduction/components">Publish a Walrus Site</a> and share it</li>
</ul>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Devnet Update]]></title>
            <link>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/02_devnet_update</link>
            <guid>https://docs.wal.app/walrus/pr-preview/pr-3228/blog/02_devnet_update</guid>
            <pubDate>Mon, 12 Aug 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[We have redeployed the Walrus Devnet to incorporate various improvements to the Walrus storage nodes]]></description>
            <content:encoded><![CDATA[<p>We have redeployed the Walrus Devnet to incorporate various improvements to the Walrus storage nodes
and clients. In this process, all blobs stored on Walrus were wiped. Note that this may happen again
on Devnet and Testnet, but obviously <em>not on the future Mainnet</em>.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="migration-and-re-deployment-of-walrus-sites">Migration and Re-deployment of Walrus Sites<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/02_devnet_update#migration-and-re-deployment-of-walrus-sites" class="hash-link" aria-label="Direct link to Migration and Re-deployment of Walrus Sites" title="Direct link to Migration and Re-deployment of Walrus Sites" translate="no">​</a></h2>
<p>You can obtain the latest version of the <code>walrus</code> binary and the new configuration as described in
the <a class="" href="https://docs.wal.app/walrus/pr-preview/pr-3228/docs/getting-started/advanced-setup">setup chapter</a>.</p>
<p>If you had deployed any Walrus Sites, the site object on Sui and any SuiNS name are still valid.
However, you need to re-store all blobs on Walrus. You can achieve this by running the site-builder
tool (from the <code>walrus-sites</code> directory) as follows:</p>
<div class="language-sh codeBlockContainer_gyLn theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_g1Oz"><pre tabindex="0" class="prism-code language-sh !pt-[14px] codeBlock_qGQc thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_p187"><span class="token-line" style="color:#393A34"><span class="token plain">./target/release/site-builder --config site-builder/assets/builder-example.yaml update --force \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    &lt;path to the site&gt; &lt;site object ID&gt;</span><br></span></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_kP7e" id="changes">Changes<a href="https://docs.wal.app/walrus/pr-preview/pr-3228/blog/02_devnet_update#changes" class="hash-link" aria-label="Direct link to Changes" title="Direct link to Changes" translate="no">​</a></h2>
<p>Besides many improvements to the storage nodes, the new version of Walrus includes the following
user-facing changes:</p>
<ul>
<li class="">Improved coin management: The client now better selects coins for gas and storage fees. Users no
longer require multiple coins in their wallet.</li>
<li class="">Improved connection management: The client now limits the number of parallel connections to
improve performance for users with low network bandwidth storing large blobs.</li>
<li class="">OpenAPI specification: Walrus storage nodes, aggregators, and publishers expose their API
specifications at the path <code>/v1/api</code>.</li>
<li class="">System info in JSON: The <code>info</code> command is now also available in JSON mode.</li>
<li class="">Client version: The <code>walrus</code> CLI now has a <code>--version</code> option.</li>
<li class="">Support for the empty blob: The empty blob is now supported by Walrus.</li>
<li class="">Default configuration-file paths: The client now looks for configuration files in
<code>~/.config/walrus</code> in addition to <code>~/.walrus</code> and recognizes the extension <code>.yml</code> in addition to
<code>.yaml</code>.</li>
<li class="">Home directory in paths: Paths specified in configuration files now expand the <code>~</code> symbol at the
beginning to the user's home directory.</li>
<li class="">More robust store and status check: The <code>store</code> and <code>blob-status</code> commands are now more robust
against Sui full nodes that aggressively prune past events and against load-balancers that send
transactions to different full nodes.</li>
<li class="">Fix CLI parsing: The <code>walrus</code> CLI now properly handles hyphens in blob IDs.</li>
</ul>
<p>This update also increases the number of shards to 1000, which is more representative of the
expected value in Testnet and Mainnet.</p>]]></content:encoded>
        </item>
    </channel>
</rss>