Skip to content

Releases: Aevust/rincoin-sim

Rincoin-Sim v1.0.7: Customized Halving & RIN3 Enforcement Validation

Choose a tag to compare

@Aevust Aevust released this 18 Jun 10:23
v1.0.7
fb58efa

Rincoin-Sim v1.0.7

DOI

1/1000-scale functional test environment for Rincoin Core v1.0.7. Validates the Block 840,000 hard fork — Customized Halving (CH) and RIN3 nVersion enforcement — plus the v1.0.7 mainnet sealing of Taproot and MWEB as NEVER_ACTIVE, before mainnet activation. The MWEB peg-in / peg-out / reorg lifecycle is exercised on testnet/regtest.


Package contents

rincoin-sim-v1.0.7-linux-x86_64/
├── bin/
│   ├── rincoind          Node daemon
│   ├── rincoin-cli       RPC client
│   ├── rincoin-tx        Raw transaction tool
│   └── rincoin-wallet    Offline wallet utility
├── scripts/
│   ├── sim-ch.sh         Customized Halving lifecycle harness
│   ├── sim-ch-rin3.sh    CH + RIN3 wallet enforcement suite
│   ├── sim-ch-attack.sh  Deep-reorg attack proof (Omega Edition)
│   └── sim-mweb.sh       MWEB peg-in / peg-out / reorg harness
└── README.md

Requirements

  • Ubuntu 24.04 (x86_64)
  • python3 — preinstalled on Ubuntu 24.04
  • jq, bc — install if missing: sudo apt install -y jq bc

Quick start

# Add binaries to PATH
export PATH="$PWD/bin:$PATH"

# Confirm version
rincoind --version

Simulation scripts

Scripts locate rincoind relative to their own path and can be run from any directory. The examples below use the package root:

mkdir -p ~/logs

./scripts/sim-ch.sh        2>&1 | tee ~/logs/sim-ch-$(date +%Y-%m-%d).log
./scripts/sim-ch-rin3.sh   2>&1 | tee ~/logs/sim-ch-rin3-$(date +%Y-%m-%d).log
./scripts/sim-ch-attack.sh 2>&1 | tee ~/logs/sim-ch-attack-$(date +%Y-%m-%d).log
./scripts/sim-mweb.sh      2>&1 | tee ~/logs/sim-mweb-$(date +%Y-%m-%d).log

Expected results

Script Scope PASS FAIL
sim-ch.sh BVA: all 4 CH phase boundaries 8 0
sim-ch-rin3.sh BVA + RIN3 wallet + 4 reorg scenarios (max 2,101 blocks) 35 0
sim-ch-attack.sh BVA + 5 escalating reorgs up to 5,461-block full CH erasure 28 0
sim-mweb.sh MWEB activation, peg-in, peg-out, reorg Validated (visual) 0

Manual inspection mode (sim-mweb.sh)

KEEP_ALIVE=1 ./scripts/sim-mweb.sh
# rincoind stays running after the script exits.
# Inspect with rincoin-cli -regtest, then:
./bin/rincoin-cli -regtest stop

Verification

Download SHA256SUMS.txt and SHA256SUMS.txt.asc from the same release page, then run the following from the directory containing the tarball:

# 1. Verify GPG signature on the checksum file
gpg --keyserver keys.openpgp.org \
    --recv-keys ED20B6354EE4526D01F83B538B6E3BF45C714ECA
gpg --verify SHA256SUMS.txt.asc

# 2. Verify tarball integrity
sha256sum -c SHA256SUMS.txt

GPG key fingerprint: ED20 B635 4EE4 526D 01F8 3B53 8B6E 3BF4 5C71 4ECA


Release notes

Full changelog, test evidence, and versioning details:

doc/release-notes/rincoin-sim/sim-release-notes-1.0.7.md

or online:

github.com/Aevust/rincoin-sim/releases/tag/v1.0.7


Source

github.com/Aevust/rincoin-sim

Build instructions: doc/build-unix-rincoin-sim.md

DOI

Rincoin-Sim v1.0.6.1: Customized Halving & MWEB Proof of Concept

Choose a tag to compare

@Aevust Aevust released this 28 Apr 03:15
bbb286f

🔬 Rincoin-Sim v1.0.6.1: Full MWEB Lifecycle Validation & Automated Scripts

