<!DOCTYPE html>
<html lang="en">

<head>
  <!-- ## for client-side less
  <link rel="stylesheet/less" type="text/css" href="./theme/css/style.less">
  <script src="http://cdnjs.cloudflare.com/ajax/libs/less.js/1.7.3/less.min.js" type="text/javascript"></script>
  -->
  <link rel="stylesheet" type="text/css" href="./theme/css/style.css">
  <link rel="stylesheet" type="text/css" href="./theme/css/pygments.css">
  <link rel="stylesheet" type="text/css" href="//fonts.googleapis.com/css?family=PT+Sans|PT+Serif|PT+Mono">

  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta name="author" content="Anthony Green">
  <meta name="description" content="Posts and writings by Anthony Green">

  <link href="http://moxielogic.github.io/blog/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="The Moxie Blog Atom" />
  <link href="http://moxielogic.github.io/blog/feeds/all.rss.xml" type="application/rss+xml" rel="alternate" title="The Moxie Blog RSS" />


  <title>
    The Moxie Blog
  </title>

</head>

<body>
  <aside>
    <div id="user_meta">
      <a href=".">
        <img src="http://moxielogic.github.io/images/ml.png" alt="logo">
      </a>
      <h2><a href=".">The Moxie Blog</a></h2>
      <p>A development blog for the <b>moxie processor</b>, an open source embedded soft-core processor.</p>
      <ul>
        <li><a href="./pages/about.html">About</a></li>
        <li><a href="./pages/author.html">Author</a></li>
        <li><a href="http://moxielogic.org/blog/pages/architecture.html" target="_blank">Architecture</a></li>
        <li><a href="http://moxielogic.org/blog/pages/toolchain.html" target="_blank">Toolchain</a></li>
      </ul>
    </div>
  </aside>

  <main>
    <header>
      <p>
      <a href=".">Index</a> &brvbar; <a href="./archives.html">Archives</a>
      &brvbar; <a href="http://moxielogic.github.io/blog/feeds/all.atom.xml">Atom</a>
      &brvbar; <a href="http://moxielogic.github.io/blog/feeds/all.rss.xml">RSS</a>
      </p>
    </header>

<article>
  <div class="article_title">
    <h1><a href="./red-light-green-light.html">Evaluating DejaGnu results with Red Light Green Light</a></h1>
  </div>
  <div class="article_text">
    <p>Last year I hacked up a tool in frustration called <a href="https://rl.gl">Red Light Green
Light</a> (rlgl) -- a proof-of-concept effort to
demonstrate a git-centric way to manage "quality gates" in a CI/CD
pipeline.</p>
<p>A CI/CD quality gate is a process that evaluates the quality of a
software artefact before allowing …</p>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./introducing-bolos.html">Ledger launches moxie-based secure VM technology for blockchain applications</a></h1>
  </div>
  <div class="article_text">
    <p>So here's an interesting picture from <a href="https://www.ledgerwallet.com">Ledger</a>.  Check out the chewy center on the right -- that APP is a <em>moxie</em> binary!</p>
<p><center>
<img alt="bolos" src="https://cdn-images-2.medium.com/max/800/1*K5LiFrZiqHWMD2QkiioIcQ.png">
<em>Image credit: Ledger's <a href="https://medium.com/@Ledger/introducing-bolos-blockchain-open-ledger-operating-system-b9893d09f333#.loy1hd3s3">blog</a></em>
</center></p>
<p><a href="https://www.ledgerwallet.com">Ledger</a>, the hardware bitcoin wallet company, just announced
<a href="https://medium.com/@Ledger/introducing-bolos-blockchain-open-ledger-operating-system-b9893d09f333#.loy1hd3s3">BOLOS</a>, the "Blockchain Open Ledger Operating Systems".  What's
most interesting to me, however, is that they have …</p>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./moxie-mixie.html">Moxie Mixie: Frustrating Remote Attackers with Container Specific Instruction Sets</a></h1>
  </div>
  <div class="article_text">
    <p>While there are many existing technologies to frustrate remote
