Announcing the FoB Challenges

A
Future of Blockchain Competition
13 min readNov 14, 2018

It is our great pleasure to announce both our Challenge Partners and their respective challenges for the Future of Blockchain Competition.

As a reminder, Future of Blockchain (FoB) is a 3 month competition designed for those studying, researching or working at the universities of Oxford, Cambridge, Imperial, LSE, UCL and KCL. It starts in late November 2018 and ends with a finale at Oxford in late March 2019. It challenges participants to build whatever they like involving blockchain in 3 months. Specifically, they can either:

A. Build their own idea [“Creators”] 🔧

B. Answer a pre-set challenge. [“Challengers”] 💪

If you are a participant, why should you be a Challenger?

1. You want a higher chance of winning a cash prize: on top of the Overall Prize (of £20k), you can win one of up to three £2,000 bounties per challenge.

2. You don’t have an idea or startup of your own: don’t worry! You can answer one of a range of challenges including development and non-development (business focused) challenges

3. You’re looking for an internship or job after the competition is over: Our challenge partners are looking to hire those who do well in the competition.

Without further ado, our partners are: Gnosis, Kyber, Liquidity Network, MakerDao, Nucypher, Santiment, Thunder and Zilliqa.

As a Challenger💪, you can choose to do any one of the following.

And don’t worry about deciding know, you can always change later!

1. Gnosis Challenge

Gnosis uses its decentralised platforms to help new market mechanisms and enable the distribution of resources (from assets to incentives and information to ideas). Gnosis challenges participants to do one of three things.

Either:

A. Gnosis’ prediction market platform allows anyone to build customised forecasting applications and thus to create an entirely new kind of asset: outcome tokens, which make trading the outcome of any event possible. Gnosis tasks FoB participants to build a prediction market use case on top of the Gnosis platform.

Or

B.The Gnosis Safe is a multi-signature Ethereum wallet providing users with a convenient, secure way to manage their digital assets and interact with the decentralized web. Participants are tasked with either a) Implement a frontend for the Safe contracts on a platform/framework of you choice (e.g. Android, iOS, react-js, ReactNative, Mac App, Windows app etc.) or b)Implement a command-line client in a language of your choice in order to interact with a Safe

Or

C. The DutchX is an open, decentralized trading protocol for ERC-20 tokens using the Dutch auction mechanism for determining a fair value for tokens. Coupled with a pure on-chain design, the DutchX doubles a price oracle and is built to enable users, bots, as well as other smart contracts to exchange tokens: no strategy for participation is needed. Participants are tasked with designing an “end-to-end-participation” solution, which will allow any user to submit one transaction only — to a smart contract that then interacts with the DutchX protocol. The smart contract would go through the various transactions and claim and withdraw the funds at the end of the auction to then automatically transfer the tokens back to the user’s wallet. The user still profits from the slow execution of the order in the auction based model, however, does not have the pain of returning to claim.

Further information is available on this link on the FoB website

2. Kyber Challenge

Kyber is a on-chain liquidity protocol that anyone can tap into for a wide variety of inter-token use cases. For example, vendors are able to accept payments in multiple tokens on their e-commerce platforms yet receiving in their preferred token. In addition, dApps can allow users who are not their token holders to utilize their platform and services with other tokens, and decentralized financial projects have the means to rebalance their portfolio instantly.

Using Kyber’s protocol, develop any type of application that incorporates on-chain token swaps.

Example 1: Collateral liquidation on-chain.

Lending platforms such as ETHLend, Dharma and Bloqboard allow for ERC20 tokens to be put as collateral. In the event of a loan default, the lender keeps the collateral. In the event that the lender wants to liquidate the collateral in another token of his choice, he will need to perform this operation separately. But by integrating Kyber’s on-chain liquidity protocol, this liquidation to another token can be done seamlessly and in a single transaction.

e.g. The borrow puts in ETH as collateral for a loan. His loan defaults, and the collateral is liquidated into DAI (stablecoin).

Example 2: Single Step Payment for NFTs

Allow NFT platforms such as Decentraland, CryptoKitties, Zombie Battlegrounds, and others to accept a wider range of ERC20 tokens as payments aside from their native token or ETH. This allows users of these NFT platforms to pay with the token of their choice to acquire the NFT in a single transaction.

