Paper Transactions?

Is it possible to do paper transactions in general (any cryptocurrency)?

Let’s say I might not be able to get a store to adopt G1, but I may get a waiter or waitress to accept a tip with G1. He or she is unlikely to make an address on the spot, but I can leave behind paper bills.

It’s definitely possible to print an address on a piece of paper. Is there any way to print a « G1 coupon » (with any method, workaround, service, etc) ?

You send G1 on an account, then print its private key on a paper, with a QR code. There is G1Don. (« don » = gift, present, donation)

You can also print a transaction, but you still need a computer to generate it.

These methods are not secure for the person receiving the transaction, because in the first case the emitter still have the account’s privkey (thus can take back the G1) and in the second, the emitter just has to spend the sources before the transaction is written in blockchain.

We could imagine paper lightning networks, but it wouldn’t be very lightning…

I gave the idea a little more thought before and came up with what is roughly a passworded faucet (special URL to redeem), but indeed it isn’t secure for the one receiving the transaction.

I don’t see how this is an issue. I’d need a computer and a printer to create and print the paper bill. The point is giving the piece of paper to someone. However, I never heard of a printable transaction, or a transaction that doesn’t yet have a destination. So I’d appreciate if you could go into detail.

In « print a transaction », I mean the same type of transaction used by clients. You have to define a script for the outputs, it can be a temporary wallet (and you have to attach its privkey to the transaction) or a hash (if I understand well the XHX condition) (and you have to attach the seed).

The only way I see to make it secure for the receiver is to use lightning networks, but the receiver needs to have an account before the tx.

The only advantage is that a person having a computer can pay a person not having a computer right now.

There is still a problem: without a computer, one can’t verify that the document is correct. The issuer can have printed an invalid signature.

The use case is for a « tip », as is G1Don. So, the issuer would have no interest on giving a faulty tip.

But yes, paper wallets are really insecure for payment (if not backed by a trusted 3rd party)

I was thinking this idea could be executed securely with smart contracts; however G1 does not have smart contracts. (Don’t know if it will in the future.)

I’m not 100% sure. Most applications of smart contracts I’ve seen on blockchains are mundane uses (casual games, gambling, so on). So even I doubt this kind of an idea is do-able with smart contracts.

I don’t know much about smart contract, but if it can be considered as a PoW (you can unlock the output only when you resolve a problem), then the receiver has no proof that the issuer doesn’t have the solution.

G1SMS offers a service that allows you to print bills: https://g1sms.fr/fr/g1billet
Sorry for their French =)
On the bills, there is a QR code, but I don’t know what mechanism is used to allow the bill to be reused.

In theory bills are emitted by someone who can exchange them for the given value they represent.
So if I were to put a QR code on them, it would encode an identifier to a contract saying that this bill can be exchanged with the emitter for an amount of Ĝ1.
This contract system does not necessarily require to be encoded within the Ĝ1 blockchain (but it better be).
But again, I don’t know how G1SMS does it!