Index ¦ Archives ¦ Atom ¦ RSS > Category: moxie ¦ Atom

Ledger launches moxie-based secure VM technology for blockchain applications

So here's an interesting picture from Ledger. Check out the chewy center on the right -- that APP is a moxie binary!

bolos Image credit: Ledger's blog

Ledger, the hardware bitcoin wallet company, just announced BOLOS, the "Blockchain Open Ledger Operating Systems". What's most interesting to me, however, is that they have …

Moxie Mixie: Frustrating Remote Attackers with Container Specific Instruction Sets

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.

Consider, for instance, that remote code execution through attacks like buffer overflows depends on knowledge of the remote systems' instruction set. Knowledge …

Moxie talk at Bitcoin Dev Meetup

A very meta photo of me at the Toronto Bitcoin Developer Meetup yesterday, explaining moxie, and the value of a security oriented VM (moxiebox).

Photo used by permission from Jan Miranda.

An ELF Machine Number for Moxie

Moxie was assigned an official ELF machine number this week! You can check it out here:

All ELF files start with a header describing properties of the object at hand. One of the most important properties is the 'machine' type …

Compacting the code with shorter load/store offsets

You may recall that moxie supports two instructions lengths: 16- and 48-bit. Today I'm introducing a few 32-bit instructions as well.

Previously, moxie's "load and store with offset" instructions were defined as...

ldo.l00001100AAAABBBB iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
Load offset, long. Loads into $rA the 32-bit value from memory pointed at by …

Multiplication in the Real World

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 libsecp256k1, an elliptical curve crypto library in C. One of their first feedbacks here was that moxie provides no native way to …

Moxiebox and bitcoin

One of the more interesting developments around moxie is the adoption of the moxie architecture by the core bitcoin developers (Jeff Garzik, in particular), for an experimental project called moxiebox.

To quote Jeff...

The goal is to provide a secure, sandboxed execution mechanism that enables deterministic input, processing and output …

Sign Extension

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 …

NetHack in your browser

This is a moxie-rtems port of NetHack running on a modified version of the gdb moxie simulator compiled to javascript with emscripten.

Terminal uses canvas

Krister Lagerström is responsible for this marvellous hack.

Also, I suppose this blog entry represents a distribution of some GPL'd source code from GDB, so …

The Moxie Game Console?

Ok, not quite, but Krister Lagerström recently did something cool..


That's NetHack ported to RTEMS running on the moxie based Marin SoC.

It runs on QEMU, via "qemu-system-moxie --nographic --machine marin --kernel nethack.elf", or on FPGA hardware. I tested with a Nexys 3 Spartan-6 board by simply converting it …

© Anthony Green. Built using Pelican. Theme by Giulio Fidente on github.