FAKULTÄT FÜR !NFORMATIK
Faculty of InformaticsS&P
SECURITY & PRIVACY GROUP
Challenges and Cryptographic Solutions with Payment-Channel Networks Pedro Moreno-Sanchez
RWC’20 New York, Jan 10th 2020
@pedrorechez
S & P SECURITY & PRIVACY GROUP Challenges and - - PowerPoint PPT Presentation
FAKULTT FR !NFORMATIK Faculty of Informatics S & P SECURITY & PRIVACY GROUP Challenges and Cryptographic Solutions with Payment-Channel Networks Pedro Moreno-Sanchez RWC20 New York, Jan 10 th 2020 @pedrorechez Scalability
FAKULTÄT FÜR !NFORMATIK
Faculty of InformaticsSECURITY & PRIVACY GROUP
Challenges and Cryptographic Solutions with Payment-Channel Networks Pedro Moreno-Sanchez
RWC’20 New York, Jan 10th 2020
@pedrorechez
transaction in order to provide public verifiability
blockchain
2
Scalability Issues
Bitcoin’s transaction rate: ~10 tx/sec Visa’s transaction rate: ~10K tx/sec
e.g., DAG Blockchain, sharding, ...
e.g., Payment Channel Networks Many other research projects (Bolt, Z-Channels, Perun, Liquidity Network, Plasma, COMIT ...)
Lightning Network (Bitcoin) Raiden Network (Ethereum)
3
Scalability Solutions?
e.g., DAG Blockchain, sharding, ...
e.g., Payment Channel Networks Many other research projects (Bolt, Z-Channels, Perun, Liquidity Network, Plasma, COMIT ...)
Lightning Network (Bitcoin) Raiden Network (Ethereum)
3
Scalability Solutions?
4
Background on Payment Channel Networks
5
Payment Channels: Open
Alice Bob Blockchain
5 1
5
Payment Channels: Open
Alice Bob Blockchain
Multisig Contract Can be spent only with the signatures of both Alice and Bob
5 1
5 (Alice) 5 (Alice,Bob) Alice
deposit money on the channel
5
Payment Channels: Open
Alice Bob Blockchain
Multisig Contract Can be spent only with the signatures of both Alice and Bob
5 1
5 (Alice) 5 (Alice,Bob) Alice 5 (Alice,Bob) 5 (Alice) Alice,Bob
deposit money on the channel
transaction to unlock the money
6
Payment Channels: Open
Alice Bob Blockchain
5 1
5 (Alice) 5 (Alice,Bob) Alice
5 (Alice,Bob) 5 (Alice) Alice,Bobdeposit money on the channel
transaction to unlock the money
7
Payment Channels: Transactions
Blockchain
5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
4 1
Alice Bob
5 (Alice) 5 (Alice,Bob) Alice
8
Payment Channels: Transactions
Blockchain
5 (Alice, Bob) 3 (Alice) 2 (Bob) Alice ?? Bob
3 2
Alice Bob
5 (Alice, Bob) 3 (Alice) 2 (Bob) Alice ?? Bob 5 (Alice) 5 (Alice,Bob) Alice Under the hood Mechanisms for bidirectional payments and for revocation of old states
5 (Alice, Bob) 3 (Alice) 2 (Bob) Alice,Bob
Payment Channels: Close
Blockchain Alice Bob
5 (Alice) 5 (Alice,Bob) Alice
10
Payment Channel Networks (PCNs)
4 1 2 3
Alice Bob Carol
Send 1 BTC to Carol
One cannot open channels with everyone... exploit channel paths!
⇒
10
Payment Channel Networks (PCNs)
4 1 2 3
Alice Bob Carol Bob
2 3 3 2
Carol Alice
1. Send 1 BTC Send 1 BTC to Carol
10
Payment Channel Networks (PCNs)
4 1 2 3
Alice Bob Carol Bob
2 3 3 2
Carol Alice
1. Send 1 BTC Send 1 BTC to Carol
2 3 1 4
Alice Bob Carol
Carol
Should happen atomically
10
Payment Channel Networks (PCNs)
4 1 2 3
Alice Bob Carol Bob
2 3 3 2
Carol Alice
1. Send 1 BTC Send 1 BTC to Carol
2 3 1 4
Alice Bob Carol
Carol
11
The Lightning Network (LN)
5
12
Hashtime Lock Contract (HTLC)
5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
4 1
Alice Bob y
5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
5
12
Hashtime Lock Contract (HTLC)
5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
4 1 4 1
Alice Bob y
x
5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
y
With knowledge of x, Bob can “open” + publish the transaction on the blockchain for enforcing the payment
5
12
Hashtime Lock Contract (HTLC)
5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
4 1 4 1
Alice Bob y
x
After time the transaction cannot be published anymore on the blockchain 5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
y
With knowledge of x, Bob can “open” + publish the transaction on the blockchain for enforcing the payment
5
12
Hashtime Lock Contract (HTLC)
5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
4 1 4 1
Alice Bob y
x
HTLC (Alice, Bob, 1, y, ):
Alice pays Bob 1 BTC iff Bob shows some x such that H(x) = y before
After time the transaction cannot be published anymore on the blockchain 5 (Alice, Bob) 4 (Alice) 1 (Bob) Alice ?? Bob
y
With knowledge of x, Bob can “open” + publish the transaction on the blockchain for enforcing the payment
3 2
13
HTLC for Multi-hop Payments
Alice Bob Carol
y:= H(x)
x
2 3
3 2
13
HTLC for Multi-hop Payments
Alice Bob Carol
y:= H(x)
x
y 2 3
3 2
13
HTLC for Multi-hop Payments
Alice Bob Carol
HTLC(Alice, Bob, 1.1, y, t) y:= H(x)
x
y 2 3
1.1 0.9
3 1
3 2
13
HTLC for Multi-hop Payments
Alice Bob Carol
HTLC(Alice, Bob, 1.1, y, t) HTLC(Bob, Carol, 1, y, t’) 2 2 1 y:= H(x)
x
y 2 3
1.1 0.9
3 1
3 2
13
HTLC for Multi-hop Payments
Alice Bob Carol
HTLC(Alice, Bob, 1.1, y, t) HTLC(Bob, Carol, 1, y, t’) 2 2 1 y:= H(x)
x
y x 2 3 2 3
1.1 0.9
3 1
3 2
13
HTLC for Multi-hop Payments
Alice Bob Carol
HTLC(Alice, Bob, 1.1, y, t) HTLC(Bob, Carol, 1, y, t’) 2 2 1 y:= H(x)
x
y x x 2 3 2 3
1.1 0.9
3 1
0.9
4.1
3 2
13
HTLC for Multi-hop Payments
Alice Bob Carol
HTLC(Alice, Bob, 1.1, y, t) HTLC(Bob, Carol, 1, y, t’) 2 2 1 y:= H(x)
x
y Requirement: t > t’ (after Carol revealed x to Bob, there must still be time for Bob to reveal x to Alice) x x 2 3 2 3
1.1 0.9
3 1
0.9
4.1
3 2
13
HTLC for Multi-hop Payments
Alice Bob Carol
HTLC(Alice, Bob, 1.1, y, t) HTLC(Bob, Carol, 1, y, t’) 2 2 1 y:= H(x)
x
y Requirement: t > t’ (after Carol revealed x to Bob, there must still be time for Bob to reveal x to Alice) x x 2 3 2 3
1.1 0.9
3 1
0.9
4.1 Requirement: 1.1 = 1 + fee (Alice forwards payment amount plus fee for the intermediaries)
3 2
Alice Bob Carol HTLC(Alice, Bob, 1.1, y, t) HTLC(Bob, Carol, 1, y, t’)2 2 1
y:= H(x) x y x x 2 32 3
1 0.
3 1
0.9 4.114
LN: Take Home
HTLC (Alice, Bob, 1.1, y, t):
Alice pays Bob 1.1 BTC iff Bob shows some x such that H(x) = y before t days
15
Security + Privacy in PCNs
Are off-chain payments in PCNs privacy-preserving by default?
(individual payments are not recorded on the blockchain)
Are off-chain payments in PCNs secure?
(No honest participant looses money)
15
Security + Privacy in PCNs
Are off-chain payments in PCNs privacy-preserving by default?
(individual payments are not recorded on the blockchain)
Are off-chain payments in PCNs secure?
(No honest participant looses money)
NO! NO!
16
Security and Privacy Challenges in Existing PCNs
ACM CCS 2017 NDSS 2019
17
Security Issue: The Wormhole Attack
A C E1 E2
HTLC(A, E1,1.3,y, t1) HTLC(E1, B,1.2,y, t2) HTLC(B, E2,1.1,y, t3) HTLC(E2, C,1,y, t4)
y:= H(x)
x
B
17
Security Issue: The Wormhole Attack
A C E1 E2
HTLC(A, E1,1.3,y, t1) HTLC(E1, B,1.2,y, t2) HTLC(B, E2,1.1,y, t3) HTLC(E2, C,1,y, t4)
y:= H(x)
x
x B
17
Security Issue: The Wormhole Attack
A C E1 E2
HTLC(A, E1,1.3,y, t1) HTLC(E1, B,1.2,y, t2) HTLC(B, E2,1.1,y, t3) HTLC(E2, C,1,y, t4)
y:= H(x)
x
x x B
17
Security Issue: The Wormhole Attack
A C E1 E2
HTLC(A, E1,1.3,y, t1) HTLC(E1, B,1.2,y, t2) HTLC(B, E2,1.1,y, t3) HTLC(E2, C,1,y, t4)
y:= H(x)
x
x x x B
17
Security Issue: The Wormhole Attack
A C E1 E2
HTLC(A, E1,1.3,y, t1) HTLC(E1, B,1.2,y, t2) HTLC(B, E2,1.1,y, t3) HTLC(E2, C,1,y, t4)
y:= H(x)
x
x x x B considers the payment to be failed and unlocks his funds after the timeout B
17
Security Issue: The Wormhole Attack
A C E1 E2
HTLC(A, E1,1.3,y, t1) HTLC(E1, B,1.2,y, t2) HTLC(B, E2,1.1,y, t3) HTLC(E2, C,1,y, t4)
y:= H(x)
x
x x x B considers the payment to be failed and unlocks his funds after the timeout B gets 1.3 (no payment to B) pays 1 (no payment from B) Attacker earns 0.3 BTC (own fees + B’s fee)
17
Security Issue: The Wormhole Attack
A C E1 E2
HTLC(A, E1,1.3,y, t1) HTLC(E1, B,1.2,y, t2) HTLC(B, E2,1.1,y, t3) HTLC(E2, C,1,y, t4)
y:= H(x)
x
x x x B considers the payment to be failed and unlocks his funds after the timeout B gets 1.3 (no payment to B) pays 1 (no payment from B) Attacker earns 0.3 BTC (own fees + B’s fee) Bob funds are locked (preventing the use in other payments) Bob cannot blame the adversary
18
Privacy Issues in HTLC Payments
A C E1 E2
HTLC(A,E1,v1,y,t1) HTLC(E1,B,v2,y,t2) HTLC(B,E2,v3,y,t3) HTLC(E2,C,v4,y,t4)
B A’ C’ Relationship Anonymity: On-path adversaries do not learn who pays to whom
HTLC(A,E1,v1,y’,t1) HTLC(E1,B,v2,y’,t2) HTLC(B,E2,v3,y’,t3) HTLC(E2,C,v4,y’,t4)
18
Privacy Issues in HTLC Payments
A C E1 E2
HTLC(A,E1,v1,y,t1) HTLC(E1,B,v2,y,t2) HTLC(B,E2,v3,y,t3) HTLC(E2,C,v4,y,t4)
B A’ C’
pays to pays to
pays to pays to
Relationship Anonymity: On-path adversaries do not learn who pays to whom
HTLC(A,E1,v1,y’,t1) HTLC(E1,B,v2,y’,t2) HTLC(B,E2,v3,y’,t3) HTLC(E2,C,v4,y’,t4)
18
Privacy Issues in HTLC Payments
A C E1 E2
HTLC(A,E1,v1,y,t1) HTLC(E1,B,v2,y,t2) HTLC(B,E2,v3,y,t3) HTLC(E2,C,v4,y,t4)
B A’ C’
pays to pays to
pays to pays to
Relationship Anonymity: On-path adversaries do not learn who pays to whom
HTLC(A,E1,v1,y’,t1) HTLC(E1,B,v2,y’,t2) HTLC(B,E2,v3,y’,t3) HTLC(E2,C,v4,y’,t4)
18
Privacy Issues in HTLC Payments
A C E1 E2
HTLC(A,E1,v1,y,t1) HTLC(E1,B,v2,y,t2) HTLC(B,E2,v3,y,t3) HTLC(E2,C,v4,y,t4)
B A’ C’
pays to pays to
pays to pays to
Relationship Anonymity: On-path adversaries do not learn who pays to whom
HTLC(A,E1,v1,y’,t1) HTLC(E1,B,v2,y’,t2) HTLC(B,E2,v3,y’,t3) HTLC(E2,C,v4,y’,t4)
18
Privacy Issues in HTLC Payments
A C E1 E2
HTLC(A,E1,v1,y,t1) HTLC(E1,B,v2,y,t2) HTLC(B,E2,v3,y,t3) HTLC(E2,C,v4,y,t4)
B A’ C’
pays to pays to
pays to pays to
Relationship Anonymity: On-path adversaries do not learn who pays to whom
HTLC(A,E1,v1,y’,t1) HTLC(E1,B,v2,y’,t2) HTLC(B,E2,v3,y’,t3) HTLC(E2,C,v4,y’,t4)
19
Cryptographic Solutions for Security and Privacy in Payment Channel Networks
20
Solving Security + Privacy Issues
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
Randomised conditions at each hop that can only be released by (exactly) the right neighbour’s key
20
Solving Security + Privacy Issues
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
k3 k1 k2 k4
Setup phase for the distribution of individual “randomisation factors” for users at each hop Randomised conditions at each hop that can only be released by (exactly) the right neighbour’s key
20
Solving Security + Privacy Issues
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
k3 k1 k2 k4
Setup phase for the distribution of individual “randomisation factors” for users at each hop
Desired Properties
No coin loss 1.Atomicity: If a user’s right lock gets
left lock 2.Consistency: A user can open his left lock only if his right lock was released 3.Relationship Anonymity: A user learns about no
payment path than his direct neighbours No Wormhole Attacks Privacy Randomised conditions at each hop that can only be released by (exactly) the right neighbour’s key
21
Anonymous Multi-hop Locks (AMHL)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2 B
(k1 + k2 + k3 + k4)*G
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2 B
(k1 + k2 + k3 + k4)*G
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2 B
(k1 + k2 + k3 + k4)*G
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2 B
(k1 + k2 + k3 + k4)*G
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2 B
(k1 + k2 + k3 + k4)*G
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2
(k1 + k2 + k3 + k4)
B
(k1 + k2 + k3 + k4)*G
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2
(k1 + k2 + k3 + k4)
B
(k1 + k2 + k3 + k4)*G
(k1 + k2 + k3)
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2
(k1 + k2 + k3 + k4)
B
(k1 + k2 + k3 + k4)*G
(k1 + k2 + k3) (k1 + k2)
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2
(k1 + k2 + k3 + k4)
B
(k1 + k2 + k3 + k4)*G
(k1 + k2 + k3) (k1 + k2) k1
(k1, C1)
21
Anonymous Multi-hop Locks (AMHL)
Lock(A, E1,1.3,C1,t1) Lock(E1,B,1.2,C2,t2) Lock(B,E2,1.1,C3,t3) Lock(E2,C,1,C4, t4)
(k4, C4) (k2, C2) (k3, C3) (k1 + k2 + k3 + k4)
k1*G (k1 + k2)*G (k1 + k2 + k3)*G
A C E1 E2
(k1 + k2 + k3 + k4)
B
(k1 + k2 + k3 + k4)*G
(k1 + k2 + k3) (k1 + k2) k1
A valid key can only be extracted from a valid key for the right lock
(k1, C1)
Conditions look random (as they differ by a secret random factor)
5
22
Lock Contract
Alice (skA) Bob (skB) y AB
hypothetical “shared identity” skAB = skA * skB
Blockchain
5
22
Lock Contract
4 1
Alice (skA) Bob (skB) y AB
hypothetical “shared identity” skAB = skA * skB
Blockchain
5 (AB) 4 (Alice) 1 (Bob)
y
AB ??k 5 (Alice) 5 (AB) Alice
5
22
Lock Contract
4 1
Alice (skA) Bob (skB) y
Alice can retrieve secret k from full signature Bob gets sufficient information for checking that the “half signature” produced by Alice and Bob can be completed to a valid signature given k
AB
hypothetical “shared identity” skAB = skA * skB
Blockchain
5 (AB) 4 (Alice) 1 (Bob)
y
AB ??k 5 (Alice) 5 (AB) Alice
23
Lock Contract Implementations
23
Lock Contract Implementations
24
Discussion
✓Lightning Network (https://github.com/cfromknecht/tpec) ✓Kzen Network (https://github.com/KZen-networks/multi-
hop-locks)
✓COMIT Network (https://github.com/coblox/ss-ecdsa-poc)
✓Encoding of condition within signature
⤳
AB ??k
✓ Inter-currency payment channels ✓ Atomic swaps
25
Interoperability
E C D S A DLOG
26
Collateral Challenge in Bitcoin-Compatible PCNs
ACM CCS 2019
aside at least kn coins
the time to safely close a channel
27
Collateral
k+fees coins nΔ time k coins Δ time ... n-2 channels ...
28
Griefing attack
... n-2 channels ... k+fees coins nΔ time k coins Δ time
29
Goal: Constant Collateral
... n-2 channels ... k+fees coins nΔ time k coins Δ time
independently of the number of channels
29
Goal: Constant Collateral
... n-2 channels ... k+fees coins nΔ time k coins Δ time k+fees coins Δ time
independently of the number of channels
29
Goal: Constant Collateral
... n-2 channels ... k+fees coins nΔ time k coins Δ time k+fees coins Δ time
independently of the number of channels
29
Goal: Constant Collateral
... n-2 channels ... k+fees coins nΔ time k coins Δ time k+fees coins Δ time
1 A. Miller et al. Sprites and State Channels: Payment Networks that Go Faster than Lightning.
30
Our Solution
30
Our Solution
30
Our Solution
30
Our Solution
rebalancing
31
Atomic Multi-Channel Updates (ACMU)
8 (out of 10) 7 (out of 30)
(A1,B1): 10 (A2,B2): 2 (A3,B3): 8 A1 B1
Phase 1 (Setup for A,B)
Split the channel so that 2 coins are still available
31
Atomic Multi-Channel Updates (ACMU)
8 (out of 10) 7 (out of 30)
(A1,B1): 10 (A2,B2): 2 (A3,B3): 8 A1 B1
Phase 1 (Setup for A,B) Phase 2 (Lock for A,B)
(A3,B3): 8 (A4,B4): 8 A3 B3 After some Δ you get back the money (in case of failure in the next phases)
31
Atomic Multi-Channel Updates (ACMU)
8 (out of 10) 7 (out of 30)
(A1,B1): 10 (A2,B2): 2 (A3,B3): 8 A1 B1
Phase 1 (Setup for A,B) Phase 2 (Lock for A,B) Phase 3 (Consume for A,B)
(A3,B3): 8 (A4,B4): 8 A3 B3 (A5,B5): 8 B6: 8 A5 B5 To spend you need money in a fresh account, which does not have money yet, key towards atomicity
31
Atomic Multi-Channel Updates (ACMU)
8 (out of 10) 7 (out of 30)
(A1,B1): 10 (A2,B2): 2 (A3,B3): 8 A1 B1
Phase 1 (Setup for A,B) Phase 2 (Lock for A,B) Phase 3 (Consume for A,B) Phase 4 (Enable)
(A3,B3): 8 (A4,B4): 8 A3 B3 (A5,B5): 8 B6: 8 A5 B5 (A3,B3): 8 (A5,B5): 8 A3 (B’3,C3): 7 (B’5,C5): 7 B3 B’3 C3 A Multi-In Multi-Out (MIMO) transaction creates all fresh addresses in one shot
31
Atomic Multi-Channel Updates (ACMU)
8 (out of 10) 7 (out of 30)
(A1,B1): 10 (A2,B2): 2 (A3,B3): 8 A1 B1
Phase 1 (Setup for A,B) Phase 2 (Lock for A,B) Phase 3 (Consume for A,B) Phase 4 (Enable) Phase 5 (Disable)
(A3,B3): 8 (A4,B4): 8 A3 B3 (A5,B5): 8 B6: 8 A5 B5 (A3,B3): 8 (A5,B5): 8 A3 (B’3,C3): 7 (B’5,C5): 7 B3 B’3 C3 (A7,B7): 8 (A5,B5): 8 A5 (B’7,C7): 7 (B’5,C5): 7 B5 B’5 C5 Solves ambiguous state between Enable and Lock
interoperable routing)
32
Conclusions
interoperable routing)
32
Conclusions
THANKS!
@pedrorechez