May 28, 2019

Deep Dive Interview + Q&A with Cardano Fellow Robert Kornacki, founder of SYRE

Together Agency

STO-Blockchain-banner-3.png

Introduction

SYRE is an innovative and easy-to-use blockchain tool for all cryptocurrency users that immensely enhances user experience and provides real utility. It is designed and developed by Robert Kornacki, one of the first Cardano fellows in the dLab/EMURGO accelerator program, with an aim to solve an important problem: making sure than users are sending funds to the correct intended wallet addresses. EMURGO – the official commercial arm of Cardano, interviewed Robert Kornacki for a better understanding of his concept for SYRE, the day-to-day application of SYRE and more.

1. When and why did you have the initial idea for SYRE?

Initially when I applied to become a dLab/EMURGO Cardano Fellow, both dLab and EMURGO came to me and showed me a variety of big issues they wanted to tackle in the blockchain space. One of these problems was that people have no surety whenever they send transactions. A recent study by Fio showed that 75% of crypto users are afraid to send transactions. This is a big problem that they were looking to solve. Originally, they wanted a Cardano name service but they were open to other ideas. So, I got to thinking for a couple weeks leading up to becoming a Fellow. I had the idea of finding ways to guarantee that when you confirm a transaction, the transaction goes to the right place. At the same time that I was thinking about how to solve this, I was also doing other work in the Cardano ecosystem. As I was looking through the Haskell code, I realized you can append data to transactions in Cardano. I came up with an idea: what if we send payment requests or invoices on-chain as a way of guaranteeing that the wallet address a person is sending money to is correct? Then it evolved from there, and I started looking at different attack vectors. Over time the project improved and improved until SYRE came to be.

2. What is SYRE? Why is it called SYRE?

SYRE is a blockchain agnostic, tokenless, invoice-based protocol that aims to solve transaction surety. It is a way of sending invoices both on-chain and off-chain. These invoices have guarantees to ensure that the money you send goes to the right place. This means you don’t lose funds, and you have guarantees that you never had before with existing cryptocurrency payment systems. Cryptocurrencies expect senders to take all the responsibility without providing any of the safety. SYRE makes the whole experience more enjoyable and safer for the user rather than scary every time they are needed to send transactions.

The voice box of a bird is a syrinx. Originally, the idea was to use this name as this voice box relates to signalling theory. Birds signal to each other using their voice. They request things from each other using signals. The idea of an invoice being signalled over a blockchain related to syrinx quite well. I was happy to shorten syrinx down to a simple four-letter word, SYRE. I was very surprised the domain was still available, so I took it.

3. Is it safe to use? Why?

Invoices just thrown on a blockchain are not safe to use. That’s why SYRE isn’t just a two-line protocol. It’s actually a bit more complicated and the reason for that is because with blockchain, there are a lot of attack vectors. Everyone wants to steal your money, so you have to use cryptography and good systems design to prevent them from doing so. SYRE’s use of public key cryptography in the design gives users the benefits of preventing replay attacks on-chain and man-in-the-middle attacks off-chain. SYRE isn’t guaranteed to prevent all loss of money, since there’s no guarantee every developer will code everything perfectly into wallets. There are always potential holes and bugs. However, once developers implement SYRE correctly and as intended, there should not be any issues.

4. What type of industries would you like to see adopting the use of SYRE?

Every business that accepts cryptocurrency payments should use SYRE. The reason for that is because currently, the majority of the systems we have are not effective. Take the example of an online merchant checkout scenario. Currently, a customer goes to the checkout page and they select the option, “Checkout with cryptocurrencies”. Then, a wallet address pops up and they have 15-30 minutes to pay.  This is really bad, because the address the merchant shows you might not be valid, or the backend of the merchant’s server might not be set-up correctly. They might have malware, or the address might be malformed. A customer who needs to copy the merchant’s address might have malware, which edits the merchant’s address on their clipboard. They might end up messing up a character, or they might simply paste the address twice. There are many attack vectors in this scenario, yet this is still the standard the industry accepts on a daily basis for the vast majority of business to customer scenarios. This is extremely unsafe.

