What is the most critical problem of Grin?

Usability I think it is.

Consensus is what makes a currency working, but how people reach consensus if they even can not understand it ? When you said Grin is a better digital currency because of privacy, scalability, blablabla, I said “it sounds good, let my try it” , and failed on sending the hello-world money to my friend with any of the wallets, just because her wallet is not online. Then you said she just need to run a local grin wallet and node on her linux server. but she even doesn’t know linux at all. We can’t expect the currency users including miners are all tech guru, or their amount is not big enough to support a currency.

So making Grin easy to use is the key to make Grin grow fast enough to avoid death, including some kind of asynchronous transferring, easy-to-use wallet and mining tool which I’m working on. Hopefully more developers of Grin will go on this way.


Your friend doesn’t need to be online and doesn’t need linux either.
Try run grin++ on Windows and send each other slatepacks over email or your favorite messenger.


Yeah I konw grin++. Just check out the comments on Google Play, you will find out how people think of it. Such as you have to wait for a century until it’s fully synced for the node before you are able to see your balance.

As for the slatepack, I was scared at the first time I see it even as a developer. it’s non-intuitive for just a money transfer action. I can’t imagine most people of the world make payment or transfer money as this way in the future.

1 Like

If you want to be up and running ASAP, try ironbelly wallet on mobile. Grin++ is a full validating node.

1 Like

If you do not like to wait, you just download IronBelly (Android or iOS) which is a light wallet and can be directly used after install. As Tromp said, just send the transaction with slatepacks via your favorite messaging APP, easy peasy :wink:.

Can I withdraw Grin from the Gate using IronBelly?I tried and failed. Is there any experience of successful withdrawal from gate?

I think that gate has problems with withdraw. The most reliable exchange at the moment is tradeogre.com

I completely agree. And due to this, there is ONLY one exchange that fully supports Grin. And gate.io is another exchange that partly supports Grin. This is really a big issue!

1 Like

Centralized mining on 1 pool


I’d love a self hosted GRIN pool server ansible playbook lol

1 Like

I’m the developer of the Mobile application and I don’t like to wait either :rofl: so don’t worry you’re not alone on this one.

I want to make the Android application as easy and usable as possible. Now, the little hardware resources of the mobile phones, and the different versions makes this a huge challenge. But, we’re working on it.

1 Like

David you have done great job for Grin. I also noticed that you hate the word “Slatepack” as well.
Grin is not Bitcoin 2.0, so we don’t need to compare it to Bitcoin or any of other cryptocoins, Its purpose is for ANYONE to use it as digital cash, so we should always ask ourself one question when we need to make any choice: does the choice make more people use Grin more easily?

I know many people would rather leave their coins in exchange wallet even without trading it, instead of their own local wallet. It means sometimes security can be compromised for better usability. We should consider the fact and do something to support this kind of scenario as developer. That’s my point.


Russia just started to block tor. The chances that both transaction parties manage to use a tor bridge are negligible, so realistically most people are left with the manual 3 step transaction method. As we see with the Chinese mining pools and exchanges (tor is not an option in China too), this is detrimental to the desire path[0] of many people, where they expect the automatable realtime transaction that they are used to from other cryptocurrencies. Security only seems to be a secondary concern. Since Grin does not enforce any transaction method, people are using a parallel standard for realtime transactions[1]. They are using their desire path and ignore the paths that are provided by the slatepack standard. I think this situation is partially a result of not yet having a secure and scalable solution for the actual desire path.

[0] Desire path - Wikipedia
[1] Grin Pool Centralization Over 80%

If Russia would ban Tor, that would be real troublesome for Russian Grin users. As far as I can understand, this is mostly a symbolic move. I think they blocked the downloading website, meaning people have to do a bit more effort to download tor. E.g., ask any other tor user to download it for them.
Hopefully it stays with that, some symbolic moves. Or can you confirm they actually blocked network traffic over tor?

And you just lost >90% of users. Individual users may find loopholes, but businesses such as exchanges will comply with whatever is deemed legal (or at least low risk) in their country.

i don’t think the problem is with slatepacks but that there are no good explanations of it for non-tech users. If we would use contract → sign → sign as our 3 step explanation then slatepack represents the current state of the contract, so contract with no sigs, then with 1 sig, then with 2 sigs. To me that seems easy enough for people to understand


I like this metaphor the most so far!

I like this idea either. I will use them in my upcoming wallet product. But I still think the 3 steps transfer is too much for end users to understand. Someone has ever proposed 2 step transfer in a Grin RFC on Github which is perfect to me. The sender send a contract with his sig, the receiver sign it and it’s done! Intuitive and quick.


I love the words slatepacks and it’d be shame to remove that language imo.

It sounds like the issue has nothing to do with the word itself or whatever you would call the contract → sign → sign process…

Sounds like a layer 2 UX problem completely.

For example: “Copy the slatepack and send it through your favorite messenger” could be simplified to a “share” button on the phone which could either 1. send the slatepack as plaintext to a recipient through any app you choose from the phone’s share feature or 2. an app like CashApp which stores a contact list and would handle all of the Slatepacks info in the background while you just press an amount and send – neither of you would have to be online but just like with cashapp it needs the network to send or receive and see wallet info.

Eventually when one or both of you are online it completes the transaction without needing manual finalization. This is sorta close to how it works already, but the app would resemble more of a messenger protocol with grin as what is being sent and received.

I dream for a Grin app which has all of this and has atomic swaps with bitcoin built in lol


In the past I also thought that the most important thing is to figure out how to do it in 2 steps but after thinking about it for some time i don’t think you can get rid of the spam attack, so I’m against 2 step schemes now, unless someone shows me how to get rid of the spam attack. Just to explain, the spam attack I’m mentioning is just “spam the other party with step1 contracts” and it will fill his database (and in case of manual confirmations it would also fill his tx inbox). This can be solved through ephemeral addresses which are afaik not possible in step 2 schemes