attackers, it can be fun to think up novel protections that might be
used to layer on additional defences.</p>
<p>Consider, for instance, that remote code execution through attacks
like buffer overflows depends on knowledge of the remote systems'
instruction set.  Knowledge …</p>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./moxie-talk-at-bitcoin-dev-meetup.html">Moxie talk at Bitcoin Dev Meetup</a></h1>
  </div>
  <div class="article_text">
    <p><center>
<img alt="" src="http://moxielogic.github.io/images/bcdev.jpeg">
</center></p>
<p>A very meta photo of me at the Toronto Bitcoin Developer Meetup
yesterday, explaining moxie, and the value of a security oriented VM
(moxiebox).</p>
<p>Photo used by permission from Jan Miranda.</p>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./elf-machine-number.html">An ELF Machine Number for Moxie</a></h1>
  </div>
  <div class="article_text">
    <p>Moxie was assigned an official ELF machine number this week!  You can
check it out here:
<a href="http://www.sco.com/developers/gabi/latest/ch4.eheader.html">http://www.sco.com/developers/gabi/latest/ch4.eheader.html</a>.</p>
<p>All ELF files start with a header describing properties of the object
at hand.  One of the most important properties is the 'machine' type …</p>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./shorter-load-store-offsets.html">Compacting the code with shorter load/store offsets</a></h1>
  </div>
  <div class="article_text">
    <p>You may recall that moxie supports two instructions lengths: 16- and 48-bit.
Today I'm introducing a few 32-bit instructions as well.</p>
<p>Previously, moxie's "load and store with offset" instructions were
defined as...</p>
<blockquote>
<table width='100%'><tr><td><b>ldo.l</b></td><td align='right'><b>00001100AAAABBBB iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii</b></td></tr></table>
Load offset, long.  Loads into <b>$rA</b> the 32-bit value from memory pointed at by …</blockquote>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./real-world-multiply.html">Multiplication in the Real World</a></h1>
  </div>
  <div class="article_text">
    <p>The bitcoin team has been exercising moxie in ways that it hasn't been
stressed before.  For example, they've been examining the code quality
for their crypto libraries like
<a href="https://github.com/bitcoin/secp256k1">libsecp256k1</a>, an elliptical
curve crypto library in C.  One of their first feedbacks here was that
moxie provides no native way to …</p>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./moxiebox-and-bitcoint.html">Moxiebox and bitcoin</a></h1>
  </div>
  <div class="article_text">
    <p><center>
<img alt="http://bitcoin.org" src="http://moxielogic.org/images/Bitcoin-logo.jpg">
</center></p>
<p>One of the more interesting developments around moxie is the adoption
of the <a href="http://moxielogic.org/blog/pages/architecture.html">moxie
architecture</a> by
the core bitcoin developers (<a href="http://garzikrants.blogspot.ca/">Jeff
Garzik</a>, in particular), for an
experimental project called
<a href="http://github.com/jgarzik/moxiebox"><code>moxiebox</code></a>.</p>
<p>To quote Jeff...</p>
<blockquote>
<p>The goal is to provide a secure, sandboxed execution mechanism that enables deterministic input, processing and output …</p></blockquote>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./new-site.html">New Site</a></h1>
  </div>
  <div class="article_text">
    <p>I had finally had enough of the wiki spammers, and decided to migrate
all of my content over to a static github hosted site.  I believe all
of the blog entries migrated over now, and I'm in the process of
migrating the wiki content over to pages you can link …</p>
  </div>
</article>
<hr />
<article>
  <div class="article_title">
    <h1><a href="./sign-extension.html">Sign Extension</a></h1>
  </div>
  <div class="article_text">
    <p>Moxie zero-extends all 8 and 16-bit loads from memory. Until recently,
however, the GCC port didn't understand how loads worked, and would
always shift loaded values back and forth to either empty out the upper
bits or sign-extend the loaded value. While correct, it was overly
bloated. If we're loading …</p>
  </div>
</article>

<footer>
<div id="paginator">
<a href="./index2.html" class="button_accent">&larr; Older Posts</a>

</div>
</footer>

    <div id="ending_message">
      <p>&copy; Anthony Green. Built using <a href="http://getpelican.com" target="_blank">Pelican</a>. Theme by Giulio Fidente on <a href="https://github.com/gfidente/pelican-svbhack" target="_blank">github</a>. </p>
    </div>
  </main>
</body>
</html>