This release completes the MWEB validation suite by adding Peg-out and
Chain Reorganization (Reorg) testing, and introduces fully automated
simulation scripts for reproducible one-command verification.


✨ What's New in v1.0.6.1

1. Automated Simulation Scripts

  • scripts/sim-ch.sh — Fully automated Customized Halving BVA
    validation. Handles daemon initialization, wallet creation, block
    generation, and boundary value reporting in a single command.
  • scripts/sim-mweb.sh — Complete MWEB lifecycle simulation.
    Validates Peg-in, Peg-out (with wallet isolation), and Chain
    Reorganization resilience end-to-end.
# Customized Halving
./scripts/sim-ch.sh

# MWEB Full Lifecycle
./scripts/sim-mweb.sh

2. MWEB Full Lifecycle Validation (Peg-out & Reorg Added)

The MWEB test suite has been extended beyond Peg-in to cover the
complete transaction lifecycle, including fund recovery and chain
resilience.

Test Result
Peg-in: Transparent → MWEB (10 RIN) ✅ PASS
Peg-out: MWEB → Transparent (5 RIN) PASS (New)
Reorg: invalidateblock + re-mine PASS (New)
MWEB change address obfuscation ✅ PASS
===== Peg-out Results =====
Transparent 2 received : 5.00000000 RIN (expect ~5.0)
MWEB remaining         : 4.99991600 RIN (expect ~4.999)

[6/6] Reorg Test: Invalidating Peg-out block...
  After invalidate: height=451 (expect 451)
  Re-mining replacement block...
  After re-mine: height=452 (expect 452)

===== Simulation Complete =====
Validated: Transparent → MWEB (Peg-in) → Transparent (Peg-out) + Reorg

3. HogEx Assert: Fail-Fast Security Hardening

Replaced the silent skip-and-return guard in mweb_miner.cpp with an
explicit assert(!hogExTransaction.vout.empty()). An empty vout at
this stage indicates a critical invariant violation; the node now fails
loudly rather than silently emitting an invalid block.

This implementation adopts the fail-fast approach proposed by
@takologi, based on the original investigation by @Aevust.

4. Binary Path Auto-Detection Fix

Simulation scripts now correctly resolve binary paths whether running
from a cloned source build (src/) or an extracted release tarball
(bin/). Error messages updated to reflect the correct working
directory.


✅ Previously Validated (v1.0.6)

Customized Halving (Scenario II)

Full BVA at 1/1000 scaled block heights:

Block (sim) Block (mainnet) RIN Result
839 → 840 839,000 → 840,000 6.25 → 4.00 ✅ CH Activated
2,099 → 2,100 2,100,000 4.00 → 2.00 ✅ CH Halving 1
4,199 → 4,200 4,200,000 2.00 → 1.00 ✅ CH Halving 2
6,299 → 6,300 6,300,000 1.00 → 0.60 ✅ Terminal

Built-in Killswitch

Both Mainnet and Testnet are physically disabled at the code level.

Network Status
./rincoind -regtest ✅ Allowed
./rincoind -testnet ❌ Error & exit
./rincoind (mainnet) ❌ Error & exit

🛠️ Quick Start (Linux)

# Extract
tar -xzf rincoin-sim-v1.0.6.1-linux-x86_64.tar.gz
cd rincoin-sim-v1.0.6.1-linux-x86_64/

# Run automated validation
./scripts/sim-ch.sh    # Customized Halving
./scripts/sim-mweb.sh  # MWEB Full Lifecycle

See README.md
for manual step-by-step instructions.


📦 Release Assets

File Description
rincoin-sim-v1.0.6.1-linux-x86_64.tar.gz Linux x86_64 (tarball)

Contains:

  • bin/rincoind — Full node daemon
  • bin/rincoin-cli — RPC command-line interface
  • bin/rincoin-tx — Transaction utility
  • bin/rincoin-wallet — Wallet tool
  • scripts/sim-ch.sh — Customized Halving simulation script
  • scripts/sim-mweb.sh — MWEB full lifecycle simulation script

🔐 SHA256 Checksums

380c9c5b27b9f84d7b6a604f22578e05fc3e3a7f66c2da187151a4cb842b3790  rincoin-sim-v1.0.6.1-linux-x86_64.tar.gz

Verification command:

echo "380c9c5b27b9f84d7b6a604f22578e05fc3e3a7f66c2da187151a4cb842b3790  rincoin-sim-v1.0.6.1-linux-x86_64.tar.gz" | sha256sum -c