e.g. Decentraland only accepts MANA to buy virtual parcels of land in their platform. By integrating the Kyber, users can now pay using any token but Decentraland still receives MANA.

Example 3: On-Chain Fund Rebalancing

A decentralized fund holds a basket of different tokens, and regularly rebalances their portfolio to achieve a positive return on investment. Currently, rebalancing this fund requires the manager to send the tokens to different exchanges to trade the asset. Using Kyber, this rebalancing process can be done in a single step for multiple tokens, and without having to interact with exchanges.

e.g. Based on market opportunities, a basket of tokens comprising of ETH, DAI, and KNC that is managed by a smart contract can be rebalanced seamlessly in a single transaction.

Further information on this link

3. Liquidity Network Challenge

Participants can choose one of the following:

  1. Design an e-commerce platform integration

Businesses may be willing to accept crypto and customers may want to purchase products with their digital assets but integration has long been perceived as being too complicated. Now is the opportunity to work on fee-less transactions, we are asking you to go for it! No more complicated and expensive credit card transactions — pay online retailers instantly and for free using a QR code directly with your Liquidity wallet app for example.

2. Design a physical commerce use-case

Bring crypto to your local bakery. We would love to buy croissants and French baguettes in the knowledge that the baker will be receiving all of the money paid. Having a plug and play solution would be ideal, designing it so it is portable, somehow resistant and works well with low internet access. Compatibility with regular credit cards and payment methods would be a practical added feature.

3. Build a Streaming service

Streaming numbers have increased an unprecedented amount over the past ten years, however revenue generation can still be a struggle. Due to its micro payment capabilities, integrating liquidity as a pay per view for streamers is a perfect fit! As an extension to current platforms such as twitch or as a completely new streaming platform that is more aware of its users, this could help people be accurately rewarded for their work.

Read more here!

4. MakerDao Challenge

MakerDAO is a decentralized organization dedicated to bringing stability to the crypto economy through Dai, the world’s first stablecoin on the Ethereum blockchain. A ‘stablecoin’ is a cryptocurrency that has low volatility relative to fiat currency, making it a more useful form of digital money. One of the main criticisms of today’s popular cryptocurrencies is that their rampant volatility inhibits them from realizing their primary use case: a medium of exchange. Dai eliminates the volatility of other crypto-currencies through an autonomous system of smart contracts, specifically designed to respond to market dynamics.

We’re looking for creative submissions that incorporate Maker infrastructure and utilize Dai either as a product or as a platform with an emphasis on leveraging new technologies that lower the barrier to entry for new crypto users. Just as web users aren’t required to understand TCP/IP, we need to remove the ‘crypto’ from crypto. Research and implement initiatives like universal logins, meta-transactions, recurring payments, gas relays, second layer solutions, or any anything else that can help increase adoption.

Dai as Product Challenge

Create a novel, Dai based marketplace. It should be highly usable, mobile friendly, have a low barrier to entry and be broadly applicable to both developed and emerging economies. Try to find a niche that hasn’t already been filled.

Dai as a Platform Challenge

Create a novel Dapp that utilizes the Dai Credit System (i.e. Collateralized Debt Positions, or CDPs). Try to avoid niches that have already been filled in the 3rd party ecosystem.

Hint: check out the Javascript SDK, Dai.js, to simplify the process of interacting with Maker’s smart contracts. (makerdao.com/documentation)

Governance Models and DAOs Challenge

Voting mechanisms on the blockchain could easily fall victim to bribery, malicious voting, misleading propaganda campaigns, and other risks inherent to direct democracies. What can we do to protect ourselves from these types of DarkDAO attacks?

Create a tool that can detect and alert on malicious voting activity, the emergence of plutocracies, and/or other “DarkDAO” type attacks by examining blockchain and voter behavior.

Read more here

5. Nucypher Challenge:

Choose one of the following:

Idea 1: Build a GUI interface for the NuCypher network. Bonus points for included wallet or the ability to stake a proxy node from it.

