secure network coding and its application
DESCRIPTION
Secure Network Coding and its Application. Yongdae Kim University of Minnesota. Organization. Introduction to Network Coding Practical Network Coding Secure Network Coding Structured File Sharing Conclusion. Network Coding: What is it?. B. Traditional Coding/Routing - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/1.jpg)
Secure Network Coding and its
Application
Yongdae KimUniversity of Minnesota
![Page 2: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/2.jpg)
OrganizationIntroduction to Network CodingPractical Network CodingSecure Network CodingStructured File SharingConclusion
![Page 3: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/3.jpg)
Network Coding: What is it? Traditional Coding/Routing
Coding is done on End-to-End bases. Intermediate nodes forward data blindly.
Network CodingAllowing intermediate nodes to manipulate information
Information flowing out of a node is a function of information coming into the node
Originally developed for wireless multicast Very popular in wireless/sensor networks Relatively much less attention in P2P
A B C
f (A,B,C)
A? B? C?
A B C
![Page 4: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/4.jpg)
Linear Network Coding InformationPackets are vectors over finite field
with a fixed dimension
EncodingOutgoing packets are linear
combination of incoming packets
DecodingSolving a linear equation
![Page 5: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/5.jpg)
Linear Network Coding: Equation
![Page 6: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/6.jpg)
Setup Information (Data)a file
![Page 7: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/7.jpg)
Setup Information (Data)a filem original blocks (vectors)
x1 x2 … xi … … xm
![Page 8: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/8.jpg)
Setup Information (Data)a filem original blocks (vectors)n elements in a block
x1 x2 … xi … … xm
n dimension(xi1, xi2, …, xij, …, xin)
![Page 9: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/9.jpg)
Setup Information (Data)m augmented vector (coded block)m+n elements in an augmented vector
x1
x2
x3
x4
x5
x1
x2
x3
x4
x5
1000001000001000001000001
yj30102
Example: m=5
![Page 10: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/10.jpg)
BitTorrent: How it works?
Seed
Seed
1
2
5
3
4
…
…
…
…
…
…
…
…
1
3
![Page 11: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/11.jpg)
Network Coding for P2P Benefits: Most blocks are useful!
Solving New Peer Disadvantage in BitTorrent New peer can download one block for free
Solving Rare Block Problem All blocks have to be downloaded in BitTorrent Churn may result in rare block problem Taking long time to finish
As a result, potentially almost all nodes can finish at the same time!
ApplicationsFile sharing, Software update, streaming, CDN, P2P TV
![Page 12: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/12.jpg)
Network Coding for P2P Problems
Resource Overhead Encoding: Pout = S ai Pi, ai is an random in Fp
Decoding: Solving linear equation: O(n3) DVD: 4.3 GB Can’t fit everything in memory Requires random disc I/O
Pollution Attack Intermediate node has no way to verify if the incoming
packet is linear combination of the original block Corrupted packets can be easily propagated
![Page 13: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/13.jpg)
Solving Resource OverheadIncremental Encoding
![Page 14: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/14.jpg)
Solving Resource OverheadIncremental Encoding: Linear Dependency
![Page 15: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/15.jpg)
Secure Network CodingThreatPollution AttacksGeneral (traditional) hashes do NOT work Corrupted packet can be mixed with others
Corrupted data can easily be propagated
ProblemCan we verify the integrity of a network-coded block?Or can we verify if a received block is legitimately
mixed before decoding a file?
![Page 16: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/16.jpg)
Secure Network Coding: possible solutions
Homomorphic HashFind homomorphic hash function h such that:
h(x+y) = h(x) h(y) If hash of each block can be securely distributed, the receiver
can verify the integrity of a linearly transformed block.
Homomorphic signatureFind homomorphic signature function s such that
s(x+y) = s(x) s(y)Verification: v(linearly transformed block, signature) returns
true or false.
![Page 17: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/17.jpg)
Ours: Signature GenerationPrivate key(s1, …, …, sm+n)
Public keyp, q, g, (gs1, gs2 ,…, …, gsm+n)
Signature generation at a sourcenetwork-coded block v =(v1, v2, …,…, vm+n)signature σ= s1v1+s2v2 + … + sm+nvm+n
Signature aggregation at intermediate nodesnew block w’ = a1w1+ … + akwk new signature s(w’) = a1s1+ … + aksk
![Page 18: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/18.jpg)
Ours: signature verificationPublic Keyp, q, (gs1, gs2 ,…, …, gsm+n)
network-coded blockv =(v1, v2, …,…, vm+n)
Compute d = (gs1)v1 (gs2)v2 … (gsm+n)vm+n
verify: d ?= gs
![Page 19: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/19.jpg)
ComparisonKrohn’s Ours Etc
Type Hash SignatureGenerators n m+n# of hash/signature
m m
Signing cost n modexp m+n multPrecomputation n modexp N/A h(xi) = P n
j=1 gjxi j
Robust Channel Needed N/A Delivery of h(xi)Aggregation N/A Linear
combinationVerification m+n
modexpm+n+1 modexp
![Page 20: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/20.jpg)
Batch VerificationFor each block, verify signaturesProblemA single block verification takes 13 seconds.
Solution? PipeliningWhile downloading/uploading verify signature.
Downloading time of a block: 7 seconds.
Solutions? BatchingVerify linearly combined blocks before sending it out.
![Page 21: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/21.jpg)
Batch Verification
![Page 22: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/22.jpg)
Structured File SharingTo improve mixingSetupPeers form a DHT. Nodes choose their partners from their routing
tables.
Data TransferA source randomly distributes blocks to nodes. A node exchange blocks with partners starting from
closest partners.
![Page 23: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/23.jpg)
Simulation Result (No Churn)
![Page 24: Secure Network Coding and its Application](https://reader036.vdocuments.us/reader036/viewer/2022062410/5681613f550346895dd0ac7f/html5/thumbnails/24.jpg)
ConclusionNetwork codingHave not fully investigatedMainly by researchers in coding and networking
independently
Many problems remaining before large deployment