GithubHelp home page GithubHelp logo

Comments (2)

CalebEverett avatar CalebEverett commented on July 22, 2024

Hi, sure - totally transparent here and hopefully handled in a way that respects the privacy of your keys.

  1. For AR transactions, arloader doesn't take anything, it just processes the transactions with reward going to the network. There is no place in the code even for an option to do anything like that. That applies to one file uploaded by itself, multiple files upload individually, uploading a single bundle, or uploading multiple bundles.
  2. For paying with sol, arloader doesn't send your keys any where. In order to process the transaction at the arloader.io endpoint, arloader sends a prepared and signed solana transaction along with the elements of the arweave transaction needed to create a signature. Then it sends those to the endpoint, submits the sol tx to solana, verifies that the amount was correct and then signs the tx elements with an ar wallet and sends the signature back to the arloader client. That signature is then added to the local tx with data and submitted directly to arweave. The amount of the sol tx is calculated by arloader locally based on the required ar reward, including any multiplier, if any.
  3. You can always check to see how much transactions will cost by running arloader estimate and include --with-sol to get the estimate in SOL. U.S. dollars included for both as an additional point of reference. You can also then check the Solana and Arweave block explorers to confirm the amounts. Mostly for simplicity sake, I have the sol amount at a fixed exchange rate
    pub const RATE: u64 = 2500;
    which currently happens to be pretty close to where the market prices are relative to dollars. I've thought about making that more dynamic, but the volume is fairly low overall and it is mostly there as a convenience. You can always use AR directly and effectively transact directly with Arweave.
  4. The arloader code is completely open source, so you can check all of this to verify. Here is the code for creating the solana tx.
    pub async fn create_sol_transaction(
    And here is where that gets sent to the arloader.io endpoint
    pub async fn sign_transaction_with_sol(
    with the signature received back and then added to the local tx before uploading to arweave.

Hope that helps, happy to answer any other questions.

If you are planning on using regularly for any kind of volume and have ideas on features / improvements that would be valuable, I'd be keen to hear about those.

from arloader.

enzotar avatar enzotar commented on July 22, 2024

from arloader.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.