How Offline Transfers Work

How Offline Transfers Work in Roru

Roru enables true offline transfers, allowing you to send and receive cryptocurrency without any network connectivity. This is made possible through Roru One hardware device and encrypted proof bundles that can be transferred device-to-device.

Overview of Offline Transfers

What Makes Offline Transfers Possible

Offline transfers are made possible through a combination of hardware security, cryptographic proof bundles, and direct device-to-device communication. These three components work together to enable transactions without any network infrastructure.

Hardware Security:

Roru One's hardware secure element enables offline transaction signing by storing cryptographic keys in tamper-resistant hardware. The device can sign transactions and generate zero-knowledge proofs entirely offline, without requiring any network connection for these critical operations.

  • Roru One stores keys in secure element

  • Can sign transactions offline

  • Generates proofs locally

  • No network required for signing

Proof Bundles:

Proof bundles are self-contained packages that include all the information needed to validate and settle a transaction. These bundles contain encrypted transaction data and zero-knowledge proofs that can be transferred between devices offline and later validated when network connectivity is available.

  • Encrypted transaction data

  • Zero-knowledge proofs

  • Can be transferred offline

  • Validated when network available

Device-to-Device Communication:

Offline transfers use direct communication between devices, bypassing network infrastructure entirely. Roru One supports NFC and Bluetooth for wireless transfers, while the wallet application can also use QR codes for visual transfer methods.

  • NFC for contactless transfer (Roru One)

  • Bluetooth for wireless transfer (Roru One)

  • QR codes for visual transfer (Wallet only)

  • Encrypted and secure

Offline Transfer Architecture

Components

The offline transfer system consists of three main components that work together to enable secure, private transactions without network connectivity.

Roru One Device:

Roru One provides the hardware foundation for offline transfers through its secure element, which enables offline proof generation. The device includes encrypted storage for transaction data and multiple communication interfaces for transferring proof bundles.

  • Hardware secure element

  • Offline proof generation

  • Encrypted storage

  • Communication interfaces

Proof Bundle:

A proof bundle is a self-contained package that includes all the cryptographic information needed to validate and settle a transaction. It contains the transaction data, zero-knowledge proof, encryption metadata, and other information required for network validation.

  • Transaction data

  • Zero-knowledge proof

  • Encryption

  • Metadata

Transfer Mechanism:

The transfer mechanism handles the secure transmission of proof bundles between devices. It establishes encrypted channels, performs secure handshakes to verify device authenticity, and ensures the bundle is transferred correctly.

  • NFC or Bluetooth (Roru One)

  • QR codes (Wallet only)

  • Encrypted channel

  • Secure handshake

  • Verification

Process Flow

The offline transfer process follows a four-step flow that enables complete transaction functionality without network connectivity, with final settlement occurring when connectivity is restored.

1. Transaction Creation (Offline)

The process begins when a user creates a transaction on Roru One while offline. The device signs the transaction using keys stored in its secure element, generates a zero-knowledge proof locally, and creates an encrypted proof bundle containing all necessary information.

  • User creates transaction on Roru One

  • Device signs transaction offline

  • Proof generated locally

  • Bundle created and encrypted

2. Device-to-Device Transfer

The proof bundle is transferred directly from the sender's device to the recipient's device using NFC, Bluetooth, or QR codes. The transfer is encrypted, and a secure handshake verifies both devices before the bundle is transmitted.

  • Proof bundle transferred via NFC or Bluetooth (Roru One)

  • Wallet can also use QR codes

  • Encrypted during transfer

  • Secure handshake established

  • Bundle received by recipient

3. Local Validation (Offline)

Upon receiving the bundle, the recipient's device validates it locally without requiring network connectivity. The device verifies the proof structure, checks encryption integrity, and stores the bundle for later broadcast to the network.

  • Recipient validates bundle locally

  • Verifies proof structure

  • Checks encryption

  • Stores for later broadcast

4. Network Sync (When Online)

When network connectivity is restored, the stored proof bundle is broadcast to the network. The network verifies the zero-knowledge proof, updates the shielded state, and finalizes the transaction settlement.

  • When connectivity restored

  • Bundle broadcast to network

  • Network verifies proof

  • State updated

  • Transaction settled

Creating Offline Transfers

On Roru One

Step 1: Access Offline Mode

To create an offline transfer, first enable offline mode on Roru One. In this mode, the device operates completely air-gapped with no network connections, ensuring maximum security and true offline capability.

  • Enable offline mode on Roru One

  • Device operates air-gapped

  • No network connections

  • Full offline capability

