bluewallet: the secure bitcoin wallet

41

Upload: others

Post on 19-Oct-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BlueWallet: The Secure Bitcoin Wallet

BlueWallet:The Secure Bitcoin Wallet

Christian Decker

ETH Zurich � Distributed Computing Group � www.disco.ethz.ch

Page 2: BlueWallet: The Secure Bitcoin Wallet

I Global

I No intermediary

I Instantaneous

I Pseudonymous

I Secure?

Page 3: BlueWallet: The Secure Bitcoin Wallet

I Global

I No intermediary

I Instantaneous

I Pseudonymous

I Secure?

Page 4: BlueWallet: The Secure Bitcoin Wallet

Security

Bitcoin:

I Ledger based on consensus

I ECDSA (secp256k1) signatures

I Auditable

User:

I Theft

I Price instability

I Legal uncertainty

I . . .

Page 5: BlueWallet: The Secure Bitcoin Wallet

Security

Bitcoin:

I Ledger based on consensus

I ECDSA (secp256k1) signatures

I Auditable

User:

I Theft

I Price instability

I Legal uncertainty

I . . .

Page 6: BlueWallet: The Secure Bitcoin Wallet

Opening an account in Bitcoin

Private Key Public Key Address

Page 7: BlueWallet: The Secure Bitcoin Wallet

Transferring bitcoins

TX: 41b221

B0.1

0

A4.798

1

A4.899

Prev. TX:

a1a53743

4.899

0

C...

1

Inputs Outputs|Outputs

Fee

0.001

Page 8: BlueWallet: The Secure Bitcoin Wallet

Transferring bitcoins

TX: 41b221

B0.1

0

A4.798

1

A4.899

Prev. TX:

a1a53743

4.899

0

C...

1

Inputs Outputs|Outputs

Fee

0.001

Page 9: BlueWallet: The Secure Bitcoin Wallet

Transferring bitcoins

TX: 41b221

B0.1

0

A4.798

1

A4.899

Prev. TX:

a1a53743

4.899

0

C...

1

Inputs Outputs|Outputs

Fee

0.001

Page 10: BlueWallet: The Secure Bitcoin Wallet

Transferring bitcoins

TX: 41b221

B0.1

0

A4.798

1

A4.899

Prev. TX:

a1a53743

4.899

0

C...

1

Inputs Outputs

|Outputs

Fee

0.001

Page 11: BlueWallet: The Secure Bitcoin Wallet

Transferring bitcoins

TX: 41b221

B0.1

0

A4.798

1

A4.899

Prev. TX:

a1a53743

4.899

0

C...

1

Inputs Outputs

|Outputs

Fee

0.001

Page 12: BlueWallet: The Secure Bitcoin Wallet

Transferring bitcoins

TX: 41b221

B0.1

0

A4.798

1

A4.899

Prev. TX:

a1a53743

4.899

0

C...

1

Inputs Outputs|Outputs

Fee

0.001

Page 13: BlueWallet: The Secure Bitcoin Wallet

Securing User Wallets

Protecting private keys is paramount.

Insecure Secure

Di�cult

Easy

Page 14: BlueWallet: The Secure Bitcoin Wallet

Securing User Wallets

Protecting private keys is paramount.

Insecure Secure

Di�cult

Easy

Page 15: BlueWallet: The Secure Bitcoin Wallet

Securing User Wallets

Protecting private keys is paramount.

Insecure Secure

Di�cult

Easy

Page 16: BlueWallet: The Secure Bitcoin Wallet

Securing User Wallets

Protecting private keys is paramount.

Insecure Secure

Di�cult

Easy

Page 17: BlueWallet: The Secure Bitcoin Wallet

Securing User Wallets

Protecting private keys is paramount.

Insecure Secure

Di�cult

Easy

Page 18: BlueWallet: The Secure Bitcoin Wallet

Securing User Wallets

Protecting private keys is paramount.

Insecure Secure

Di�cult

Easy

?

Page 19: BlueWallet: The Secure Bitcoin Wallet

Goals

I Mobile (Point-of-Sale payments)

I Easy to use

I Real-time payments

I Secure

Page 20: BlueWallet: The Secure Bitcoin Wallet

Result

Front Back

Page 21: BlueWallet: The Secure Bitcoin Wallet

Technical Details

Communication Chip

I Bluegiga BLE113 (8 bit)

I 8 kB RAM

I Always on

I Handles communication

I Handles user interaction

Crypto Chip

I STM32 F20RE (32 bit)

I 512 kB RAM

I On demand

I Performs crypto operations

I Stores private keys

There are currently no secure cryptocoprocessors with ECDSA secp256k1.

Page 22: BlueWallet: The Secure Bitcoin Wallet

Technical Details

Communication Chip

I Bluegiga BLE113 (8 bit)

I 8 kB RAM

I Always on

I Handles communication

I Handles user interaction

Crypto Chip

I STM32 F20RE (32 bit)

I 512 kB RAM

I On demand

I Performs crypto operations

I Stores private keys

