File tree Expand file tree Collapse file tree 1 file changed +55
-0
lines changed Expand file tree Collapse file tree 1 file changed +55
-0
lines changed Original file line number Diff line number Diff line change
1
+ ---
2
+ simd : ' 0317'
3
+ title : Enforce 32 data shreds
4
+ authors :
5
+ - Emanuele Cesena
6
+ category : Standard
7
+ type : Core
8
+ status : Review
9
+ created : 2025-07-08
10
+ feature :
11
+ ---
12
+
13
+ ## Summary
14
+
15
+ All clients currently send 32 data + 32 coding shreds, however Turbine still allows
16
+ to send and receive a variable number of shreds. With this change we will enforce
17
+ sending and receiving only 32 data + 32 coding shreds.
18
+
19
+ ## Motivation
20
+
21
+ It is inconvinient to support many combinations of data + coding shreds.
22
+ There's no security benefit, and in fact security is reduced when the number of
23
+ shreds is low.
24
+
25
+ ## New Terminology
26
+
27
+ N/A
28
+
29
+ ## Detailed Design
30
+
31
+ A sender should always produce 32 data shreds + 32 coding shreds per FEC set
32
+ (this is currently already happening).
33
+
34
+ Receivers currently accept FEC sets with variable number of shreds.
35
+
36
+ If ` enforce_32_data_shreds: <PUBKEY> `
37
+ is active, then any FEC set with a number of shreds different than 32 data + 32 coding
38
+ will be dropped on ingest.
39
+
40
+ ## Alternatives Considered
41
+
42
+ Leave as is.
43
+
44
+ ## Impact
45
+
46
+ Clients will no longer accept FEC sets (thus blocks) with any number of shreds
47
+ different than 32 data + 32 coding.
48
+
49
+ ## Security Considerations
50
+
51
+ Security is improved since the (minimum) number of shreds is now 32 + 32.
52
+
53
+ ## Backwards Compatibility
54
+
55
+ This feature is not backwards compatible.
You can’t perform that action at this time.
0 commit comments