Step 2: Create Transaction

Create the transaction by selecting the recipient from your address book or entering a new address, then enter the amount you wish to send. Review all transaction details carefully before confirming on the device.

  • Select recipient (from address book or new)

  • Enter amount

  • Review transaction details

  • Confirm on device

Step 3: Generate Proof

Once confirmed, Roru One generates a zero-knowledge proof locally on the device. This proof generation happens entirely offline and typically takes 1-5 seconds, depending on the transaction complexity.

  • Device generates zero-knowledge proof

  • Proof created locally

  • No network required

  • Takes 1-5 seconds

Step 4: Create Bundle

The device creates a proof bundle by encrypting the transaction data, including the zero-knowledge proof, and adding necessary metadata. The bundle is then finalized and ready for transfer.

  • Transaction data encrypted

  • Proof included

  • Metadata added

  • Bundle finalized

Step 5: Transfer Bundle

Choose your preferred transfer method—NFC or Bluetooth for Roru One, or QR codes if using the wallet. Initiate the transfer, and the bundle will be encrypted during transmission to the recipient's device.

  • Choose transfer method (NFC or Bluetooth for Roru One)

  • Wallet can also use QR codes

  • Initiate transfer

  • Bundle encrypted during transfer

  • Transfer completes

Transaction Details

Understanding what's included in a proof bundle and how it's encrypted helps clarify how privacy is maintained even during offline transfers.

What's Included:

A proof bundle contains all the information needed to validate and settle the transaction. The transaction amount is hidden within the zero-knowledge proof, while sender information is encrypted. The bundle also includes recipient information, a timestamp, and a cryptographic signature to prove authenticity.

  • Encrypted transaction data

  • Zero-knowledge proof

  • Sender information (encrypted)

  • Recipient information

  • Amount (hidden in proof)

  • Timestamp

  • Bundle signature

Encryption:

The entire proof bundle is encrypted using the recipient's public key, ensuring that only the intended recipient can decrypt and access the transaction information. This end-to-end encryption maintains privacy throughout the transfer process.

  • Bundle encrypted with recipient's key

  • Only recipient can decrypt

  • End-to-end encryption

  • Secure transfer

Receiving Offline Transfers

On Recipient Device

Step 1: Prepare to Receive

To receive an offline transfer, open receive mode on your device and enable the appropriate communication method—NFC or Bluetooth for Roru One transfers, or the QR scanner if using the wallet. Your device is now ready to receive the proof bundle.

  • Open receive mode

  • Enable NFC/Bluetooth (for Roru One transfers)

  • Wallet can also use QR scanner

  • Device ready to receive

  • Waiting for transfer

Step 2: Receive Bundle

The proof bundle is received through your chosen transfer method. The bundle remains encrypted during transfer and is stored locally on your device once the transfer completes.

  • Bundle received via chosen method

  • Encrypted during transfer

  • Stored locally

  • Transfer complete

Step 3: Validate Bundle

Your device decrypts the bundle using your private key and validates its contents. This includes verifying the proof structure, checking encryption integrity, and validating the bundle signature to ensure authenticity.

  • Decrypt bundle (using your key)

  • Verify proof structure

  • Check encryption

  • Validate signature

Step 4: Store for Broadcast

Once validated, the bundle is stored in a queue on your device, waiting for network connectivity. You can validate your balance locally based on the received transaction, and the bundle is ready to be broadcast when you go online.

  • Bundle stored in queue

  • Waiting for network connectivity

  • Can validate balance locally

  • Ready to broadcast

Step 5: Broadcast (When Online)

When network connectivity becomes available, your device automatically broadcasts the proof bundle to the network. The network verifies the zero-knowledge proof, updates the shielded state, and confirms the transaction.

  • When network available

  • Bundle broadcast to network

  • Network verifies proof

  • State updated

  • Transaction confirmed

Local Validation

Local validation allows recipients to verify proof bundles immediately upon receipt, even without network connectivity. However, some validation steps require network access to check against the global state.

What Can Be Validated Offline:

Your device can validate several aspects of a proof bundle completely offline. This includes checking the proof structure, verifying encryption integrity, validating signatures, and ensuring the bundle format is correct.

  • Proof structure

  • Encryption integrity

  • Signature validity

  • Bundle format

What Requires Network:

Certain validation steps require network connectivity to check against the global shielded state. These include final proof verification by the network, updating the global state, checking for double-spending, and finalizing settlement.

  • Final proof verification

  • State update

  • Double-spend check

  • Settlement

