Science on the Blockchain

Science is the core of the modern society, bringing us a deeper understanding of the world and providing us with extraordinary tools to cure diseases, allow fast transportation and communication. We cannot put Science into words, but we can try to make the processes behind it even better, faster and more transparent.

Our team includes experienced researchers on Computer Science, Engineering and Material Physics fields, and we want to give Science a better tool for dealing with one of its most important feature: the peer-review system.

Perhaps not so many people know that, for a scientific study to be properly "accepted" as "true", it is commonly required for it to pass the peer-review system, where unknown colleagues of the same field judge the article methodology, background and results. If it passes peer-review and is published in a qualified journal, the study is considered valid and is referenced in future studies. And the chain goes on...

In order to achieve a truly transparent process in peer-review, we propose SciChain. As SciChain is build on top of NEO Blockchain (a blockchain can be seen as a public database where the defined rules are always respected), there will be no way of "cheating" in peer-review, for example, indicating known friends are reviewers, breaking the double-blind principle (what means that both and the author and reviewer must not know who is each other), and many other bad actions that hurt our precious Science :'(

One the many flaws in scientific studies is also related to low reproducibility of scientific studies, since few journals are available and they usually "accept" only "new" results. Most of these journals require authors to pay for the download of each publication, what strongly undermines the capacity of the researchers (mainly in underdeveloped countries) to be updated with newer discoveries.

We intend to remediate these problems by providing a free scientific pool of journals and reviewers directly in a blockchain.

Creating a new journal (editor)

In order to create a new journal, the editor in charge can pass its address (20 bytes) to RegisterEditor function.

neo> testinvoke fc47d1b7b2fe38096433af7c5e543033d87a86d1

"5265676973746572456469746f722829" ["AUk19KeZqgryWfxfvfAkCcEFLNGhzoPivi"]

Used 1.472 Gas

This function returns an EditorKey (32 bytes). This EditorKey plays an important role in the next operations.

If an Editor tries to register multiple times, system will return the appropriate message: "Editor is already registered".

Including a new reviewer (referee)

Each editor can register a set of reviewers using RegisterReviewer function, passing both its address (20 bytes) and the reviewer address (20 bytes).

neo> testinvoke 0xfc47d1b7b2fe38096433af7c5e543033d87a86d1 "526567697374657252657669657765722829" ["AUk19KeZqgryWfxfvfAkCcEFLNGhzoPivi","APLJBPhtRg2XLhtpxEHd6aRNL7YSLGH2ZL"]

Used 1.818 Gas

This function returns true (1) if reviewer is succefully registered. If the reviewer is included many times, system will return the appropriate message: "Reviewer already registered".

This function has already many internals that deal with Endorsement invocations (interacting with several other functions), and in future works (see roadmap below) we will allow for self-managed journals to filter reviewers automatically (integrated with a Dynamic Invoke smart contract called Smart Rules, in the same github project).

Uploading an article

When an author intends to submit a paper to an specific journal (scientific community) , it can call RequestArticle function. The first parameter addresses the self address, then thedata content (title + abstract + keywords), then the editor address. Note that the editor itself is allowed to participate.

testinvoke "5265717565737441727469636c652829" ["AK2nJJpJr6o664CWJKi1QRXjqeic2zRp8y","HelloWorldPaper","AK2nJJpJr6o664CW JKi1QRXjqeic2zRp8y"]

This function returns an special ProcessKey (32 bytes) that can track the author communication with the editor/journal, and store process-related information. Initially, the payload is used for title, abstract and keywords submission, and this information is used by the editor to decide upon reviewer assignment. This part is intended to connect with Endorsement functions in order to allow for autonomous reviewer selection in SciChain self-managed journals.

Future works and Roadmap

There are many future works for SciChain, and we will continue to develop them, as the idea emerged in casual talks in early February 2017. We believe this project can be the start of a revolution in the way we do science, and perhaps this can bring birth to many other similar projects that will fulfill the purpose of bringing a more transparent science.

Our development roadmap includes:

Q2 2018

- Integrating basic smart contract operations with website

- Improving hability endorsement calculations in smart contract

- Integrating SmartRules smart contract with Dynamic Invoke, to allow remote/personalized judgements

Q3 2018

- Integrating cryptographic end-to-end compilations in website

- Integrating advanced smart contract operations with website

Getting more information

More information for the many other operations available can be found in SciChain documentation at GitHub.

We are proudly MIT licensed and expect collaborations, ideas or donations to keep the project going :)


Copyleft 2017-2018. SciChain team

Our Team

Our team includes researchers from Brazil and all around the world. members:

Vitor Nazário Coelho

Researcher at UFF, Niterói.

Fabio Cardoso

Student at UERJ, Rio de Janeiro.

Igor Machado Coelho

Professor at UERJ, Rio de Janeiro.

Bruno Nazário Coelho

Professor at UFSJ, Ouro Branco.

Get in touch

Send an email to us: vncoelho at / igor.machado at