AirGap
Published in

AirGap

The road to Babylon for AirGap

With the Babylon protocol upgrade for the Tezos protocol around the corner, AirGap has made sure to be ready to support the upgrade.

Babylon is the second protocol upgrade after Athens to the Tezos protocol and brings many small and large changes in different areas. Notably for wallet users is the change that implicit accounts(tz1, tz2, tz3) become delegatable. Before Babylon a kt account had to be originated to perform a delegation.

The other various changes introduced with Babylon do not directly impact AirGap or its users.

👉 Updates for AirGap Wallet & AirGap Vault iOS and Android will be released as soon as the Babylon upgrade becomes active and will be accessible through the official app stores. Additionally the Android version will be available on GitHub.

What do the Babylon changes mean for new AirGap users

Delegatable implicit accounts are a good user experience improvement for wallet users. AirGap already handled a lot of the heavy lifting already before Babylon and supported one transaction delegations resulting in a only a small change from the perspective of an AirGap user. New users will now only see their tz1 account and use it for delegation instead of having a tz1 andkt1 account.

For existing AirGap users

Users that have created a delegation with AirGap only have to take action if they want to redelegate their XTZ to another baker, for this we provide the migration path to transfer the XTZ from the kt1 to the tz1 account.

👉 Transactions from and to the kt1account are still supported.

For developers

With the switch to the Babylon upgrade existing originated kt1 accounts will be migrated and given the manager.tz script. The open source Typescript library airgap-coin-lib used by both AirGap apps has implemented the interaction with the manager.tz contract for spend(transfer) operations.

const code: string =
'ff' + // 0xff (or any other non-null byte): presence flag for the parameters (entrypoint and argument)
'02' + // 0x02: tag of the "%do" entrypoint
hexArgumentLength + // <4 bytes>: length of the argument
'02' + // 0x02: Michelson sequence
hexSequenceLength + // <4 bytes>: length of the sequence
'0320' + // 0x0320: DROP
'053d' + // 0x053d: NIL
'036d' + // 0x036d: operation
'0743' + // 0x0743: PUSH
'035d' + // 0x035d: key_hash
'0a' + // 0x0a: Byte sequence
'00000015' + // 0x00000015: Length of the sequence (21 bytes)
hexDestination + // <21 bytes>: <destination>
'031e' + // 0x031e: IMPLICIT_ACCOUNT
'0743' + // 0x0743: PUSH
'036a' + // 0x036a: mutez
hexAmount + // <amount>: Amout to be transfered
'034f' + // 0x034f: UNIT
'034d' + // 0x034d: TRANSFER_TOKENS
'031b' // 0x031b: CONS
// tslint:enable:prefer-template

const spendOperation: TezosSpendOperation = {
kind: TezosOperationType.TRANSACTION,
fee: '2941',
gas_limit: '26283',
storage_limit: '0',
amount: '0',
counter: counter.toFixed(),
destination: destinationContract,
source: address,
code
}

The full code for the this can be found here https://github.com/airgap-it/airgap-coin-lib/tree/master/src/protocols/tezos.

As always we appreciate any feedback and will gladly answer questions.

Interested in AirGap? Stay in touch.

Telegram | GitHub | Website | Twitter | Reddit

--

--

--

Protect your crypto and store your private keys offline. It’s time to set up your safe place for your coins and get rewards.

Recommended from Medium

From A Traditional Application To SaaS Software | Transition’s Manual

Calling get Api using provider in Flutter

SFPC Week 1: Lifting the Mask off of Face Value

How to prepare for the Microsoft Power Platform Fundamentals certification

Keitaro supporting Montréal’s Open Data Initiative

Software Development Life Cycle(SDLC)

In this article, we intend to implement a smart attendance system in Raspberry Pi.

Platformer: Modular Moving Platform

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
AirGap

AirGap

Secure Key Generation & Wallet

More from Medium

Saito Consensus: Technical Overview and Prospects

Tron-Ethereum token migration announcement

KeyFi Integrates with Arbitrum

Axelar Network | DeFi Use Cases