Transfer Methods

NFC (Near Field Communication)

NFC enables contactless transfers by bringing devices into close proximity. This method is ideal for in-person transactions where both parties are physically present.

How It Works:

NFC transfers work by bringing the two devices close together—typically within a few centimeters. The NFC interface automatically establishes a connection, transfers the proof bundle, and completes the transfer quickly and conveniently.

  • Devices brought close together

  • NFC establishes connection

  • Bundle transferred

  • Fast and convenient

Advantages:

NFC transfers are very fast and don't require prior pairing between devices. The close proximity requirement provides inherent security, and the process is straightforward and easy to use.

  • Very fast transfer

  • No pairing needed

  • Secure (close proximity)

  • Easy to use

Limitations:

NFC requires devices to be in very close proximity, and both devices must have NFC capability. The limited range means it's only suitable for in-person transfers.

  • Requires close proximity

  • Both devices need NFC

  • Limited range

Bluetooth

Bluetooth provides wireless communication over longer distances than NFC, making it suitable for transfers where devices aren't in direct contact.

How It Works:

Bluetooth transfers begin by establishing a pairing between the two devices. Once paired, an encrypted connection is created, the proof bundle is transferred, and the connection is closed after completion.

  • Bluetooth pairing established

  • Encrypted connection

  • Bundle transferred

  • Connection closed

Advantages:

Bluetooth offers longer range than NFC and is a standard technology available on most devices. It provides reliable transfers and is well-suited for scenarios where multiple transfers might occur between the same devices.

  • Longer range than NFC

  • Standard technology

  • Reliable transfer

  • Good for multiple transfers

Limitations:

Bluetooth requires initial pairing between devices, which takes a bit more time than NFC. The transfer is slightly slower than NFC, and Bluetooth communication does consume battery power.

  • Requires pairing

  • Slightly slower than NFC

  • Battery usage

QR Codes (Wallet Only)

QR codes provide a visual transfer method that doesn't require direct device-to-device communication. This method is only available in the wallet application, as Roru One doesn't have a screen or camera.

How It Works:

The sender's wallet generates a QR code containing the proof bundle data. The recipient scans this QR code using their wallet's camera, and the bundle is decoded from the QR code image to complete the transfer.

  • Wallet generates QR code for bundle

  • Recipient scans QR code with wallet

  • Bundle decoded from QR

  • Transfer complete

Advantages:

QR codes don't require direct device connection and work with any device that has a camera. The QR code can be printed or displayed on a screen, providing universal compatibility across different device types.

  • No direct connection needed

  • Works with any camera

  • Can be printed/displayed

  • Universal compatibility

Limitations:

QR code transfers are slower than NFC or Bluetooth due to the data size limitations of QR codes. They require a good camera for reliable scanning and need visual line of sight between the QR code and the scanning device.

  • Slower transfer (data size)

  • Requires good camera

  • Visual line of sight needed

  • Wallet only (Roru One has no screen/camera)

Note: Roru One does not support QR codes as it has no screen or camera. QR codes are only available when using the wallet application.

Proof Bundle Structure

Bundle Components

A proof bundle is structured into several components that work together to enable secure, private offline transfers. Each component serves a specific purpose in maintaining privacy and enabling validation.

Header:

The bundle header contains metadata about the bundle itself, including the bundle version, encryption method used, transfer method, and other metadata needed for proper processing and validation.

  • Bundle version

  • Encryption method

  • Transfer method

  • Metadata

Transaction Data:

The transaction data section contains the encrypted transaction details, including encrypted sender information, recipient information, and the transaction amount (which is hidden within the zero-knowledge proof and not directly visible).

  • Encrypted transaction details

  • Sender information (encrypted)

  • Recipient information

  • Amount (in proof, not visible)

Zero-Knowledge Proof:

The zero-knowledge proof is the cryptographic proof that validates the transaction without revealing any private information. This proof is verifiable by the network and is compact in size, typically around 1-2 KB.

  • Proof of transaction validity

  • Hides all private information

  • Verifiable by network

  • Small size (~1-2 KB)

Signature:

The bundle signature cryptographically proves the authenticity of the bundle and prevents tampering. This signature can be verified to ensure the bundle hasn't been modified since creation.

  • Bundle signature

  • Proves authenticity

  • Prevents tampering

  • Verifiable

Encryption

The encryption scheme ensures that proof bundles remain private and can only be accessed by the intended recipient, maintaining privacy throughout the offline transfer process.

Encryption Scheme:

