stacksgov / grants-program

Welcome to the Stacks Foundation Grant Program. Community members interested in submitting a grant proposal may do so by opening an issue in this repository and filling out the grant application.
140 stars 36 forks source link

x-chain identity attestation #799

Closed xylophonez closed 1 year ago

xylophonez commented 1 year ago

APPLICANT

Type:                                                                        Direct Application

Email:                                                                    xylophonezygote@gmail.com

Discord:                                                    

Twitter:                                                        decentdotland

Stacks Forum:           

GRANT BASICS

Grant Name:                                        x-chain identity attestation

Total Budget:                              20,000

Total Duration:                 200

Grant Type:                                               Open Source Dev 1st time Grantees

Grant Track:                                          Cross-Chain & Off-Chain

Grant Goal:                                               Create New Technology

Grant Audience:             Developers

Specific Audience:         Devs and dApp using cross-chain identity. Stacks -> other chains, and vice versa

Grant Team:                                       charmful0x, maxknivets, xylophonez

Previous Grants:                      

Ecosystem Programs:      

GRANT MISSION, IMPACT, RISKS & REFERENCE

Grant Mission:         The decent.land Stacks integration will unlock the ability for developers of dApps on non-Stacks chains to offer their users a way to attest to their Stacks identity.

Expanding on this initial building block, dApps could implement novel cross-chain features, such as DAO token-voting on a non-Stacks platform using Stacks NFTs and fungible tokens. Or, social platforms which include user verification based on the addresses from other chains they have connected (a kind of proof-of-history, especially interesting since it would allow an Ethereum user to prove on-chain that they own a specific BTC address).

As part of the grant, we would look to ship the cross-chain signing component then take it further by getting adoption from Stacks dApps that care about cross-chain identity and social, and integrating Stacks assets an option for token-voting on platforms like AstroDAO and others.

Grant Impact:               # of integrations built using the tooling

of users adopting integrated dApps

Grant Risks:                          Initial R&D suggests the plan has no technical limitations (our team has already built similar functionality for Arweave, NEAR and EVM chains).

The only foreseeable risk is developer adoption for the tooling, since it is not as strongly under our control.

Support Link:                                     Of specific relevance in our organization's repo is https://github.com/decentldotland/ark-protocol.

As well as https://github.com/decentldotland/ar.page, which already integrates grantee TradePort's Byzantion API, making it ready to go with Stacks token integration.

GRANT ROADMAP & DELIVERABLES

MILESTONE 1:

Deliverable:                   Tooling to sign non-Stacks contracts w/ Stacks and verify Stacks asset ownership

FINAL DELIVERABLE

Deliverable:                   Tooling to sign non-Stacks contracts w/ Stacks and verify Stacks asset ownership

stacks-foundation commented 1 year ago

👋 @xylophonez
Thanks for your application! We will do a pre-review and let you know if we have any immediate questions. In the mean time please refer to our review schedule here for a detailed timeline and response dates.
Best, Will

friedger commented 1 year ago

What does tooling include? Android? Javascript? C?

xylophonez commented 1 year ago

@friedger The tooling will written in JavaScript and interactable with by reading the foreign chains' smart contract states. To explain in better depth, the identity attestation piece will be done by integrating our molecule.sh library for exm.dev contracts into Ark Protocol. This will then broadcast a user's Stacks address alongside their other chain addresses in a complete profile via oracles that can be cross-contract called, and an API that can be called by any web app or a dApp built on EXM.

In other words, Stacks devs will be able to write smart contracts with Stacks caller authentication in many programming languages like JS, TS, C, AS, Rust (via exm.dev)

charmful0x commented 1 year ago

Hello @friedger ! 👋 This is a lower level technical comment about DecentLand grant deliverable milestones. (1 -> 4)

1- molecule.sh

The molecule.sh library is, by analogy, the Openzeppelin of EXM smart contract protocol. It's a set of composable building blocks for EXM smart contracts used as infra for decent.land protocols, and other decentralized protocols like permacast.dev.

By integrating Stacks in molecule.sh dev tooling set, EXM developers will be able to build and deploy smart contracts that can handle Stacks Account as contract caller.

About EXM

from EXM.dev

Execution Machine (EXM) is a developer platform that powers the creation and usage of highly available and highly performant applications within a decentralized environment. Currently, EXM is the only technology that powers blockchain- based serverless functions.

EXM smart contract can be written in the following programming languages: Javascript, TypeScript, C, C++, Zig, Rust, and AssemblyScript.

With molecule & EXM, the smart contract written for Stacks will be gasless, having instant finality, and the contract's states are stored permanently on Arweave network!

This milestone will open various opportunities for Stacks developers interested to deploy Stacks-callable smart contracts that have a new paradigm, in multiple programming languages.

2- Ark Protocol

What is Ark Protocol?

Ark is a multichain identity linking protocol built to power decent.land, ANS, and any other applications that rely on users attesting to their identity on other chains. Example use cases include token gating and social data aggregation. With Ark, users can use their Arweave wallet as a master identity to prove activity on multiple other chains.

Ark Protocol Stacks integration is the second deliverable milestone for this grant request. After integrating Stacks network in Ark Protocol stack, web3 users will have the ability (first of its kind) to link, on-chain, their Stacks address to many other blockchain networks under their Ark identity.

Stacks address will be linkable with up to 15 EVM and non-EVM network.

Example: reverse resolving the NEAR address (non-EVM) linked with an ETH address (EVM) https://ark-core.decent.land/v2/address/resolve/decentland.near

image

3- Ark API

After integrating Stacks in Ark Core (Ark Protocol, 3), we will add support for it in the protocol API endpoints for whatever retrievable data from Stacks (assets, NFTs, domains, recent TXs, etc). As mentioned before in this thread, we use the grantee TradePort's Byzantion API already. Ark API will empower ar.page Stacks integration.

4- ar.page

With nearly 600 closed-beta users, ar.page is the web3 instragram of ANS & Ark protocols users (ANS is also developed by DecentLand team). Similary to eth.limo or eth.link, ar.page is a much richer user's profile resolver that aggregates and display all the on-chain data provided by Ark API and that belongs to the user's linked addresses on Ark Protocol.

Example: dameon1.ar.page

image

5- Github Repos & Helpful links

Github

All the repositories are licensed under the MIT license.

Social

Have a decent day! 😄

will-corcoran commented 1 year ago

@xylophonez

Thank you for the proposal. We appreciate your interest in the grants program, but (unfortunately) we have decided to deny your application. For the next several quarters we are laser focused on conserving funding for efforts that have clear alignment with the current priorities of the grants program noted here - specifically sBTC.

Best, Will