Idea 2: Build a GUI interface for the network that’s portable and easy to distribute. This means avoiding software that requires system configuration (ie: NodeJS). Can also be a web interface, but it must be packaged with an easy to transport/run executable. This interface doesn’t need to make calls to the network API yet. It just needs to be built so that we can add the code when it’s ready. Must be clean and readable. Either node management console (!), or UI for Alice to grant permissions. Some ideas for inspiration: * https://sunder.readthedocs.io/en/latest/generate_secret_shares.html

Idea 3: Applications that utilize NuCypher in interesting and novel ways. Such as:

A. Sharing encrypted files (“Decentralized Dropbox”)

B. End-to-end encrypted group chat (“Encrypted Slack”)

C. Decentralised Database

D. Patient-controlled electronic health records (EHR)

E. Decentralized digital rights management (DDRM)

F. Blind identity management

G. Secret credentials management for scripts and backend applications

H. Shared credentials and enterprise password management

I. Mandatory access logging

J. Mobile device management (MDM) and revocation

Idea 4: Store seed node metadata for network bootstrapping in a decentralized way

When a NuCypher node startups up it needs to contact a seed node in order to connect to the NuCypher network. Currently, we store the seed node metadata information on S3, however, it would be preferable to bootstrap the network in a decentralized way. An ideal way would be to have software which is co-hosted with NuCypher nodes (or, ideally, something written in Python which can be embedded in NuCypher nodes) seeding the list of seed nodes on IPFS. The correct address for IPFS list of seed nodes (which is a folder with files) should be also defined. It will be ideal if ENS is pointing to it, and NuCypher node resolves it by ENS name (from Python). Geth instance will be available at the node. Alternatively, cloudflare IPFS gateway can be used [https://blog.cloudflare.com/distributed-web-gateway/] (not ideal though, because not decentralized)

Idea 5: Metamask-like browser extension for encrypting, decrypting, granting and revoking permissions through NuCypher

While the javascript version of NuCypher isn’t yet there, it is still possible to interact with NuCypher network using the Python code from browsers. For that one needs to use protocol called “Native messaging”.

Both Chromium and Firefox provide example extensions using this API and Python code: https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/docs/examples/api/nativeMessaging https://github.com/mdn/webextensions-examples/tree/master/native-messaging

Since NuCypher reference implementation is written in Python, these examples are a good start for building an extension.

6. Santiment Challenge

Santiment is a comprehensive platform for crypto-related data feeds, real-time signals and high-value market insights.

We built a wide variety of custom on-chain, social and experimental metrics that you can learn about here. Even still, we continuously introduce new and improved data sets, in an effort to demystify crypto and create a better future society for all.

We invite you to use the power of our data to unravel the blockchain complexities and help shine a light on unique behavioral patterns of crypto market participants.

*Please note: you are in no way limited by only the below examples. If you have any other idea how to utilize our data or our platform, just let us know!

Challenge #1: Categorize market participants & network addresses

Using Santiment’s on-chain data, catalogue and classify network participants/addresses by a set criteria:Using Santiment’s on-chain data, catalogue and classify network participants/addresses by a set criteria:

Example 1: Identify ‘cemetery addresses’ — addresses where the funds can’t ever be taken out, like the Ethereum Accounts, Address And Contracts

Example 2: Classify network participants by the nature of their transfers. These can include: Miners, Exchanges, ICO participants, Whales investing in many tokens, Whales investing in a particular token

Example 3: Batch wallets based on market behavior. These can include: Micro/Small/Medium/Large Trader, Micro/Small/Medium/Large Holder, Micro/Small/Medium/Large Incoming Investor. Micro/Small/Medium/Large Outgoing Investor

Example 4: Classify addresses by their level of holding. Potentially identify addresses with lost private keys.

Challenge #2: Build tools for exposing fraud or improving transparency of crypto markets

We are dedicated to promoting trust and accountability across blockchain economies. In 2017, we launched Project Transparency, a voluntary disclosure standard adhered to by many of today’s industry leaders.

Example 1: Create a tool for detecting pump and dump schemes or exit scams

Use our on-chain data to identify cross-network pump and dump events, and analyze adjoining market patterns. For example, as you can see below, the speculation level for SAN token jumped starkly before the pump event at the end of 2017:

Example 2: Identify mixing activity and try to “unmix” it.

Mixing activity can be indicated by significant spikes in Token Velocity (one of our metrics). For example, there was a big mixer running on ETH between March 2017 — March 2018, which corresponded squarely to a spike in Token Velocity.

Challenge #3: Produce unique market insights and network analysis using our data

Leverage our data sets to scrutinize a project’s network, backtest an investment portfolio or perform original, innovative market research.

Example 1: Backtest the relative social dominance index and its viability as an investment strategy. This metric shows the relative social volumes of selected projects for 3 separate channels: Professional trader chats (pictured below), Telegram groups and Discord groups.

You can use this backtesting strategy that we performed for Github Activity (another one of our metrics) as an example.

Example 2: Analyze on-chain activity for crypto exchanges, and how it impacts the price of an asset.

Example 3: Analyze how popular smart contracts work, build exporter scripts for their data using GitHub — santiment/san-exporter (a library which lets you push data to Santiment), and perform analysis of the exported data.

Challenge #4: Create a brand new crypto metric

With help from our developer team, build a script for collecting and filtering relevant market or network data, and graphically plot the results over time.

Example 1: Devise a method to track the amount of ETH locked up in smart contracts over time, specifically:

- Amount of ETH locked in ENS (Ethereum Name Service) over time

- Amount of ETH locked up in Maker’s smart contracts as collateral for the DAI stablecoin

- Amount of ETH locked up in other smart contracts

Example 2: Devise a method to aggregate the amount of shorts and longs across all exchanges

Further information is available on this link on the FoB website

7. Thunder Challenge

We believe blockchains are capable of much more than just financial applications and payments. We encourage you to think outside the box and build DApps for the masses on ThunderCore, regardless of whether you are a developer or not. We are challenging you to

Either:

  1. Build a game that utilizes the ThunderCore’s blockchain 🎮

You can store and trade in-game assets easily, make your game mechanisms transparent and verifiable to attract users!

Or,

2. Build any DApp that could attract mass adoption🔥

Leverage ThunderCore’s high performance to realize ideas that weren’t feasible before!

We believe in blockchain for the masses, and we provide you early access to ThunderCore, our high performance(1000+TPS), fully Ethereum compatible blockchain for you to realize your ideas. Gaming is just one of the many areas we envision blockchain will be revolutionary and achieve mass adoption. Look around and use your imagination!

Developers:

  1. For non-blockchain developers💻👨‍💻💻

Great news for you: You don’t have to know Solidity or any smart contract programming languages in order to get involved!

Using ThunderCore Gaming Marketplace SDK, you can leverage our API to create and store assets on the blockchain for you. The API will take care of all the hassles of coding and deploying your ERC (e.g. ERC-1155) compliant smart contracts.

In this age of decentralization, you don’t have to trust our API server, that’s totally fine and you shouldn’t take it for granted. If you want to verify we’ve done things correctly for you, you can either read the smart contracts we deployed for you from the ThunderCore blockchain, or code up your own ones:

2. For seasoned blockchain developers🔗👩‍💻🔗

- Get free test tokens and deploy your smart contracts on our award-winning public Testnet

Contact us directly and we will give you more free test tokens to play around with.
- Stay updated with our development and open-source efforts, star our GitHub repository

Non-developers:

We recommend you to team up with some developers to make your ideas into at least some minimal viable products (MVP)

Read more here

8. Zilliqa Challenge

Build any of the following on Zilliqa’s platform

  1. Blockchain based P2P payments on web and/or mobile (Non-blockchain examples are services like Revolut, Transferwise etc) or P2P lending platform

2. Marketplace for selling real-world items (building on top of a P2P payments functionality)

3. Prediction markets (e.g. Oracle), but without any aspects of gambling

4. Quora/Reddit like platforms with rewards that can be traded for cryptocurrencies and/or fiat (e.g. Reddit gold system or giving a bounty for best answer on Quora)

5. Or, you can also choose to make a compiler from Scilla to WASM

Read more via this link

If you have questions about any of the challenges, email us on anthony@stakezero.com

--

--