Proof bundles use public key encryption, where the bundle is encrypted using the recipient's public key. This ensures that only the recipient, who possesses the corresponding private key, can decrypt and access the transaction information. This provides end-to-end security.

  • Public key encryption

  • Recipient's public key

  • Only recipient can decrypt

  • End-to-end secure

Key Management:

Encryption keys are derived from the wallet's master key material, ensuring secure key management without requiring key transmission. The system is designed to be secure by default, with keys never exposed during the transfer process.

  • Keys derived from wallet

  • Secure key exchange

  • No key transmission

  • Secure by design

Security Properties

Offline Security

Key Protection:

  • Keys never leave secure element

  • Offline signing

  • No network exposure

  • Hardware security

Proof Security:

  • Proofs generated securely

  • Cryptographically sound

  • Cannot be forged

  • Privacy preserved

Bundle Security:

  • Encrypted bundles

  • Signed bundles

  • Tamper-resistant

  • Secure transfer

Network Security

Broadcast Security:

  • Encrypted broadcast

  • Secure channels

  • Relayer privacy

  • Infrastructure security

Verification Security:

  • Network verifies proofs

  • Double-spend prevention

  • State integrity

  • Complete security

Use Cases

Offline Commerce

Physical Payments:

  • Pay at physical stores

  • No internet required

  • Fast and convenient

  • Private transactions

Remote Locations:

  • Areas without connectivity

  • Emergency situations

  • Travel scenarios

  • Offline-first environments

Air-Gapped Security

Maximum Security:

  • Complete air-gap

  • No network exposure

  • Hardware security

  • Ultimate privacy

High-Value Transactions:

  • Large amounts

  • Security-critical

  • Privacy-critical

  • Institutional use

Backup and Recovery

Offline Backup:

  • Store bundles offline

  • Backup transactions

  • Recovery scenarios

  • Redundancy

Limitations and Considerations

What Works Offline

Fully Offline:

  • Creating transactions

  • Signing transactions

  • Generating proofs

  • Transferring bundles

  • Receiving bundles

  • Local validation

What Requires Network

Requires Connectivity:

  • Final proof verification

  • State updates

  • Double-spend checking

  • Settlement

  • Balance updates (from network)

Network Sync

When Connectivity Restored:

  • Bundles broadcast automatically

  • Network verifies and processes

  • State updated

  • Transactions confirmed

  • Balance updated

Sync Process:

  • Automatic when online

  • Manual sync option

  • Batch processing

  • Efficient updates

Best Practices

Creating Offline Transfers

  1. Verify Recipient: Verify recipient before creating

  2. Check Balance: Ensure sufficient balance

  3. Review Details: Review all transaction details

  4. Secure Transfer: Use secure transfer method

  5. Confirm Receipt: Confirm recipient received bundle

Receiving Offline Transfers

  1. Validate Bundle: Validate bundle immediately

  2. Store Securely: Store bundle securely

  3. Monitor Sync: Monitor network sync

  4. Verify Settlement: Verify settlement when online

  5. Check Balance: Verify balance updated

Security Practices

  1. Secure Environment: Use in secure environment

  2. Verify Devices: Verify device authenticity

  3. Check Encryption: Ensure encryption is working

  4. Monitor Transfers: Monitor all transfers

  5. Report Issues: Report any security issues

Troubleshooting

Common Issues

Transfer Fails:

  • Check device proximity (NFC)

  • Verify Bluetooth pairing

  • Check QR code quality

  • Retry transfer

Bundle Invalid:

  • Verify bundle format

  • Check encryption

  • Validate signature

  • Contact support

Sync Issues:

  • Check network connection

  • Manually trigger sync

  • Verify network status

  • Wait and retry

Advanced Features

Batch Offline Transfers

Multiple Transfers:

  • Create multiple transfers offline

  • Batch into single operation

  • Transfer all at once

  • Efficient processing

Offline Address Book

Stored Addresses:

  • Addresses stored on device

  • Accessible offline

  • Encrypted storage

  • Quick selection

Offline Balance View

Cached Balance:

  • Balance cached locally

  • Viewable offline

  • Updated when online

  • Approximate when offline

Conclusion

Offline transfers provide:

  • True Offline Capability: Complete functionality without network

  • Hardware Security: Keys protected by secure element

  • Privacy: Private transactions even offline

  • Flexibility: Multiple transfer methods

  • Security: Encrypted and secure transfers

Offline transfers make Roru truly portable and sovereign, enabling cryptocurrency transactions anywhere, even without internet connectivity, while maintaining complete privacy and security.

Last updated