|
|
|
En el Genesis cargamos 8 cuentas con 7237005577332262213973186563042994240829374041602535252466.099000494570602495 (7*10^57) ether cada una.
|
|
|
|
|
|
|
|
Las cuentas son:
|
|
|
|
- `0xbfa02a9639318f5ed1291e2cee387aa9f9d68f98`
|
|
|
|
- `0xbfa1c42c7381a4ad32e13ce3263b639a0e0488f2`
|
|
|
|
- `0xbfa2c97c3f59cc929e8feb1aee2aca0b38235d18`
|
|
|
|
- `0xbfa3eb31f6526a5b29ae2302508bb6b1400d1fd1`
|
|
|
|
- `0xbfa846ddd1fb18af693f24d316c12d8e88f4b79f`
|
|
|
|
- `0xbfa8b1acfb51da0975274c6ebd46704c6c670a07`
|
|
|
|
- `0xbfab583022c5c18fec70965d63985b86f96c5657`
|
|
|
|
- `0xbfae9512c1cf4d9ce549333725c02ee8b3e5f049`
|
|
|
|
|
|
|
|
Vamos a hacer una ceremonia de cuentas para hacer cuentas para BFA donde transferir todo este ether fuera del control del Gran Danes.
|
|
|
|
|
|
|
|
Hay que eligir N partes del BFA (N >= 6). Cada uno va a tener un parte de la llave para abrir una cuenta.
|
|
|
|
|
|
|
|
Para poder usar una cuenta, hay que usar la ayuda de M partes. Ese numero se llama M (y obviamente M <= N).
|
|
|
|
|
|
|
|
Todo el ether se distribuye asi:
|
|
|
|
M=2: 1024 cuentas con 1 Mega (10^6) eth (10^24 wei).
|
|
|
|
M=2: 1024 cuentas con 1 Giga (10^9) eth (10^27 wei).
|
|
|
|
M=3: 1024 cuentas con 1 Tera (10^12) eth (10^30 wei).
|
|
|
|
M=4: 9 cuentas con 10^57 eth (10^75 wei)
|
|
|
|
M=4: 1 cuenta con "el resto" (menos 1 MEth para operaciones)
|
|
|
|
M=4: 18 cuentas extra (vacias)
|
|
|
|
|
|
|
|
3100 cuentas en total. Cada cuenta tiene una clave distinta. Vamos a usar 768 bits (binario) claves en base 64 (1024 caracteres):
|
|
|
|
|
|
|
|
```bash
|
|
|
|
dir=bfavault
|
|
|
|
|
|
|
|
function genacct
|
|
|
|
{
|
|
|
|
shares=$1
|
|
|
|
threshold=$2
|
|
|
|
mkdir new || exit 1
|
|
|
|
dd if=/dev/urandom bs=1 count=768 2>/dev/null| base64 | xargs -n 1 echo -n > newpassword
|
|
|
|
geth --datadir $dir/new --password newpassword account new
|
|
|
|
file=$( echo new/* )
|
|
|
|
account=${file#.*--}
|
|
|
|
ssss-split -t $threshold -n $shares -w $account -q < newpassword > accounts/${account}.shares
|
|
|
|
rm -f newpassword
|
|
|
|
mv -f $file accounts
|
|
|
|
rmdir new || exit 1
|
|
|
|
}
|
|
|
|
|
|
|
|
trap "echo Argh;exit 1" ERR
|
|
|
|
set -o errtrace
|
|
|
|
swapoff -a
|
|
|
|
cd $dir
|
|
|
|
mkdir accounts
|
|
|
|
i=1024
|
|
|
|
while [ $i -gt 0 ]
|
|
|
|
do
|
|
|
|
genacct 2 5
|
|
|
|
let i--
|
|
|
|
done
|
|
|
|
```
|
|
|
|
|
|
|
|
Falta compartir los shares y accounts
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|