mirror of
https://github.com/urbit/shrub.git
synced 2024-12-01 06:35:32 +03:00
d44661e5e6
We were sending the correct life to Jael, but the ticket we printed had the life hardcoded to 1. This makes it use the correct life in both places.
46 lines
1.1 KiB
Plaintext
46 lines
1.1 KiB
Plaintext
:: Create a private key-file for a random (or specified) moon
|
|
::
|
|
:::: /hoon/moon/hood/gen
|
|
::
|
|
/- *sole
|
|
/+ *generators
|
|
::
|
|
::::
|
|
::
|
|
:- %say
|
|
|= $: [now=@da eny=@uvJ bec=beak]
|
|
[mon=@p ~]
|
|
=life
|
|
public-key=pass
|
|
==
|
|
:- %helm-moon
|
|
^- (unit [=ship =udiff:point:able:jael])
|
|
=* our p.bec
|
|
=/ ran (clan:title our)
|
|
?: ?=({?($earl $pawn)} ran)
|
|
%- %- slog :_ ~
|
|
leaf+"can't manage a moon from a {?:(?=($earl ran) "moon" "comet")}"
|
|
~
|
|
=/ seg=ship (sein:title our now mon)
|
|
?. =(our seg)
|
|
%- %- slog :_ ~
|
|
:- %leaf
|
|
"can't create keys for {(scow %p mon)}, which belongs to {(scow %p seg)}"
|
|
~
|
|
=/ =^life
|
|
?. =(*^life life)
|
|
life
|
|
+(.^(^life j+/(scot %p our)/life/(scot %da now)/(scot %p mon)))
|
|
=/ =pass
|
|
?. =(*pass public-key)
|
|
public-key
|
|
=/ cub (pit:nu:crub:crypto 512 (shaz (jam mon life eny)))
|
|
=/ =seed:able:jael
|
|
[mon life sec:ex:cub ~]
|
|
%- %- slog
|
|
:~ leaf+"moon: {(scow %p mon)}"
|
|
leaf+(scow %uw (jam seed))
|
|
==
|
|
pub:ex:cub
|
|
`[mon *id:block:able:jael %keys life 1 pass]
|