Using something like SYRE makes so much more sense, because there are guarantees. In the online checkout example, you could have an invoice sent to the customer from the merchant’s server. This could be sent to the customer’s wallet, such as EMURGO’s Yoroi wallet, instantly.  The only thing the customer would have to do is check the invoice that arrived in their wallet and check the merchant’s checkout page. The user has no input required. Incorporated into the invoice could be an expiry time. This means that once a certain time passes, the customer cannot fulfil the invoice. Instead of having the user do everything manually, the technology can do all the work for the user. All the user has to do is make sure everything looks good, then confirm the transaction. SYRE is a big step forward for any companies that accept crypto payments, as the solutions we have today just aren’t good enough.

5. Why is SYRE free of smart contracts, blockchain agnostic and tokenless?

The reason SYRE is smart contract free, blockchain agnostic and tokenless is because optimally you want a protocol that works for every single cryptocurrency out there. It’s not just for Cardano. It sets a standard for everyone to use. The advantage is that once people begin building tools and ecosystems around this, you want it to be as simple as possible for everyone else to implement SYRE. For example, if someone has a multi-currency wallet, the same SYRE invoice UI could be used for each different cryptocurrency supported by the wallet. This leads to an integrated system where, if you have 6 different blockchains, you can create invoices for each separate blockchain no matter what type it is, whether it is UTxO or accounts based or if it supports smart contracts or not. The idea is that this will be a large improvement, so why not make it possible to implement it in every blockchain, while also leveraging off the work that developers do to improve their respective blockchains. Ultimately this will help build a good ecosystem for the long term.

6. What is the difference between on-chain and off-chain SYRE invoices?

On-chain invoices were the original reason why SYRE came to be. They are great, because all a user needs to do is send an invoice directly to another user’s cryptocurrency wallet address. No other channel is needed to send an invoice, except the blockchain itself. However, there are numerous drawbacks which makes on-chain invoicing less than ideal for every scenario. The two major drawbacks are that you have to pay a transaction fee every time you send an invoice, and you have to wait during a blockchain’s confirmation time. In numerous scenarios, such as the online merchant checkout example from earlier, on-chain invoicing requires that a user wait anywhere from 30 seconds to 10 minutes (depending on the blockchain) for the invoice to reach another user on-chain. That’s a really long time for a customer to wait on a checkout page just to receive an invoice. That’s not a good user experience, on top of having to pay a transaction fee. Off chain invoices don’t require using the blockchain, and it bypasses wait times and transaction fees. Using their private key, the issuer can sign the invoice with the unique invoice data to verify who they are.  Once they are signed in the issuer’s wallet, this can be sent instantly off of the blockchain using email, post, SMS or any other communication medium. Also, you can have it as an API call from website’s server to a web wallet such as Yoroi. As all of the information is all encrypted and easily transmitted, off-chain invoices are versatile and safe, usable across physical and digital mediums with the same safety standards as on-chain transactions.

7. What is a simple example of how two people would use SYRE for an on-chain or off-chain transaction?

A basic example would be a person who works for someone else and wants to receive payment for this. Instead of just sending money to the worker, the employee is the person who can send an invoice to the employer, specifying the tasks completed and the amount of money requested. What that does is make it quite easy to send on-chain, but since these two people work together they probably already email, so what’s the point of sending it on-chain? Why not create an invoice using SYRE in Yoroi, then send it by email. The employer just needs to click “confirm” once everything is confirmed, and the crypto ends up getting sent to the employee.

8. What will SYRE look like for daily wallet users, such as EMURGO’s Yoroi wallet?

We’re still looking at the user experience angle. A lot of SYRE’s core protocol design is finished, however we’re still exploring the user experience side of things. Nonetheless, just to give a general idea, there will likely be a SYRE invoices section of Yoroi. Essentially, you’ll have a section dedicated to Cardano invoices. For on-chain invoices or any invoices you import, you’ll have a list of all the invoices you have received which you can accept or reject, and an archive of old invoices. You can almost treat this as a pseudo email inbox. You can import invoices manually, invoices can come in on-chain and you can have a list of invoices which you can reply to by accepting or rejecting, or trash and deny, just like email.  There will be a simple UI to fulfill invoices and the ability to create invoices by filing out all the relevant information that’s required. Then you can choose to send this on-chain to a specific address or off-chain by exporting it and sending it via your favourite messaging service.

9. What are SYRE extensions? Please give an example of how a SYRE extension could benefit a user.

