elective-stereophonic
elective-stereophonic
Scorex - Ultracompact Cryptocurrency Engine for Researchers
Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest Nxt Client: Nxt 1.11.15

Author Topic: Scorex - Ultracompact Cryptocurrency Engine for Researchers  (Read 2404 times)

kushti

  • Board Moderator
  • Sr. Member
  • ****
  • Karma: +184/-5
  • Offline Offline
  • Posts: 384
  • Nxt Core & Apps Dev
    • View Profile

Motivation

There are two huge problems around cryptocurrencies development project Scorex aims to help to solve:

* Bitcoin source code contains more 100K lines of code(80K of C++ only), Nxt is about more than 45K lines of Java code. All parts of the design(network/transactions/consensus layers) are mixed in a hard way.  So researchers & developers are definitely not in a good start position to make any experiments.  In opposite, Scorex is less than _4K lines of Scala code_. Transactions layer is as simple as just tokens transfers. Consensus algo  could be switched easily(with two consensus algos out of the box,  one could be replaced with an another with just one line of code edited!)

* Major coins forks are trying to make IPO immediately, often having just one or two pretty controversial features introduced. **Scorex is intentionally not production-ready**, so please participate in any  non-commercial experiments built on top of it, but don't buy tokens unless you are 100+% sure what are you doing.
 

Features

* Two 100% Proof-of-Stake consensus algos out of the box, Nxt-like and Qora-like. One algo could be replaced
with an another with just one line of code edited (in Constants.scala)
* Simplest transactions model
* Asynchronous network layer on top of TCP(with Akka I/O)
* JSON API
* Command line client for the JSON API
* Curve25519 for signatures
* CC0(Public Domain) license
* Compact, functional, actors-powered code
* Scala / Akka
 

Roadmap

This release is named Lagonaki (after picturesque mountains resort in West Caucasus https://yandex.ru/images/search?text=%D0%BB%D0%B0%D0%B3%D0%BE%D0%BD%D0%B0%D0%BA%D0%B8 ), the current version is 1.0. It is the initial release aiming to provide modular and simple product to improve.
     
There are some issues/todos to be solved in upcoming 1.1 then 1.2 versions.           
 
And new branch will be forked very soon, with a brand new Proof-of-Stake algo having no whitepaper atm. More details soon. Nxt forging algo improvement proposal will be derived then from testing results. 

Authors

Scorex is made by [Consensus Research microteam](https://github.com/ConsensusResearch) previously worked on Proof-of-Stake investigation:

Alexander Chepurnoy aka kushti - Nxt developer & smartcontract.com cofounder. Has few published papers in Computer Science field(finite state systems related), writing PHD at the moment.   

andruiman - serial entrepreneur with theoretical physics background, a big fan of Coq interactive theorem prover & functional programming.   


Contributions

We're highly welcome contributions in form of pull requests, testing, issues reporting, and forking for sure :)


Donations

Also we would be happy to get donations. You can buy our asset on Nxt Assets Exchange: https://trade.secureae.com/#5841059555983208287, Bitcoin wallet is **17YksFD7eRB4NhPfEtGrGnuvuwpkAeBd7f** .   
   


Repository URL

The main link to follow is the GitHub repository:

https://github.com/ConsensusResearch/Scorex-Lagonaki

 
Logged
for donations / messages: NXT-PKXM-WH25-UXXG-CJAVD (alias: kushti)

sadface

  • Sr. Member
  • ****
  • Karma: +16/-2
  • Offline Offline
  • Posts: 273
    • View Profile
Re: Scorex - Ultracompact Cryptocurrency Engine for Researchers
« Reply #1 on: July 14, 2015, 09:03:50 pm »

great stuff. looking foward to what derives from this.
Logged

kushti

  • Board Moderator
  • Sr. Member
  • ****
  • Karma: +184/-5
  • Offline Offline
  • Posts: 384
  • Nxt Core & Apps Dev
    • View Profile
Re: Scorex - Ultracompact Cryptocurrency Engine for Researchers
« Reply #2 on: August 12, 2015, 09:00:49 am »

First Scorex devs meetup will be on coming Friday @ Saint-Petersburg, Russia.

First fork to test CR's PoS ideas will be started in late Aug hopefully
Logged
for donations / messages: NXT-PKXM-WH25-UXXG-CJAVD (alias: kushti)

kushti

  • Board Moderator
  • Sr. Member
  • ****
  • Karma: +184/-5
  • Offline Offline
  • Posts: 384
  • Nxt Core & Apps Dev
    • View Profile
Re: Scorex - Ultracompact Cryptocurrency Engine for Researchers
« Reply #3 on: August 18, 2015, 02:49:21 pm »

The meetup was very productive and insightful, finally we've came to conclusion to split the project into separate layers explicitly using following artefacts:

1. scorex-utils - cryptofunctions and other functionality not corresponding to a cryptocurrency logic directly
2. scorex-network - p2p layer
3. scorex-consensus - consensus-related data sctructure & functions
4. scorex-transaction - transactions handling code and internal state


I'm going off for few days to return with a roadmap.
Logged
for donations / messages: NXT-PKXM-WH25-UXXG-CJAVD (alias: kushti)

kushti

  • Board Moderator
  • Sr. Member
  • ****
  • Karma: +184/-5
  • Offline Offline
  • Posts: 384
  • Nxt Core & Apps Dev
    • View Profile
Re: Scorex - Ultracompact Cryptocurrency Engine for Researchers
« Reply #4 on: August 31, 2015, 08:44:01 pm »

Version 1.0.4 with small improvements is just released. Next version will be 1.1.0 with (raw,but) modular design. The code for it is mostly ready, and divided now into 4 parts:

1. Scorex-Basics - crypto/utility functions, and interfaces for transaction/consensus modules

2. SimplestTransactions - implementation of a transaction module interface. simplest payment transactions, no transactions/state merkle roots in block etc. Probably having some flaws :)

3. LagonakiConsensus - implementation of a consensus module interface. Two Proof-of-Stake implementations, Nxt-Like & Qoralike

4. Scorex Lagonaki, the runnable application = Basics+SimplestTransactions+LagonakiConsensus+business-logic & APIs on top of that.


Design will be improved further, resulting in some 1.2.x release ready for forking. Also started to write explanatory / education comments for the code.


The project got some sponsorship, so we can buy some development efforts(and publish results under public domain, thanks sponsor!). As resources are pretty limited anyway, forking will be done as follows:

1. Few forking proposals will be described in form of Scorex Forking Proposal(SFP). E.g. Ethereum VM support(using EthereumJ code), pos experiments, Permacoin, Bill White's lightweight ledgers proposal w. more scalable transaction layer etc.

2. Voting amongst ConsensusResearch shareholders(we made some fundrasing via Nxt AssetsExchange: https://nxtforum.org/consensus-research/first- fundraising-letter/) over Nxt Blockchain. Please note voting results will be taken into an account, but implementation of a winner is not guaranteed.

3. Implementation of some proposal
Logged
for donations / messages: NXT-PKXM-WH25-UXXG-CJAVD (alias: kushti)
 

elective-stereophonic
elective-stereophonic
assembly
assembly