# ETC Core Devs Call 14
* When: **Friday, September 25, 2020, 4pm UTC,** 90 minutes max
* Where: [ETC Discord](https://discord.gg/x3WHgrU)
* Focus: ~~Mining Algorithm,~~ Last-Call Proposals, and other 51%-Attack Solutions.
### Agenda
* Last-Call Proposals
* ~~ECIP 1049 KECCAK256 (Last Call)~~ Moved to call 15 on request
* [ECIP 1099](https://ecips.ethereumclassic.org/ECIPs/ecip-1099) Calibrate Epoch Duration (Last Call)
* 51% Proposals
* [ECIP 1092](https://ecips.ethereumclassic.org/ECIPs/ecip-1092) 51-percent attack solution PirlGuard by Callisto (Draft)
* [ECIP 1094](https://ecips.ethereumclassic.org/ECIPs/ecip-1094) VeriBlock Proof-of-Proof 51%-Attack Prevention (Draft)
* [ECIP 1096](https://ecips.ethereumclassic.org/ECIPs/ecip-1096) 51% Attack protection system based on Bitcoin Merged Mining (Draft)
* [ECIP 1097](https://ecips.ethereumclassic.org/ECIPs/ecip-1097) Checkpointing based 51% attack resistance (Draft)
* [ECIP 1100](https://ecips.ethereumclassic.org/ECIPs/ecip-1100) Modified Exponential Subjective Scoring (Draft)
### Last-Call Proposals
#### [ECIP 1099](https://ecips.ethereumclassic.org/ECIPs/ecip-1099) Calibrate Epoch Duration "EtcHash"
_TL;DR modify Ethash, cut epoch number in half, reduce DAG size and DAG growth rate significantly, call it EtcHash, requires hard-fork, requires tooling_
Proposal has been _accepted_ in call 13, however we need to revise the block numbers, proposal:
* For the Ethereum Classic main network: `ETCHASH_FORK_BLOCK := 11_700_000` (Epoch 390 -> 195)
* For the Mordor Classic test network: `ETCHASH_FORK_BLOCK := 2_520_000` (Epoch 82 -> 41)
Which basically means `4` weeks for Mordor and `8` weeks for the Classic main network. Need Besu team to agree. https://github.com/ethereumclassic/ECIPs/pull/371
### 51%-Proposals
TL;Dr
* ECIP-1092 PirlGuard: mine penalty blocks before allowing privately mined chain; increases attack cost
* ECIP-1094 VeriBlock: proof-of-proof miners endorse ETC blocks on the VeriBlock chain and inherit security from Bitcoin
* ECIP-1096 Merged Mining: visibility-proof scoring allows clients to chose between competing chain heads
* ECIP-1097 Checkpointing: adds proof-of-authority layer to ethereum classic; makes 51% attacks impossible; requires trusted committee
* ECIP-1100 M.E.S.S.: applies exponential scoring to blocks unknown to the client; significantly increases attack cost
I like to see the following questions answered during the call (1 min/proposal max):
* <sup>A</sup>does it require a hardfork?
* <sup>B</sup>does it break nakamoto conensus?
* <sup>C</sup>is there a specification for ethereum classic available?
* <sup>D</sup>is there a transition for activation specified?
* <sup>E</sup>is there any implementation or simulation available?
* <sup>F</sup>are test cases available that can be used by the client teams?
Heavy Checklist Matrix:
* :heavy_check_mark: Yes
* :heavy_multiplication_x: No
* :grey_question: Unknown
| proposal | no-fork<sup>A</sup> | nakamoto<sup>B</sup> | subj? | spec<sup>C</sup> | transit<sup>D</sup> | impl<sup>E</sup> | test<sup>F</sup> |
|:----------------------- |:--------------------------------------:|:--------------------------------:|:------------------------:|:------------------------:|:------------------------:|:------------------------------:|:------------------------:|
| ECIP-1092 PirlGuard | (:heavy_check_mark:)<sup>1</sup> | (:heavy_check_mark:)<sup>2</sup> | :heavy_check_mark: | :heavy_multiplication_x: | :heavy_multiplication_x: | :heavy_check_mark:<sup>3</sup> | :heavy_multiplication_x: |
| ECIP-1094 VeriBlock | :heavy_multiplication_x: | :grey_question: | :heavy_multiplication_x: | :heavy_check_mark: | :grey_question: | :grey_question: | :grey_question: |
| ECIP-1096 Merged Mining | (:heavy_multiplication_x:)<sup>4</sup> | (:heavy_check_mark:)<sup>2</sup> | :heavy_multiplication_x: | :heavy_check_mark: | :heavy_multiplication_x: | :heavy_multiplication_x: | :heavy_multiplication_x: |
| ECIP-1097 Checkpointing | (:heavy_multiplication_x:)<sup>5</sup> | :heavy_multiplication_x: | :heavy_multiplication_x: | :heavy_check_mark: | :heavy_multiplication_x: | :heavy_check_mark:<sup>6</sup> | :heavy_check_mark: |
| ECIP-1100 M.E.S.S. | (:heavy_check_mark:)<sup>1</sup> | (:heavy_check_mark:)<sup>2</sup> | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark:<sup>7</sup> | :heavy_check_mark: |
Footnotes:
1. <sup>1</sup>no fork required, but client coordination for mining nodes encouraged
2. <sup>2</sup>does not break nakamoto consensus for honest miners (one cpu, one vote), this is not true for privately mined chains though
3. <sup>3</sup>chippr-robotics/chippr-geth
4. <sup>4</sup>if you hard-fork you can get greater protection against certain attacks
5. <sup>5</sup>could also be a soft fork
6. <sup>6</sup>input-output-hk/mantis
7. <sup>7</sup>etclabscore/core-geth
Potential improvements:
- Subjectivity; redundant with hard-fork?
- Persistence, Liveness; rather than Nakamoto Consensus