GPG Signature: SHA256SUMS.txt.asc (signed by Aevust)


⚠️ Important Notice

This is a simulation environment only (regtest exclusively).
The 1/1000 scaled parameters will cause immediate consensus rejection
by standard Rincoin nodes.

The production-ready Rincoin Core v1.0.6 mainnet release will
follow separately.


Pre-Release Date: 2026-04-28
Validated by: Aevust
In collaboration with: 七夕凛 (Founder, @ysmreg)

Rincoin-Sim v1.0.6: Customized Halving & MWEB Proof of Concept

Choose a tag to compare

@Aevust Aevust released this 21 Apr 10:57

🔬 Rincoin-Sim v1.0.6: Customized Halving & MWEB Proof of Concept

This release provides a dedicated simulation environment to validate
Rincoin's core protocol upgrades under accelerated regtest conditions,
prior to mainnet deployment.


✨ What's Validated

1. Customized Halving (Scenario II)

The multi-phase emission schedule has been fully verified via
Boundary Value Analysis (BVA) at 1/1000 scaled block heights.

Block (sim) Block (mainnet) RIN Result
839 → 840 839,000 → 840,000 6.25 → 4.00 ✅ CH Activated
2,099 → 2,100 2,099,000 → 2,100,000 4.00 → 2.00 ✅ CH Halving 1
4,199 → 4,200 4,199,000 → 4,200,000 2.00 → 1.00 ✅ CH Halving 2
6,299 → 6,300 6,299,000 → 6,300,000 1.00 → 0.60 ✅ Terminal

2. MWEB (MimbleWimble Extension Block)

A critical consensus bug affecting MWEB initial activation has been
identified and fixed. The bug caused bad-txns-vin-empty errors on
the first HogEx transaction, preventing MWEB from functioning.

Fixed files:

  • src/consensus/tx_check.cpp: HogEx transactions now correctly exempt
    from empty-vin validation
  • src/mweb/mweb_miner.cpp: Defensive guard prevents empty HogEx
    transactions from being added to blocks

Validated:

  • ✅ MWEB address generation (rrmweb1...)
  • ✅ Transparent → MWEB Peg-in (10 RIN transferred)
  • ✅ Automatic MWEB change address generation

3. Built-in Safety (Killswitch)

Both Mainnet and Testnet are physically disabled at the code level
(src/chainparams.cppSelectParams()). Accidental execution
outside of regtest is impossible.

Network Status
./rincoind -regtest ✅ Allowed
./rincoind -testnet ❌ Error & exit
./rincoind ❌ Error & exit

🛠️ How to Use

Quick start:

# 1. Download and extract the tarball
tar -xzf rincoin-sim-v1.0.6-linux-x86_64.tar.gz

# 2. Navigate to the binary directory
cd rincoin-sim-v1.0.6-linux-x86_64/bin

# 3. Launch the daemon
./rincoind -regtest -daemon

Please refer to the README.md for complete step-by-step and one-shot validation scripts.


📦 Release Assets

File Description
rincoin-sim-v1.0.6-linux-x86_64.tar.gz Linux x86_64 binaries (tarball)

Contains:

  • bin/rincoind — Full node daemon
  • bin/rincoin-cli — RPC command-line interface
  • bin/rincoin-tx — Transaction utility
  • bin/rincoin-wallet — Wallet tool

🔐 SHA256 Checksums

Verify the integrity of downloaded files:

48aad431926b7969a9bc70cdbe1fe65d92a2fbe1ae671b16f54f523e4a0cbaa6  rincoin-sim-v1.0.6-linux-x86_64.tar.gz

Verification command:

echo "48aad431926b7969a9bc70cdbe1fe65d92a2fbe1ae671b16f54f523e4a0cbaa6  rincoin-sim-v1.0.6-linux-x86_64.tar.gz" | sha256sum -c
# Expected output: rincoin-sim-v1.0.6-linux-x86_64.tar.gz: OK

⚠️ Important Notice

This is a simulation environment only.
Do NOT use this binary to connect to the Rincoin mainnet.
The 1/1000 scaled parameters will cause immediate consensus
rejection by standard nodes.

The production-ready Rincoin Core v1.0.6 mainnet release
will follow after community validation of this simulation.


Test Date: 2026-04-19 ~ 2026-04-20
Validated by: @Aevust
In collaboration with: @ysmreg (Founder)