There are currently no secure cryptocoprocessors with ECDSA secp256k1.

Page 23: BlueWallet: The Secure Bitcoin Wallet

Technical Details

Communication Chip

I Bluegiga BLE113 (8 bit)

I 8 kB RAM

I Always on

I Handles communication

I Handles user interaction

Crypto Chip

I STM32 F20RE (32 bit)

I 512 kB RAM

I On demand

I Performs crypto operations

I Stores private keys

There are currently no secure cryptocoprocessors with ECDSA secp256k1.

Page 24: BlueWallet: The Secure Bitcoin Wallet

Walkthrough

BLE Coprocessor

User

Interface

Point

of Sale

Bitcoin

Network Device

address

outputs

unsigned TX

TX

PIN

PIN

(PIN,unsigned TX)

signed TX

signed

TX

signed TX

con�rm

ation

Page 25: BlueWallet: The Secure Bitcoin Wallet

Walkthrough

BLE Coprocessor

User

Interface

Point

of Sale

Bitcoin

Network Device

address

outputs

unsigned TX

TX

PIN

PIN

(PIN,unsigned TX)

signed TX

signed

TX

signed TX

con�rm

ation

Page 26: BlueWallet: The Secure Bitcoin Wallet

Walkthrough

BLE Coprocessor

User

Interface

Point

of Sale

Bitcoin

Network Device

address

outputs

unsigned TX

TX

PIN

PIN

(PIN,unsigned TX)

signed TX

signed

TX

signed TX

con�rm

ation

Page 27: BlueWallet: The Secure Bitcoin Wallet

Walkthrough

BLE Coprocessor

User

Interface

Point

of Sale

Bitcoin

Network Device

address

outputs

unsigned TX

TX

PIN

PIN

(PIN,unsigned TX)

signed TX

signed

TX

signed TX

con�rm

ation

Page 28: BlueWallet: The Secure Bitcoin Wallet

Walkthrough

BLE Coprocessor

User

Interface

Point

of Sale

Bitcoin

Network Device

address

outputs

unsigned TX

TX

PIN

PIN

(PIN,unsigned TX)

signed TX

signed

TX

signed TX

con�rm

ation

Page 29: BlueWallet: The Secure Bitcoin Wallet

Walkthrough

BLE Coprocessor

User

Interface

Point

of Sale

Bitcoin

Network Device

address

outputs

unsigned TX

TX

PIN

PIN

(PIN,unsigned TX)

signed TX

signed

TX

signed TX

con�rm

ation

Page 30: BlueWallet: The Secure Bitcoin Wallet

Walkthrough

BLE Coprocessor

User

Interface

Point

of Sale

Bitcoin

Network Device

address

outputs

unsigned TX

TX

PIN

PIN

(PIN,unsigned TX)

signed TX

signed

TX

signed TX

con�rm

ation

Page 31: BlueWallet: The Secure Bitcoin Wallet

Walkthrough

BLE Coprocessor

User

Interface

Point

of Sale

Bitcoin

Network Device

address

outputs

unsigned TX

TX

PIN

PIN

(PIN,unsigned TX)

signed TX

signed

TX

signed TX

con�rm

ation

Page 32: BlueWallet: The Secure Bitcoin Wallet

Goals

I Mobile

I Easy to use

I Real-time payments

I Secure

?

Page 33: BlueWallet: The Secure Bitcoin Wallet

Goals

I Mobile

I Easy to use

I Real-time payments

I Secure

?

Page 34: BlueWallet: The Secure Bitcoin Wallet

Goals

I Mobile

I Easy to use

I Real-time payments

I Secure

?

Page 35: BlueWallet: The Secure Bitcoin Wallet

Goals

I Mobile

I Easy to use

I Real-time payments

I Secure

?

Page 36: BlueWallet: The Secure Bitcoin Wallet

Goals

I Mobile

I Easy to use

I Real-time payments

I Secure ?

Page 37: BlueWallet: The Secure Bitcoin Wallet

Security

TX: 41b221

B0.1

0

A4.798

1

A

Fee

Prev. TX:

a1a53743

4.899

0

C...

1

Send previous transactions to BlueWallet

Page 38: BlueWallet: The Secure Bitcoin Wallet

Security

TX: 41b221

B0.1

0

A4.798

1

A?

Fee

?

Prev. TX:

a1a53743

4.899

0

C...

1

Send previous transactions to BlueWallet

Page 39: BlueWallet: The Secure Bitcoin Wallet

Security

TX: 41b221

B0.1

0

A4.798

1

A4.899

Fee

0.001

Prev. TX:

a1a53743

4.899

0

C...

1

Send previous transactions to BlueWallet

Page 40: BlueWallet: The Secure Bitcoin Wallet

Conclusion

I Mobile

I Easy to use

I Real-time payments

I Secure

Page 41: BlueWallet: The Secure Bitcoin Wallet

Thank you, questions?

Authors:

Tobias Bamert

Christian Decker

Roger Wattenhofer

Samuel Welten

ETH Zurich � Distributed Computing Group � www.disco.ethz.ch