SYRE was designed to be as simple as possible. Instead of trying to take over the world with one protocol with everything built in, you want a really good core that has the basic essentials, especially with on-chain transactions where there will be higher transaction fees for larger amounts of data transmitted across the blockchain. If a SYRE invoice is required to send a large amount of data, sending an invoice might cost two dollars rather than half a penny. That is not good. Transaction fees are unknown for all of the different blockchains, so the idea is to make the core SYRE protocol as lean as possible so transactions are as cheap as they can be. This however does not mean there cannot be a lot of extensions and additions to the core protocol that can have very beneficial improvements to the user experience or to add new functionality.

As an example, an invoice expiration date could be added to a SYRE invoice. Currently, there is no easy way for someone to say, “Send me X amount of cryptocurrency in Y time frame” without simply remembering this. We want to codify this functionality rather than hoping someone remembers to send a transaction by a certain time. An invoice expiration date moves required payment window to the wallet itself, so the user doesn’t have to think about it and doesn’t have to worry if times are out of sync between users. The wallet itself will guarantee that an invoice remains valid or not. This reinforces the safety guarantees that we know with established automated systems. We can implement entire new automated systems with expiration dates.

Let’s say it’s a scenario where we have an invoice for some work where there can be a longer expiration date. These extensions enrich the user experience, where context can be added around payments. This context might be niche, such as an app or industry use case where a unique SYRE extension might only be used by a very small percentage of total users. For such a niche use case, implementing this extension into the SYRE protocol would make no sense and having every developer implement it would be poor system design. The core SYRE protocol will be extremely lean, and some extensions such as the expiration date will be pretty standard. Others on the other hand, which certain industries will still use, will be carefully selected by the wallets themselves before implementing each extension.

10. How did being in the dLab/EMURGO Fellowship Program help you develop SYRE?

The business focus of dLab combined with the technical focus of EMURGO allowed SYRE to be developed with a strong foundation in both. Having EMURGO team members (Nico, Sebastien and Ruslan) to pitch ideas with and get feedback was a real benefit. The ability to spend the time developing these ideas was extremely important. It’s hard to create things like SYRE in your spare time, one or two hours each night. It’s important to spend time thinking about these things, to drill down and think about what makes sense and put the time in to create a white paper. This also meant thinking about different implementations on different blockchains, talking with different people and finding wallets to implement SYRE within like Yoroi.

In addition I am also going to be implementing SYRE into Tesseract, which is a startup in the dLab/EMURGO Startup Accelerator Program. If I didn’t have the benefits of being part of dLab and being a fellow, I never would have had these opportunities. Having an ecosystem around me with dLab and EMURGO to help build and oversee things was important. Having the support and ability to implement this in live wallets has been very helpful. There is no doubt that I have had much more success with SYRE working with dLab/EMURGO rather than going alone.

EMURGO always searches and supports innovative projects that solve existing problems in the blockchain space to push forward the maturation of the blockchain ecosystem as a whole and deliver real value add to ADA holders as SYRE will be integrated with Yoroi wallet in the near future.

About EMURGO

EMURGO drives the adoption of Cardano and adds value to ADA holders by building, investing in, and advising projects or organizations that adopt Cardano’s decentralized blockchain ecosystem. EMURGO leverages its expertise in blockchain R&D as well as its global network of related blockchain and industry partners to support ventures globally.

EMURGO is the official commercial and venture arm of the Cardano project, registered in Tokyo, Japan since June 2017 and in Singapore since May 2018. EMURGO is uniquely affiliated and works closely with IOHK to grow Cardano’s ecosystem globally and promote the adoption of the Cardano blockchain. To learn more about the project, visit the EMURGO website.

|| Click here to subscribe to the EMURGO Newsletter ||

Follow EMURGO on Social Media
・Official Homepage: emurgo.io
・Twitter (English): @emurgo_io
・Twitter (Japanese): @Emurgo_Japan
・Youtube: EMURGO
・Telegram: EMURGO Announcements
・Facebook: @emurgo.io
・Instagram: @emurgo_io
・LinkedIn: @emurgo_io

About Yoroi Wallet
・Yoroi Twitter: @YoroiWallet
・Yoroi Homepage: https://yoroi-wallet.com/

About Cardano
・Cardano Forum: https://forum.cardano.org/
・Cardano Telegram: https://t.me/CardanoGeneral
・Cardano Reddit: https://i.reddit.com/r/cardano

Related articles